Отправка данных над сетью с нулевым MTU (максимальная трансмиссия)

StackOverflow https://stackoverflow.com/questions/4051228

  •  27-09-2019
  •  | 
  •  

Вопрос

Я хочу отправить данные, такие, как фрагментация данных отключена. Например, в пинге, если мы пишем

ping localhost -M do -s 65507

-M do: отключить фрагментацию -s 65507: максимальный размер пакета

Это дает мне ошибку, как

From localhost (127.0.0.1) icmp_seq=1 Frag needed and DF set (mtu = 16436)

Есть ли какой-то другой способ сделать это или использовать другое программное обеспечение. Предпочтительно IPERF.

Это было полезно?

Решение

Похоже, вы ищете флаг не фрагмента (DF). Он устанавливается на пакетной основе в Флаги IP-заголовка. Отказ Что-нибудь отправлено больше, чем MTU с набором DF, приведет к созданию сообщения об ошибке ICMP. Без DF Установите маршрутизатор фрагмента и отправить. Существует много сломанных систем, которые либо едят ошибку ICMP (сумасшедшие параноиковые брандмауэры) или иным образом ведут себя как странно.

RFC791. Предоставляет подробную информацию о правилах фрагментационных IP дейтаграммы.

Типичные MTU - 1500 байтов. Минимальный MTU для IPv4 составляет 576, в то время как для IPv6 это 1280. Gigabit Ethernet и другие ссылки часто поддерживают гораздо большую MTU.

Другие советы

MTU Ethernet составляет 1500 байтов, включая заголовки. Вы не можете просто игнорировать это. Вы не можете отправить пакет, который большой без фрагментации.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top