eagle--owl писал(а):
Не решена проблема с пользовательским значением MTU (во всяком случае для PPPoE подключения к провайдеру): при выставлении 1472 (данное значение рекомендуется провайдером Нетбайнет для PPPoE, причём, со слов техподдержки НБН, оно рекомендуется D-Link'ом для управляемых коммутаторов при PPPoE), когда начинаю пинговать любой внешний IP-адрес пакетами размером 1444 с флагом, запрещающим фрагментацию, они не проходят, выводится сообщение о превышении макс. длины пакета. Если выставить дефолтные 1492, то всё нормально, т. е. пакет размером 1464 байта проходит.
Решил, причём решение до нелепости простейшее, аж смешно было из-за своей собственной «тупости». Логику включить просто нужно было: размер MTU для Ethernet - 1500 байт, максимальное MTU для PPPoE - 1492 байта, разница в 8 байт уходит на заголовок PPPoE, который занимает 6 байт, и PPP Protocol ID, который равняется 2 байтам. Причём это заложено в прошивку, соотв., при значениях по умолчанию всё хорошо. На PPPoE интерфейсе в тек. версии прошивки изменить MTU нет никакой возможности, но можно его изменить для физ. порта WAN, что я собственно и пытался делать, только без учёта тех самых 8-ми байт. Таким образом: если, как в моём случае, требуется выставить MTU для PPPoE равным 1472 байтам, то нужно просто увеличить значение MTU для WAN порта на 8 байт (1480), и вписать его в соотв. окошко. После этого сохраняем настройки, ребутаемся, проверяем коммандой (для wind'ы) ping -f -n 10 -l 1444
http://www.dlink.com и радуемся (для справки, ключи ping'a: -f - запрет фрагментирования пакета; -n 10 - сколько раз будем пинговать; -l 1444 -размер пакета (нужный MTU, в моём случае 1472, за вычетом 28 байт на заголовки IP и ICMP). Для остальных типов подключения этот метод тоже будет работать, только нужно знать кол-во байт забираемых на протокольные нужды.