[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