Как узнать значение MTU

Обновлено Обновлено: Опубликовано Опубликовано:

Тематические термины: MTU, Windows, Linux, FreeBSD

В данной инструкции описаны способы просмотра значения MTU для различный операционных систем. Также в конце статьи будут указания по его смене.

Windows

Нажмите комбинащию клавишь Win + R

В появившемся окне введите cmd и нажмите OK

Запуск командной строки

В открывшемся черном окне введите команду:

netsh interface ipv4 show subinterfaces

В первой колонке ответа мы увидим значение MTU:

Команда для определения значения MTU

* в данном примере, значение MTU равно 1500 для сетевого адаптера Ethernet.

В Powershell можно использовать команду:

Get-NetIPInterface | where {($_.ConnectionState -eq "Connected" )}

Linux

ip address

В более современных системах используется утилита для работы с сетевыми интерфейсами — ip address. Вводим команду:

ip a

В полученном результате находим нужный сетевой интерфейс и строчку на подобие:

eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000

* то, что мы ищем — mtu 1500.

ifconfig

В более ранних системах или с установленным ifconfig вводим:

ifconfig eth0

* где eth0 — сетевой адаптер, для которого хотим узнать MTU.

В полученном результате находим что-то на вроде:

eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500

* где mtu 1500 — наше значение.

FreeBSD

В данной системе работаем с уже описанным выше ifconfig:

ifconfig em0

Получаем:

em0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> 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

Для смены значения MTU в Windows и Linux нужно использовать командную строку. Для Windows также можно отредактировать реестр.

Подробнее о этом читайте в инструкции Смена MTU.

Читайте также

Другие материалы по теме:

1. Как узнать MAC-адрес сетевой карты.

2. Как поменять MAC-адрес на компьютере с Windows.

3. Настройка сети в Linux с помощью netplan.

4. Настройка сети в CentOS и Rocky Linux.

5. Управление сетевыми маршрутами в CentOS 7.

# FreeBSD # Linux # Windows # Сети
Дмитрий Моск — частный мастер
Была ли полезна вам эта инструкция?

Да            Нет