커피닉스, 시스템 엔지니어의 쉼터
  한통 ADSL에서 웹지연 문제 iptables로 해결하기 (민상호) 작성일 : 2003/09/03 22:55
 
  • 글쓴이 : 좋은진호 ( http://coffeenix.net/ )
  • 조회수 : 9175
     
    출처 : http://kltp.kldp.org/stories.php?story=01/11/01/6277115

    tcp-MSS target에 대한 얘기는 Netfilter 확장 HOWTO 에 나온 내용이긴 하지만
    경험이 곁들어진거라 가치가 있을 듯 합니다. (truefeel)

    KLTP의 내용을 그대로 옮깁니다.
    ----------------------------------------------------------
    한통 ADSL 사용시 웹지연 문제 iptables rule 로 해결하기.
    글쓴이 : 민상호 (2001년 11월 01일 오후 11:51) [ 네트워크 ]


    기존 TIP에서 ADSL 지연문제를 이미 다룬 글을 보았습니다.

    그런데 윈도우(registry)와 리눅스(ppp 설정) 모두 설정을
    만져야 하는 번거로움이 있는것 같아 리눅스에서 iptables
    설정만으로 문제를 해결해 볼 수 있지 않을까 해서 찾아
    보았는데 아주 간단한 방법이 있더군요..

    매스커레이딩 서버에 다음과 같은 rule 을 추가해주면 만사
    해결되는군요..

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

    위 rule 을 볼때 target 으로 TCPMSS 로 지정이 되어 있는데
    다행히 저는 커널 컴파일시에 모듈로 컴파일이 되어 있어
    바로 위의 명령을 적용시킬 수 있었습니다.

    위의 rule 을 실행했을때 target 이 없다고 error 메세지를
    뿌린다면 커널 컴파일을 한번 해주셔야 합니다.

    커널 컴파일은 참고 문서가 많으니 자세한 설명은 생략하고
    TCPMSS target 을 추가하는 부분만 설명 드리겠습니다.

    커널 설정에서 다음과 같이 순서대로 들어가서 tcpmss 라는
    문자가 들어간거는 모두 모듈이나 커널에 삽입하도록 합니다.

    Networking options --> IP: Netfilter Configuration --->

    tcpmss match 와 TCPMSS target 2개가 있을 겁니다.
    그 중에 TCPMSS target support 의 help 를 보면 제가 위에서
    말씀드린 rule 이 친절하게 그대로 나와 있고 약간의 도움말이
    있습니다.

    위의 설정을 마쳤다면 커널 컴파일을 하고 마쳤다면 새로운
    커널로 부팅하여 위의 rule 을 적용하면 됩니다.
    (당연히 위의 rule 과 함께 매스커레이딩 rule 도 실행시켜야 겠지요?)

    저 같은 경우는 참고로 위의 rule 을 적용하지 않았을때는
    imbc.com 의 MBC 생방송(ON-line) 을 볼 수 없었는데 설정하고
    난 다음에는 잘 됩니다.

    여러분도 간단하게 적용해 보시기 바랍니다.

    도움말에 의하면 ADSL 에서만이 아니라 매스커레이딩시에
    발생할 수 있는 여러가지 문제(패킷 크기로 생길수 있는)를
    해결할 수 있다는 군요.


    커피닉스, 시스템 엔지니어의 쉼터 / URL : http://coffeenix.net/board_view.php?bd_code=51