Проблема стандартная для нестандартного MTU - пинги, трейсы и прочая дигностика рабоает, а сайты открываются не очень хорошо.
Сеть такова: yota-модем вставлен в роутер Keenetic. Роутер подключен в общую сеть. В сети имеется сервак с Ubuntu 10.04. Сервер настроен на раздачу DHCP, сам стоит шлюзом:
# iptables -t mangle -L -n
Chain PREROUTING (policy ACCEPT)
target prot opt source destination
Chain INPUT (policy ACCEPT)
target prot opt source destination
Chain FORWARD (policy ACCEPT)
target prot opt source destination
TCPMSS tcp -- 0.0.0.0/0 0.0.0.0/0 tcp flags:0x06/0x02 TCPMSS clamp to PMTU
Chain OUTPUT (policy ACCEPT)
target prot opt source destination
Chain POSTROUTING (policy ACCEPT)
target prot opt source destination
# iptables -t nat -L -n
Chain PREROUTING (policy ACCEPT)
target prot opt source destination
Chain INPUT (policy ACCEPT)
target prot opt source destination
Chain OUTPUT (policy ACCEPT)
target prot opt source destination
Chain POSTROUTING (policy ACCEPT)
target prot opt source destination
MASQUERADE all -- 192.168.3.0/24 0.0.0.0/0
# ifconfig
eth0 Link encap:Ethernet HWaddr 50:e5:49:c1:47:8b
inet addr:192.168.3.3 Bcast:192.168.3.255 Mask:255.255.255.0
inet6 addr: fe80::52e5:49ff:fec1:478b/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:19251625 errors:0 dropped:0 overruns:0 frame:0
TX packets:19599669 errors:0 dropped:0 overruns:0 carrier:1
collisions:0 txqueuelen:1000
RX bytes:11066820494 (11.0 GB) TX bytes:12212266417 (12.2 GB)
Interrupt:42
lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
inet6 addr: ::1/128 Scope:Host
UP LOOPBACK RUNNING MTU:16436 Metric:1
RX packets:18546 errors:0 dropped:0 overruns:0 frame:0
TX packets:18546 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:9815256 (9.8 MB) TX bytes:9815256 (9.8 MB)
Клиентам в качестве главного шлюза присваивается адрес сервака. То биш, весь трафик идёт через него (мониторинг кинетика ето подтвердил - левых соединений нет).
Ситуация с MTU многим, думаю, известна - у них он равен 1400.
Конфиг роутера:
KEENETIC 4G> exec ifconfig
br0 Link encap:Ethernet HWaddr CC:5D:4E:B8:D8:12
inet addr:192.168.3.2 Bcast:192.168.3.255 Mask:255.255.255.0
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:876551 errors:0 dropped:0 overruns:0 frame:0
TX packets:901394 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:186258055 (177.6 MiB) TX bytes:614250252 (585.7 MiB)
eth2 Link encap:Ethernet HWaddr CC:5D:4E:B8:D8:12
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:876759 errors:0 dropped:0 overruns:0 frame:0
TX packets:901394 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:202063727 (192.7 MiB) TX bytes:619041599 (590.3 MiB)
Interrupt:3
eth2.1 Link encap:Ethernet HWaddr CC:5D:4E:B8:D8:12
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:876752 errors:0 dropped:0 overruns:0 frame:0
TX packets:901394 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:189788271 (180.9 MiB) TX bytes:617855828 (589.2 MiB)
lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
UP LOOPBACK RUNNING MTU:16436 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:0 (0.0 B) TX bytes:0 (0.0 B)
ra0 Link encap:Ethernet HWaddr CC:5D:4E:B8:D8:12
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:3685914 errors:0 dropped:0 overruns:0 frame:0
TX packets:41136 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:466992330 (445.3 MiB) TX bytes:0 (0.0 B)
Interrupt:4
wimax0 Link encap:Ethernet HWaddr 00:09:3B:F0:1A:40
inet addr:10.0.0.10 Bcast:10.0.0.255 Mask:255.255.255.0
UP BROADCAST RUNNING MULTICAST MTU:1400 Metric:1
RX packets:871046 errors:0 dropped:0 overruns:0 frame:0
TX packets:823436 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:592154514 (564.7 MiB) TX bytes:221413667 (211.1 MiB)
KEENETIC 4G> exec iptables -t nat -L -n
Chain PREROUTING (policy ACCEPT)
target prot opt source destination
DNAT tcp -- 0.0.0.0/0 10.0.0.10 tcp dpt:22 to:192.168.3.3
DNAT udp -- 0.0.0.0/0 10.0.0.10 udp dpt:22 to:192.168.3.3
Chain POSTROUTING (policy ACCEPT)
target prot opt source destination
MASQUERADE udp -- 192.168.3.0/24 192.168.3.3 udp dpt:22
MASQUERADE tcp -- 192.168.3.0/24 192.168.3.3 tcp dpt:22
SNAT all -- 0.0.0.0/0 0.0.0.0/0 to:10.0.0.10
Chain OUTPUT (policy ACCEPT)
target prot opt source destination
KEENETIC 4G> exec iptables -t mangle -L -n
Chain PREROUTING (policy ACCEPT)
target prot opt source destination
Chain INPUT (policy ACCEPT)
target prot opt source destination
Chain FORWARD (policy ACCEPT)
target prot opt source destination
TCPMSS tcp -- 0.0.0.0/0 0.0.0.0/0 tcp flags:0x06/0x02 TCPMSS clamp to PMTU
TCPMSS tcp -- 0.0.0.0/0 0.0.0.0/0 tcp flags:0x06/0x02 TCPMSS clamp to PMTU
Chain OUTPUT (policy ACCEPT)
target prot opt source destination
Chain POSTROUTING (policy ACCEPT)
target prot opt source destination
Казалось бы, при наличии TCPMSS везде, де только можно, клиенты должны договариватся с сервером об MTU, но проблема на месте.
В данный момент поменял настройки на серваке:
# ifconfig eth0 mtu 1372
Такой размер нашёл здесь: http://kubuntu.ru/node/4559
Дополнительно поменял рамер MTU и на роутере на всех интерфейсах, даже на беспроводной:
# ifconfig br0 mtu 1372
# ifconfig eth2 mtu 1372
# ifconfig eth2.1 mtu 1372
# ifconfig ra0 mtu 1372
В йоте специалисты говорят, что MTU надо менять на клиентах - тогда проблем вобще не будет. Но поменять MTU на компах с WinXP и Win7 в количестве пусть и 20-ти, мне не представляется быстрым и умным.
В чём мои вопросы: - всё ли я сделал, что мог, для того, чтобы победить проблемы с MTU на уровне шлюзов? - верить ли спецам из Yota и настраивать ли каждый комп в отдельности?