Постоянно забываю про настройку MTU на коммутаторах Cisco. Чтобы больше не забывать, таблица с сайта cisco.com. А также, так как очень не часто приходится проверять MTU, забывается очень простой способ его поверки командой ping.
DETAILED STEPS
1) Для того, что бы найти минимальный MTU (забавное сочетание) на сети можно использовать расширенную команду ping, причём как c конечных станций/серверов так и с оборудования Cisco. Пропингуем с маршрутизатора R01 маршрутизатор R02 с выставленным df-bit, c начальным размером пакета в 1000 байт, конечным 1500 байт, и шагом 100 байт. Кол-во повторений 2.
R01#ping Protocol [ip]: Target IP address: 192.168.12.2 Repeat count [5]: 2 Datagram size [100]: Timeout in seconds [2]: Extended commands [n]: y Source address or interface: 192.168.12.1 Type of service [0]: Set DF bit in IP header? [no]: y Validate reply data? [no]: Data pattern [0xABCD]: Loose, Strict, Record, Timestamp, Verbose[none]: Sweep range of sizes [n]: y Sweep min size [36]: 1000 Sweep max size [18024]: 1500 Sweep interval [1]: 100 Type escape sequence to abort. Sending 12, [1000..1500]-byte ICMP Echos to 192.168.12.2, timeout is 2 seconds: Packet sent with a source address of 192.168.12.1 Packet sent with the DF bit set !!!!..!!!!.. Success rate is 66 percent (8/12), round-trip min/avg/max = 4/24/56 ms
Как видите, проходит только 6 ICMP пакетов размером 1000, 1100, 1200, 1300 байт
Начиная с 1400 байт и выше пакеты не проходят. Следовательно, минимальное MTU между двумя точками — 1300 и 1400, что можно уточнить ещё за несколько циклов, ужимая диапазон и умешьшая шаг.
2) Частая проблема возникающая при взаимодействии сетевых и системных администраторов — с конечного устройства проходят пакеты одного размера, с ближнего к нему сетевого устройства большего размера. Причина лежит в том, что операционные системы (в частности Windows), когда вы задаёте размер пакета команде ping, воспринимают это значение как чистый paiload — без заголовков ICMP и IP, т.е. при указании ping 192.168.1.2 -l 100 система будет генерировать пакеты величиной 128 байт, а не 100 (8 байт ICMP заголовок и 20 байт IP). При указании же размера ICMP пакета на сетевом оборудовании Cisco указываемый вами размер включает уже оба заголовка. Поэтому на дефолтном Ethernet линке пинги с Windows OS (к примеру) покажут 1472 байт максимальный размер пакета проходящий без фрагментации, а Cisco 1500 байт. JunOS, кстати ведет себя также как и операционные системы (не включает заголовки)
DETAILED STEPS
Проверка MTU командой ping
Так как основным методом проверки MTU и по сей день является команда PING, с выставленным df-bit и рамером пакета, приведу пару полезных триков:
1) Для того, что бы найти минимальный MTU (забавное сочетание) на сети можно использовать расширенную команду ping, причём как c конечных станций/серверов так и с оборудования Cisco. Пропингуем с маршрутизатора R01 маршрутизатор R02 с выставленным df-bit, c начальным размером пакета в 1000 байт, конечным 1500 байт, и шагом 100 байт. Кол-во повторений 2.
R01#ping Protocol [ip]: Target IP address: 192.168.12.2 Repeat count [5]: 2 Datagram size [100]: Timeout in seconds [2]: Extended commands [n]: y Source address or interface: 192.168.12.1 Type of service [0]: Set DF bit in IP header? [no]: y Validate reply data? [no]: Data pattern [0xABCD]: Loose, Strict, Record, Timestamp, Verbose[none]: Sweep range of sizes [n]: y Sweep min size [36]: 1000 Sweep max size [18024]: 1500 Sweep interval [1]: 100 Type escape sequence to abort. Sending 12, [1000..1500]-byte ICMP Echos to 192.168.12.2, timeout is 2 seconds: Packet sent with a source address of 192.168.12.1 Packet sent with the DF bit set !!!!..!!!!.. Success rate is 66 percent (8/12), round-trip min/avg/max = 4/24/56 ms
Как видите, проходит только 6 ICMP пакетов размером 1000, 1100, 1200, 1300 байт
Начиная с 1400 байт и выше пакеты не проходят. Следовательно, минимальное MTU между двумя точками — 1300 и 1400, что можно уточнить ещё за несколько циклов, ужимая диапазон и умешьшая шаг.
2) Частая проблема возникающая при взаимодействии сетевых и системных администраторов — с конечного устройства проходят пакеты одного размера, с ближнего к нему сетевого устройства большего размера. Причина лежит в том, что операционные системы (в частности Windows), когда вы задаёте размер пакета команде ping, воспринимают это значение как чистый paiload — без заголовков ICMP и IP, т.е. при указании ping 192.168.1.2 -l 100 система будет генерировать пакеты величиной 128 байт, а не 100 (8 байт ICMP заголовок и 20 байт IP). При указании же размера ICMP пакета на сетевом оборудовании Cisco указываемый вами размер включает уже оба заголовка. Поэтому на дефолтном Ethernet линке пинги с Windows OS (к примеру) покажут 1472 байт максимальный размер пакета проходящий без фрагментации, а Cisco 1500 байт. JunOS, кстати ведет себя также как и операционные системы (не включает заголовки)
Keine Kommentare:
Kommentar veröffentlichen