Что-то я туплю.
Есть такая сеть:
{PC}----wifi----{ROU1}----lan----{ROU2}----wifi----{ROU3}----ppp---INET
PC - ноут с которого сейчас пишу. Получает ip от ROU1 по dhcp. mtu 1500.
ROU1 соединен с ROU2 по lan. mtu 1500
ROU2 с ROU3 через wifi. mtu 1500.
У ROU1 к PC и ROU2 IP 192.168.3.1
У ROU2 к ROU1 IP 192.168.3.2
У ROU3 к ROU2 192.168.1.1
ppp mtu на ROU3 (adsl модем) 1492.
На ROU2 в iptables строчка в mangle присутствует
-A FORWARD -p tcp --tcp-flags SYN,RST SYN -j TCPMSS --clamp-mss-to-pmtu
В итоге, если я пингую с PC или с ROU2 - ROU3 (192.168.1.1)
видим вот что:
hbars@hbars-book:~$ ping 192.168.1.1 -s 5000
PING 192.168.1.1 (192.168.1.1) 5000(5028) bytes of data.
5008 bytes from 192.168.1.1: icmp_seq=1 ttl=63 time=23.4 ms
5008 bytes from 192.168.1.1: icmp_seq=2 ttl=63 time=30.3 ms
5008 bytes from 192.168.1.1: icmp_seq=3 ttl=63 time=35.1 ms
Все ок.
Если пробую что-то за pppoe
hbars@hbars-book:~$ ping ya.ru -s 1464
PING ya.ru (93.158.134.3) 1464(1492) bytes of data.
^^^^ mtu на ppp
1472 bytes from www.yandex.ru (93.158.134.3): icmp_seq=1 ttl=53 time=84.3 ms
1472 bytes from www.yandex.ru (93.158.134.3): icmp_seq=2 ttl=53 time=85.5 ms
1472 bytes from www.yandex.ru (93.158.134.3): icmp_seq=3 ttl=53 time=86.8 ms
Влазим в mtu.
и
hbars@hbars-book:~$ ping ya.ru -s 1467
PING ya.ru (213.180.193.3) 1467(1495) bytes of data.
From 100.64.44.84 (100.64.44.84) icmp_seq=1 Frag needed and DF set (mtu = 1492)
И ничего не пролазит.
Если пинговать с ROU2 - тоже самое.
Косяк у меня или у провайдера.
icmp разрешены.
-A INPUT -p icmp -m limit --limit 2/second -j ACCEPT
-A FORWARD -p icmp -j ACCEPT
Как решить?