[Sysadmins] Помогите с iptables

ABATAPA =?iso-8859-1?q?dnsmaster_=CE=C1_yandex=2Eru?=
Вт Июл 10 10:44:06 MSD 2007


09 июля 2007 г. Alexei V. Mezin написал:
> Бинго! ОНО!!! Заработало! Спасибо большое! Теперь тестовая песочница
> стала более удобной.
Вообще, это в FAQ есть почти любом.
И уж точно - в WiKi.

Проблема "MTU discovery" в Windows известна давно...
Рекомендуемое решение (например, для PPtP):
iptables  -A FORWARD -i ppp+ -p tcp -m tcp --tcp-flags SYN,RST SYN -j 
TCPMSS --set-mss 1350
Для Вашего случая может потребоваться указать другие интерфейсы.

Если на одной машине и PPtP, и, скажем, PPPoE, то делать это лучше только для 
первых в /etc/ppp/ip-up.d - скриптах, например, так:
# cat /etc/ppp/ip-up.d/pptpd.tcpmssfix.up

#!/bin/bash

MSS=1350
#echo "DEBUG: $0 $@" >> /tmp/pptpd.tcpmssfix.log
myname=`basename $0`
if [ "$myname" = "pptpd.tcpmssfix.up" ];
then
        # PPPd передан параметр "ipparam string", однако, у меня
        # дополнительным  параметром передается IP
        if [ "$#" -eq 6 ]; then
                echo "TCPMSS fix for $1..." >> /tmp/pptpd.tcpmssfix.log
                iptables -A FORWARD -i "$1" -p tcp -m tcp --tcp-flags SYN,RST 
SYN -j TCPMSS --set-mss $MSS
        fi
fi
if [ "$myname" = "pptpd.tcpmssfix.down" ];
then
        # PPPd передан параметр "ipparam string", однако, у меня
        # дополнительным  параметром передается IP
        if [ "$#" -eq 6 ]; then
	echo "TCPMSS off for $1..." >> /tmp/pptpd.tcpmssfix.log
        	iptables -D FORWARD -i "$1" -p tcp -m tcp --tcp-flags SYN,RST SYN -j 
TCPMSS --set-mss $MSS
        fi
fi

После создания скрипта:
# 
ln -s /etc/ppp/ip-up.d/pptpd.tcpmssfix.up /etc/ppp/ip-down.d/pptpd.tcpmssfix.down

-- 
ABATAPA



Подробная информация о списке рассылки Sysadmins