Как узнать значение MTU
Windows
Нажмите комбинащию клавишь Win + R
В появившемся окне введите cmd и нажмите OK
В открывшемся черном окне введите команду:
netsh interface ipv4 show subinterfaces
В первой колонке ответа мы увидим значение MTU:
* в данном примере, значение MTU равно 1500 для сетевого адаптера Ethernet.
Linux
ip address
В более современных системах используется утилита для работы с сетевыми интерфейсами — ip address. Вводим команду:
В полученном результате находим нужный сетевой интерфейс и строчку на подобие:
eth0:
mtu 1500 qdisc pfifo_fast state UP qlen 1000
* то, что мы ищем — mtu 1500.
ifconfig
В более ранних системах или с установленным ifconfig вводим:
* где eth0 — сетевой адаптер, для которого хотим узнать MTU.
В полученном результате находим что-то на вроде:
eth0: flags=4163 mtu 1500
* где mtu 1500 — наше значение.
FreeBSD
В данной системе работаем с уже описанным выше ifconfig:
em0: flags=8843 metric 0 mtu 1500
Провайдера
Чтобы определить оптимальное значение MTU для нашего сетевого адаптера, подключенного к сети Интернет, необходимо узнать значение, используемое на оборудовании поставщика.
Для этого выполняем ping с запретом фрагментации сетевых пакетов (-f) и выставлением определенного размера пакета (-l):
ping dmosk.ru -f -l 1472
* 1472 будет соответствовать MTU — 1500, так как к пакету мы должны еще прибавить 28 (заголовок).
Наша задача — подобрать значение пакета, при котором будет идти пинг:
Ответ от 90.156.242.197: число байт=1472 время=13мс TTL=56
Ответ от 90.156.242.197: число байт=1472 время=12мс TTL=56
Требуется фрагментация пакета, но установлен запрещающий флаг.
Требуется фрагментация пакета, но установлен запрещающий флаг.
Значит значение -l нужно уменьшить, пока сигнал не начнет проходить.
Находим значение, которое стоит на границе с ошибкой и прибавляем к нему заголовок пакета — 28. Так мы получаем наше оптимальное MTU.
На данный момент большинство Интернет провайдеров предоставляет услуги связи с фрагментом в 1500. Старые подключения от Ростелеком или подключения на основе PPPoE могут работать на меньших значениях.
Как вручную изменить MTU в Windows
Добрый день. Сегодня не совсем обычная статья, так как она не является повседневной и не подойдет для любого пользователя. Более того, я крайне не рекомендую лезть в данные параметры людям, которые слабо в техническом плане. Речь идет о MTU, что в википедии описано как «максимальный размер полезного блока данных одного пакета (англ. payload), который может быть передан протоколом без фрагментации.» То есть это размер полезной информации в пакете, который компьютер формирует для отправки в сеть.
Последовательность действий
Так вот, если вы попали на данную статью, я думаю вы уже решили что нужно попробовать его подкрутить. Теоретически, оптимизация данного параметра может помочь с решением проблем некорректной работы некоторых сайтов и сервисов, но опять же теоретически. Я же попробую объяснить, как это сделать средствами операционной системы.
- Итак, для начала открываем командную строку от имени администратора и вводим следующую команду: ping -f -l 1472 ххх.ххх.ххх.ххх, где, 1472=1500(стандартное значение для Ethernet) — 28 (значение заголовка, которое не учитывается) ххх.ххх.ххх.ххх — IP-адрес какого-либо сервера вашего провайдера. Я использовал основной шлюз в сети провайдера. И смотрим ответ, если ответ получен без потери пакетов, то увеличиваем значение, если выдаст «Требуется фрагментация пакета, но установлен запрещающий флаг.», значит уменьшаем и так, пока не получим крайнее верхнее значение пакета, которое проходит до нашего сервера. У меня получилось 1492 (1464+28). Значит дальше я и буду его устанавливать в качестве значения MTU.
Далее вводим команду: netsh interface ipv4 show subinterfaces.
Она покажет значение MTU для всех сетевых подключений. Нам необходимо узнать как называется интерфейс основного сетевого подключения. У меня это Ethernet, у вас же смотрите по обстановке. Но в большинстве случаев он будет называться так же.
Далее вводим следующую команду(для ее выполнения требуется чтобы командная строка была запущена от имени администратора): netsh interface ipv4 set subinterface «Ethernet» mtu=1492 store=persistent.
Где вместо Ethernet пишем название своего интерфейса, а в значение MTU пишем полученное на первом шаге инструкции.
На этом всё. Надеюсь эта статья оказалась вам полезной, нажмите одну из кнопок ниже, чтобы рассказать о ней друзьям. Также подпишитесь на обновления сайта, введя свой e-mail в поле справа или подписавшись на группу в Вконтакте.
Значение MTU в роутере: что будет, если оно выставлено неправильно
Приветствую, дорогой читатель, и добро пожаловать на канал Installer!
Сегодня рассказываю про значение MTU в роутере , что это такое, и как самостоятельно определить и установить его в своей домашней сети. А также, в конце статьи, расскажу, что будет если выставить неправильное значение.
MTU — Maximum Transmission Unit,
а по-русски, максимальный блок передачи.
Как известно, данные в сети передаются так называемыми «пакетами». Чтобы было проще — проведу аналогию с грузовиками, каждый из которых может перевозить только определённый вес, на который он рассчитан.
Соответственно, если представить что каждый грузовик может перевозить по 2 тонны, а перевезти нам нужно всего 9 тонн, то несложно подсчитать, что понадобиться нам 5 грузовиков.
Также и здесь, только счёт идёт не на тонны, а на единицы измерения информации — байты. Если объём передаваемой информации не помещается в один блок, то она делится на два, на три и так далее, пока не будет доставлена адресату полностью.
Соответственно, значение MTU — это максимальное количество байт, которое помещается в один такой блок.
Определяется MTU, чаще всего отправляющим устройством. Оно «делит» всю информацию на отдельные блоки, и отправляет их по каналу связи. Далее, происходит «сборка» этих блоков в единое целое на принимающем устройстве.
Помимо информации, в состав блока MTU входят служебные заголовки IP и ICMP, так называемые «путевые листы» нашей информации, чтобы «машина» понимала что, откуда и куда она везёт. Вес этой служебной информации — 28 байт , и она включается в каждый блок MTU.
Как многие уже догадались, чем больше «блоков» будет отправлено — тем больше байт информации потрачено на заголовки. Отсюда переходим к следующему разделу,
Какой MTU нужно поставить на роутере
Это значение как правило выставлено производителем роутера по умолчанию, но для разных провайдеров — могут быть допустимы разные настройки. Например, один поставщик услуг выставил на своём оборудовании значение 1000 байт, а другой 1500. Если наш роутер получает «пакеты» по 1500 байт, то какой смысл ему расходовать ресурс на то, чтобы поделить эти 10 пакетов по 1500, на 15 по 1000 ?
Определяем оптимальное значение MTU своими руками
Для этого нам понадобится командная строка. Чтобы её вызвать, нажимаем одновременно клавиши Win+R, либо находим её в поиске. В открывшемся окне вводим команду cmd
Далее,в командной строке «пингуем» любой внешний ресурс следующей командой: