[완료] iptables로 공유시 www.nate.com가 접속 안됩니다 -_-;

DarKMinD의 이미지

완료 글 내용 : http://kldp.org/node/87884

아..... 해결 하였습니다.. 이거 케이블 모뎀의 잘못인건지... 아님 단순 커널의 버그인지..
속이 다 후련해 지긴 해도 영어가 안되어 뭐라고 설명이 되어 있는지 알 수 없어 그점이 좀 답답하지만 해결이 되었습니다.
http://www.gentoo.org/doc/en/home-router-howto.xml 이 글에서 가장 마지막 부분을 우연하게 읽게 되어 해보았더니 되는군요.
이전에 답변 다신 분이 저것을 달아 주셨는데 순서가 잘못 되어 그런 거였군요.. (http://lartc.org/howto/lartc.cookbook.mtu-mss.html)

iptables -A FORWARD -p tcp --tcp-flags SYN,RST SYN -j TCPMSS  --clamp-mss-to-pmtu
iptables -A FORWARD -p tcp --tcp-flags SYN,RST SYN -j TCPMSS --set-mss 128
 
iptables -I FORWARD -i $OETH -d 192.168.1.0/255.255.255.0 -j DROP
iptables -A FORWARD -i $OETH -s 192.168.1.0/255.255.255.0 -j ACCEPT
iptables -A FORWARD -i $IETH -d 192.168.1.0/255.255.255.0 -j ACCEPT

저렇게 다른 FORWARD규칙 이전에 설정 해 줘야 하는군요.
저게 무엇을 의미하는 건지 찾아 봐야겠습니다.

- 원문 ----------------------------------------------------
어처구니 없게도 제목과 마찬가지로 iptables로 인터넷 공유를 설정 하였는데 한게임은 눈에 띄게 느려지고 네이트닷컴은 아주 뜨지 않습니다.

공유기 역활을 하는 리눅스 박스는 무선렌 1개와 유선렌 4개가 있습니다.
공유기처럼 하나의 IP대역으로 IP를 활당하기 위해 브릿지를 이용하였습니다.

대략 브릿지 설정은

# brctl show
bridge name     bridge id               STP enabled     interfaces
br0             8000.00032d032850       no              eth1
                                                        eth2
                                                        eth3
                                                        wlan0
와 같이 되어 있습니다.
그리고 iptables설정은 http://www.gentoo.org/doc/en/home-router-howto.xml를 참고하여

iptables -F
iptables -t nat -F
 
iptables -P INPUT ACCEPT
iptables -P OUTPUT ACCEPT
iptables -P FORWARD DROP
 
iptables -I INPUT 1 -i br0 -j ACCEPT
iptables -I INPUT 1 -i lo -j ACCEPT
iptables -A INPUT -p UDP --dport bootps -i ! br0 -j REJECT
iptables -A INPUT -p UDP --dport domain -i ! br0 -j REJECT
 
iptables -A INPUT -p TCP --dport ssh -i eth0 -j ACCEPT
 
iptables -A INPUT -p TCP -i ! br0 -d 0/0 --dport 0:1023 -j DROP
iptables -A INPUT -p UDP -i ! br0 -d 0/0 --dport 0:1023 -j DROP
 
iptables -I FORWARD -i br0 -d 192.168.0.0/255.255.0.0 -j DROP
iptables -A FORWARD -i br0 -s 192.168.0.0/255.255.0.0 -j ACCEPT
iptables -A FORWARD -i eth0 -d 192.168.0.0/255.255.0.0 -j ACCEPT
iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
와 같이 설정 하였습니다. 브릿지로 구성한 인터페이스가 eth1, eth2, eth3, wlan0이며 인터넷이 들어 오는 렌카드는 eth0입니다.
처음엔 싸이트들이 잘 뜨길래 성공하였구나.. 했었지만 한게임 로그인 후 인터넷이 멈춰 버리고 www.nate.com은 뜨지 않습니다.
공유기로 쓰이고 있는 리눅스 박스는 w3m으로 http://www.nate.com을 접속하면 바로바로 뜨는 수준으로 페이지가 뜹니다.

그런데 여기서 한가지 더 이상한 점은 SayNet의 인터넷 공유기 -> 리눅스 박스 -> 컴퓨터 이렇게 연결 되면
네이트, 한게임 다 정상적으 잘 됩니다. 한게임은 리눅스 박스 -> 컴퓨터 이렇게 연결 된 거 보다 훨씬 빨리 뜹니다.. -_-;;

왜 그런지... 경험 하신 분, 해결 하신분이 계신다면 답변 달아 주시면 감사하겠습니다 ;;

다시 정리 하자면 모뎀 -> 리눅스 박스 -> 컴퓨터로 연결 되면 네이트닷컴 접속 불가, 한게임 로그인 후 먹통, 한게임 페이지 로딩 지연.
하지만 모뎀 -> 공유기 -> 리눅스 박스 -> 컴퓨터로 연결 되면 네이트닷컴 접속 가능, 한게임 로그인 후 정상, 한게임 레이지 로딩 정상.

저렇습니다. 전혀 이해 할 수 없는 현상으로 인하여 이렇게 질문 남겨봅니다.
(이것 덕에 얼머 전에 하루 종일 삽질 하고 오늘 저 젠투리눅스 문서대로 해도 마찬가지여서 더눅 이해가 안되더군요 ;;)

OS는 젠투 리눅스이며 커널은 QoS가 지원 되지 않도록 되어 있고 필터와 라우팅에 관한 기능 들은 모듈로 컴파일 되어 있습니다.

iptables명령 중에 오류가 없이 잘 되었으므로 모듈이 없는 것은 아닌거 같습니다.
참고로 lsmod를 하면

ipt_REJECT              3456  2
sit                     7780  0
tunnel4                 2952  1 sit
ipv6                  209668  25 sit
iptable_mangle          2304  0
xt_tcpudp               3072  5
xt_state                2176  0
iptable_filter          2432  1
ipt_MASQUERADE          2688  1
iptable_nat             5892  1
nf_nat                 14252  2 ipt_MASQUERADE,iptable_nat
nf_conntrack_ipv4      12812  2 iptable_nat
nf_conntrack           45000  5 xt_state,ipt_MASQUERADE,iptable_nat,nf_nat,nf_conntrack_ipv4
nfnetlink               4504  3 nf_nat,nf_conntrack_ipv4,nf_conntrack
ip_tables               9160  3 iptable_mangle,iptable_filter,iptable_nat
x_tables               10500  6 ipt_REJECT,xt_tcpudp,xt_state,ipt_MASQUERADE,iptable_nat,ip_tables
rtc                     8984  0
hostap_pci             44688  2
hostap                 93828  1 hostap_pci
8139too                19456  0
8139cp                 16384  0
cyblafb                17332  0
저렇게 로드가 되어 있습니다.
왜 그런지, 해결 방법을 아시는 분은 답변 달아 드리면 다시한번 감사드립니다. ;
yoongi의 이미지

iptables -A FORWARD -p tcp --tcp-flags SYN,RST SYN -j TCPMSS --clamp-mss-to-pmtu

위의 룰을 추가해서 한번 해보세요..

DarKMinD의 이미지

정말 이거 뭐 왜 이런지 알 수 없어 난감합니다 ;
공유기를 거치고 리눅스 박스를 통하면 정상적으로 되는데 외부 인터넷을 바로 리눅스 박스를 통하게 하면 안되니...

정말 이거 대책 없는지 모르겠습니다 ;

댓글 달기

Filtered HTML

  • 텍스트에 BBCode 태그를 사용할 수 있습니다. URL은 자동으로 링크 됩니다.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>
  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.

BBCode

  • 텍스트에 BBCode 태그를 사용할 수 있습니다. URL은 자동으로 링크 됩니다.
  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param>
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.

Textile

  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • You can use Textile markup to format text.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>

Markdown

  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • Quick Tips:
    • Two or more spaces at a line's end = Line break
    • Double returns = Paragraph
    • *Single asterisks* or _single underscores_ = Emphasis
    • **Double** or __double__ = Strong
    • This is [a link](http://the.link.example.com "The optional title text")
    For complete details on the Markdown syntax, see the Markdown documentation and Markdown Extra documentation for tables, footnotes, and more.
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>

Plain text

  • HTML 태그를 사용할 수 없습니다.
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.
  • 줄과 단락은 자동으로 분리됩니다.
댓글 첨부 파일
이 댓글에 이미지나 파일을 업로드 합니다.
파일 크기는 8 MB보다 작아야 합니다.
허용할 파일 형식: txt pdf doc xls gif jpg jpeg mp3 png rar zip.
CAPTCHA
이것은 자동으로 스팸을 올리는 것을 막기 위해서 제공됩니다.