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

Обновлено 08.11.2020

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

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

  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 был побысрее.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *