Как изменить значение MTU в Windows 10, Windows 8.1, Windows 7

MTU Всем привет! Сегодня хочу рассказать как изменить MTU в Windows. Напомню MTU - Maximum transmission unit (MTU) - это максимальный объём данных, который может быть передан протоколом за одну итерацию. К примеру, Ethernet MTU равняется 1500, что означает, что максимальный объём данных, переносимый Ethernet фреймом не может превышать 1500 байт. Очень часто рядовым пользователям приходится его менять, когда необходимо раздать свой интернет 

У каждого провайдера или сетевого устройства, данное значение может быть свое. например 1492 очень часто встречается на роутерах Dlink, и если устройству на устройство будет например приходить пакет 1500 байт, а у него мту настроено 1492, то часть пакетов будут приходить битые, глюки могут выражаться, например у вас не полностью будут отображаться интерфейс сайта, что то загрузилось, а что то нет, первый признак, проверить Maximum transmission unit.

Итак посмотрим какое значение mtu у гугла, откроем командную строку и вводим следующую команду.

ping -f -l 1472 8.8.8.8

где, 1472=1500(стандартное значение для Ethernet) — 28 (значение заголовка, которое не учитывается)

Как изменить значение MTU в Windows 10, Windows 8.1, Windows 7-01
Как изменить значение MTU в Windows 10, Windows 8.1, Windows 7-01

И смотрим ответ, если ответ получен без потери пакетов, то увеличиваем значение, если выдаст «Требуется фрагментация пакета, но установлен запрещающий флаг.», значит уменьшаем и так, пока не получим крайнее верхнее значение пакета, которое проходит до нашего сервера. У меня получилось 1500 (1472+28). Значит дальше я и буду его устанавливать в качестве значения MTU
Как изменить значение MTU в Windows 10, Windows 8.1, Windows 7-03

 

Далее, вводим команду:

netsh interface ipv4 show subinterfaces

Она покажет MTU для всех сетевых подключений. Нам необходимо узнать как называется интерфейс основного сетевого подключения. Посмотреть названия можно командой

netstat -r

Как изменить значение MTU в Windows 10, Windows 8.1, Windows 7-04
Как изменить значение MTU в Windows 10, Windows 8.1, Windows 7-04

либо в центре управления сетями.

Как изменить значение MTU в Windows 10, Windows 8.1, Windows 7-04
Как изменить значение MTU в Windows 10, Windows 8.1, Windows 7-04

У меня это Ethernet, у вас же смотрите по обстановке. Но в большинстве случаев он будет называться так же.

Далее, вводим следующую команду (для ее выполнения требуется чтобы командная строка была запущена от имени администратора)

netsh interface ipv4 set subinterface "Ethernet" mtu=1492 store=persistent

Где вместо Ethernet пишем название своего интерфейса, а в значение MTU пишем полученное на первом шаге инструкции

Как изменить значение MTU в Windows 10, Windows 8.1, Windows 7-06
Как изменить значение MTU в Windows 10, Windows 8.1, Windows 7-06

как отключить автоматическую настройку значения MTU для сетевых подключений:

netsh int tcp set global autotuninglevel=disabled

Чтобы включить автоматическую настройку обратно, нужно заменить disabled на normal

Как изменить значение MTU в Windows 10, Windows 8.1, Windows 7-07
Как изменить значение MTU в Windows 10, Windows 8.1, Windows 7-07

После этого значение mtu будет такое как вам нужно. Вот мы с вами и разобрали как изменить mtu в Windows. Так что значение mtu теперь для вас не секрет.

Как сменить MTU через реестр

Для тех, кто не любит командную строку, есть PowerShell и реестр. В реестре Windows есть ветка:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control \Class\{4D36E972-E325-11CE-BFC1-08002bE10318}

Класс {4D36E972-E325-11CE-BFC1-08002bE10318} содержит информацию, о всех ваших сетевых картах, а именно драйверах, их версиях и GUID самой карты. GUID потребуется для определения сетевой карты в другой ветке реестра, но не переживайте я покажу более быстрый метод определения и сопоставления GUID и сетевой карты через PowerShell. На что в данном разделе нужно обратить внимание:

  • Папки 0000, 0001 и так далее - это папки перечисляющие ваши сетевые интерфейсы в Windows, тут вам нужно будет найти нужный по параметрам указанными ниже
  • DriverDesc - Описание драйвера, по сути вы увидите тут производителя вашей сетевой карты, оно поможет вам определить правильный адаптер
  • NetCfgInstanceId - это GUID карточки

Самое важное узнать GUID, так как он поможет в правильном месте изменить значение Maximum transmission unit.

Определение GUID сетевой карты

Теперь зная GUID идем по пути:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\ Services\Tcpip\Parameters\Interfaces

Среди интерфейсов находим нужный, можно удостовериться, что у него правильный IP-адрес. Найдите ключ MTU, если его нет, то нужно создать REG_DWORD с нужным значением.

Изменить Maximum transmission unit в Windows

Теперь как не заморачиваться с поиском GUID сетевой карты. Откройте PowerShell ISE и запустите мой скрипт:

$aGUID_SET = @(Get-ItemProperty "HKLM:\SYSTEM\CurrentControlSet\services\Tcpip\Parameters\Interfaces\*" | select -ExpandProperty pschildname)

Get-ItemProperty "HKLM:\SYSTEM\CurrentControlSet\Control\Class\{4D36E972-E325-11CE-BFC1-08002BE10318}\*" -exclude "Properties" |
Where-Object {$aGUID_SET.Contains($_.NetCfgInstanceId)} |
ForEach-Object {
""
$_.DriverDesc
$_.NetCfgInstanceId
}

Получение GUID сетевой карты через PowerShell

Или просто если нужно вывести все GUID из нужной ветки:

Get-ItemProperty "HKLM:\SYSTEM\CurrentControlSet\services\Tcpip\Parameters\Interfaces\*" | select -ExpandProperty pschildname

Вывод GUID Intrfaces Windows из PowerShell

На этом все, с вами был Иван Семин. Материал сайта pyatilistnik.org

Оцените статью
Настройка серверов windows и linux
Добавить комментарий

  1. Алексей

    1472 + 28 = 1500, откуда в команде взялась цифра 1492?

  2. Riks

    При попытке поменять mtu ВПН-подключения командой:
    netsh interface ipv4 set subinterface «VPN» mtu=1350 store=persistent
    пишет «ОК». Но при подключении размер mtu остаётся стандартный, 1400. Командная строка запущена из под админа, реальный размер mtu никак не меняется.

  3. Иван Семин автор

    Советую вам проверить ваш реестр, информацию я добавил в статью

  4. Дмитрий

    1492 — не цифра, а число. Цифры — 1, 4, 9 и 2.
    Так же, как слово «книга», например, состоит из букв «к», «н», «и», «г», и «а», но целиком это — слово.
    Не путайте термины!

  5. Анна

    Добрый день. У меня была проблема с этим mtu при подключении по VPN на работу. Просила админов в этой области поковырять — промолчали. Нашла вашу статью и решила попробовать сама. Нашла число, которое подошло, прописала его именно для подключения VPN (у меня оно в интерфейсах называется Mynetwork). Не совсем поняла — надо ли мне отключать автоматическую настройку mtu? Сохранится ли оно у меня именно для моего подключения по VPN без отключения автоматической настройки? Спасибо вам за эту статью. А то мне один из админов уже предложил роутер менять, а мы его меняли не так давно — старый был уже совсем старый, решили, что стоит обновить на более современный, чтобы wifi был побысрее.

  6. Генадий

    Это MTU не «Гугла», а вашего оператора связи. Правильнее сказать, настроек вашего роутера. Не знаю, откуда эту статью перевели, но, соединение PPPoE, должен добавляться заголовок самого PPPoE. Оттуда и 1492 (+8 и будет 1500 на оборудование оператора). И того, при 1492, в настройках роутера и 1500 оператора, пинг должен проходить на 1464 (+28+8).
    Поставьте себе побольше и исчезните из интернета.

  7. Георгий

    При пинге гугла проходит только 1464 а на яндекс 1472. Так что надо пинговать интересующий адрес.

  8. Макс

    всем привет. а если существенно занизить MTU — что будет? поставить к примеру 1000 или 500?

  9. Иван Семин автор

    Если значительно снизить MTU (Maximum Transmission Unit), то возможны следующие последствия:

    1. Увеличение количества фрагментации: Если MTU слишком низкий, то пакеты данных могут быть разделены на несколько фрагментов для передачи по сети. Это может привести к увеличению нагрузки на сеть и снижению производительности.

    2. Увеличение задержки: Пакеты данных, разделенные на фрагменты, требуют дополнительного времени для передачи и сборки на приемной стороне. Это может привести к увеличению задержки в сети.

    3. Снижение пропускной способности: Фрагментация пакетов данных и увеличение задержки могут привести к снижению пропускной способности сети. Это может повлиять на скорость передачи данных и качество обслуживания.

    4. Потеря пакетов: Если MTU слишком низкий, то пакеты данных могут быть отброшены или потеряны в процессе передачи. Это может привести к потере информации и повторной передаче данных.

    В целом, существенное занижение MTU может негативно повлиять на производительность и надежность сети.

  10. Леха

    Вау, великолепный веб-сайт. Спасибо…