Чому зниження MTU з 1500 до 1499 дозволяє мені отримувати доступ до більшості веб-сайтів?


16

У мене виникла ця проблема, коли мені вдалося підключитися лише до таких веб-сайтів, як google.com та ibm.com, коли mtu було встановлено у 1500, але якщо я спробую підключитися до чого-небудь іншого, він просто відобразив би порожню сторінку. Коли mtu було знижено до 1499 року, воно почало працювати. Мені цікаво, чому це працює, і якщо встановлення mtu на 1499 могло б викликати проблеми в майбутньому? Я насправді про це мало знаю, я просто чув про це і шукаю хорошого пояснення.

Коли я отримаю пояснення, чому MTU було скинуто лише на 1 байт, я оновлю своє запитання з поясненням.

Відповіді:


19

Це може означати, що якийсь інший пристрій вище від вас має менший mtu, і хтось неправильно налаштував брандмауер для блокування всіх ICMP, що запобігає виявленню MTU для шляху.

Багато наївних адміністраторів мережі, здається, вважають, що ICMP не має мети, і ви можете повністю заблокувати її без будь-яких наслідків.


4
1499, здається, дивно. Менші MTU зазвичай є результатом позначення іншого заголовка (наприклад, PPPoE, VPN, VLAN тощо), який зменшує MTU на деяке парне число. Наприклад, 4 байти для 802,1q або 8 байт для PPPoE. Що б використовувати лише 1 байт?
Джеральд Гребінь

@Gerald, це добре, і число мені також здається дивним. Можливо, хтось ще запропонує можливе пояснення.
Zoredache

Джеральде, я дізнаюся, чому це був лише 1 байт.
Xaisoft

Інженер бездротової мережі в моїй компанії встановив її в 1499 році, тому я дізнаюся, чому і повідомляю вас. Я абсолютно не зважаю на всі ці речі, хаха.
Xaisoft

2
Може бути маршрутизатор / брандмауер / тощо десь неправильно налаштований, щоб ловити пакети з 1500+ MTU замість> 1500 MTU.
Кріс S

8

Якщо конкретніше, то, що IP-дейтаграми у своїх заголовках встановлено прапор DF (не фрагмент). Потім вони потрапляють на шлюз десь уздовж шляху між вами та пунктом призначення, який має менший MTU, ніж той, який використовував відправник. Цей шлюз потребує подальшого фрагментації дейтаграм, тому він надсилає повідомлення типу 4 ICMP, що по суті означає: "Мені потрібно фрагментувати ці пакети, але ви сказали, що цього не робити. Тому призначення недоступне".

Ці пакети ICMP не отримує оригінальний відправник, оскільки деякий шлюз уздовж шляху був налаштований (нерозумно) для блокування всіх ICMP. Тож відправник не знає, що його пакети не пройшли, і сидить навколо, чекаючи ... і чекаючи. Врешті щось вичерпається. Зазвичай це людина, яка вилазить першою. :)

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.