Обновлено: 27.09.2017
Опубликовано: 23.06.2016
Тематические термины: MTU, Windows, Linux, FreeBSD
Windows
Linux
FreeBSD
Провайдера
Windows
Нажмите комбинащию клавишь Win + R
В появившемся окне введите cmd и нажмите OK
В открывшемся черном окне введите команду:
netsh interface ipv4 show subinterfaces
В первой колонке ответа мы увидим значение MTU:
* в данном примере, значение MTU равно 1500 для сетевого адаптера Ethernet.
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 на сервере Windows с помощью командной строки. На тестовом сервере операционная система Windows Server 2016.
MTU (Maximum Transmission Unit) — максимальный размер полезного блока данных одного пакета. Если размер блока превышает MTU, то он может быть передан протоколом с использованием фрагментации.
Основные значения MTU в байтах:
- Ethernet — 1500
- 16 Mbps Token Ring — 17914
- 4 Mbps Token Ring — 4464
- FDDI — 4352
- IEEE 802.3/802.2 — 1492
- PPPoE (WAN Miniport) — 1480
- X.25 — 576
Зачем уменьшать MTU
Иногда бывает полезно уменьшить MTU на компьютере, чтобы ускорить скорость работы по сети. Классический случай, когда дома стоит роутер и на нём указан MTU 1480. Если на домашнем компьютере указано значение MTU 1500, то большие пакеты при передачи данных могут фрагментироваться. Тормозит потоковое видео или аудио, к примеру.
Уменьшаем MTU с помощью командной строки
Командная строка запущена под администратором.
Посмотреть текущее значение MTU:
netsh interface ipv4 show subinterfaces
У меня на интерфейсе Ethernet0 указано MTU 1500.
Установить значение MTU 1452 на интерфейсе Ethernet0:
netsh interface ipv4 set subinterface "Ethernet0" mtu=1452 store=persistent
Перезагружаем компьютер. Всё.
Сброс MTU на значение по умолчанию:
netsh interface ipv4 reset
Перезагружаем компьютер.
Определить минимальное значение MTU
Вычислить минимальное значение MTU между компьютером и узлом сети можно с помощью команды ping.
ping example.com -f -l 1500
Здесь:
- -f — запрещает фрагментировать пакеты
- -l — размер пакета
Если пинг не проходит, то уменьшаем размер пакета.
У меня 1500 не проходит, а 1400 проходит. Истина где-то посередине. Методом научного пинга находим максимальный размер пакета, который проходит без фрагментации.
У меня получилось 1372. Прибавляем 28 байт (8 байт ICMP заголовок и 20 байт IP). 1372+28=1400.
Оптимальный размер MTU 1400.
Очень редко, но такие моменты наступают, когда необходимо изменить стандартное значение размера пакета.
Если у Вас FTP-клиент не догружает файлы или сайты в интернете открываются не всегда одинаково быстро, то, возможно, настала пора обратить внимание на установленные значения MTU.
Очень редко, но такие моменты наступают, когда необходимо изменить стандартное значение размера пакета.
Если у Вас FTP-клиент не догружает файлы или сайты в интернете открываются не всегда одинаково быстро, то, возможно, настала пора обратить внимание на установленные значения MTU.
Что такое MTU и сколько ставить?
Что такое MTU? Вот как рассказывает нам Wikipedia.
Многие задают вопрос не что это такое, а сколько устанавливать? Однозначного ответить на этот вопрос нельзя. Зависимостей очень много. Начиная от серверов, где размещены сайта, и заканчивая качеством линии связи.
У Вашего компьютера MTU должно быть равно или меньше, которое установлено на вашем роутере, маршрутизаторе провайдера или куда вы там подключаетесь. Но это не гарантирует Вам хорошую работу. На моем домашнем роутере, к примеру, а также на всех компьютерах домашней сети, установлено значение 1490. Это число я получил экспериментальным методом (если бы я тогда встретил утилиту TCP Optimizer, умеющую определять подходящий MTU, было бы в разы проще). У меня плохо отправлялись файлы на удаленный FTP-сервер, а при этом значении всё отлично работает. Хотя стоит заметить, что значение у провайдера стоит стандартное – 1500.
В Windows MTU можно поменять двумя способами: простым и сложным. Простой способ заключается в установке стороннего программного обеспечения, а сложный – в изменении MTU «родными» средствами.
Начнем с сложного, ибо он самый правильный.
Ручной метод изменения MTU в Windows
Все делается с помощью консоли. Вообще все хорошие и удобные вещи делаются только через консоль. Это стоит запомнить.
Узнаем MTU вручную
Запускаем системную консоль Windows с правами администратора:
cmd.exe
Для того, чтобы посмотреть текущие значения MTU, вводим команду:
netsh interface ipv4 show subinterfaces
MTU Состояние определения носителя Вх. байт Исх. байт
------ --------------- --------- --------- -------------
4294967295 1 0 0 Loopback
1500 1 83147897 2724203 Локальное подключение к сети
В моем случае у меня только один интерфейс и это LAN со стандартным значением MTU 1500.
Меняем MTU вручную
Теперь вводим команду для того, чтобы изменить MTU для интерфейса LAN:
netsh interface ipv4 set subinterface "Локальное подключение к сети" mtu=1490 store=persistent
MTU Состояние определения носителя Вх. байт Исх. байт
------ --------------- --------- --------- -------------
4294967295 1 0 0 Loopback
1490 1 83147897 2724203 Локальное подключение к сети
Этой командой я указал новое значение 1490 для MTU.
Для того, чтобы посмотреть новый результат:
netsh interface ipv4 show subinterfaces
Меняем MTU в Windows с помощью TCP Optimizer
Для некоторых проще что-то делать используя графический интерфейс и в этом может помочь утилита TCP Optimizer. Вот, вроде как, ее официальный сайт. У нее достаточно много настроек и самое главное ее достоинство – она умеет определять максимальный пакет, с которым работает ваш компьютер.
Узнаем оптимальное MTU
На скрине ниже показано, как можно узнать оптимальное MTU до сайтов. Сайты можно вручную задать на те, которые Вам нужны. В примере я указал этот блог:
Устанавливаем MTU через TCP Optimizer
После всех изменений не забываем нажать на кнопку Apply changes.
Теги: сеть
Комментарии
На чтение 8 мин Просмотров 6.7к.
Кристина Горбунова
Высшее образование по специальности “Информационные системы”. В сфере более 7 лет, занимается разработкой сайтов на WordPress и Tilda.
Задать вопрос
При подключении к интернету у новичков часто возникает вопрос, что такое MTU в настройках роутера и как изменить этот параметр. Мы расскажем, как определить оптимальное значение этой характеристики и когда не стоит изменять максимальный размер полезного блока данных в пакете.
Содержание
- Что такое MTU и из чего складывается параметр
- Определяем оптимальное значение
- Установка MTU в роутере
- ASUS
- TP-Link
- D-Link
- Zyxel
- Keenetic
- Netis
- Tenda
- Upvel
- Mercusys
- Настройка на компьютере
- Что будет, если установить некорректное значение
Что такое MTU и из чего складывается параметр
В интернете информация передается в виде небольших пакетов данных. Каждый блок содержит служебную информацию – заголовок (header). Он нужен для определения типа пересылаемых данных, количества отправляемых пакетов и т. д. Величина передаваемого блока данных ограничена конкретным количеством байт.
Maximum transmission unit (MTU) – максимальное количество байт, которое сможет передать роутер без фрагментации. Чем больше этот параметр, тем выше скорость интернета. Для интерфейса Ethernet типовое значение этой характеристики – 1500. Реальная величина параметра MTU чуть меньше в пределах 1460-1480 байт.
Пример работы MTU. Роутеру нужно передать файл размером 9000 байт. Величина МТУ – 1470. Устройства фрагментирует передаваемую информацию на 7 частей – 6 фрагментов величиной 1470 байт и 1 фрагмент 180 байт.
Многие модели роутеров определяют МТУ самостоятельно при подключении к ПК и сети, но не всегда автоматически установленная величина совпадает с параметрами интернета.
За счет правильно настроенного значения МТУ можно:
- увеличить канал передачи, чтобы к нему одновременно смогли подключаться разные сетевые службы, приложения;
- сократить количество поврежденных пакетов при передаче данных;
- снизить нагрузку на канал передачи и увеличить скорость интернета.
Внимание! К изменению МТУ приступайте только при наличии проблем с интернетом или какими-то сетевыми службами. Если скорость соединения нормальная и сайты грузятся без проблем, лучше этот параметр не менять.
Современные ОС автоматически вычисляют оптимальное значение максимального размера блока данных или берут его из настроек роутера. Пользователи могут настроить МТУ самостоятельно с помощью командной строки.
Определяем оптимальное значение
Самый простой путь поиска оптимальной величины МТУ – узнать у провайдера. Большинство компаний предоставляют клиентам все настройки сети (VPI, VCI, имя IP-сервера). Если такой информации провайдер не предоставил, определить параметр можно самостоятельно.
Найти оптимальное значение MTU можно при помощи команды ping. Пропинговать можно любой ресурс.
Для этого отройте командную строку и введите команду:
ping -f -l 1300 yandex.ru
Для открытия командной строки нажмите Win+R. В появившемся окне введите cmd, а затем нажмите на Enter. Откроется консоль с черным экраном. Это и есть командная строка.
В введенной команде 1300 – размер пакета в байтах. Далее увеличивайте его, пока в командной строке не появится ошибка «Требуется фрагментация пакета, но установлен запрещающий флаг». Значение пакета, предшествующее появлению сообщения, равно максимальному количеству передаваемой информации.
Для нашего соединения этот параметр составляет 1432 байта. Если установить значение 1433, то появится ошибка. 1432 – это максимальна величина данных, передаваемая без заголовков (maximum segment size или MSS).
Для того, чтобы узнать размер MTU в байтах, прибавьте 28 к максимальному размеру пакета. В нашем случае это 1460 (1432+28). Это значение и нужно выставить в МТУ роутера.
Установка MTU в роутере
Сменить стандартное значение MTU можно в настройках роутерах. Для этого введите DNS или IP адрес устройства в адресную строку браузера. Он обычно указан на нижней части корпуса.
Самые популярные адреса:
- 192.168.0.1;
- 192.168.1.1.
Еще один способ определения адреса – ввести в командную строку ipconfig.
IP роутера 192.168.1.1. После того как узнали адрес для входа, вводим его в адресной строке браузера. Следующим шагом нужно будет ввести логин и пароль администратора. По умолчанию это «admin» в оба поля.
Далее процесс настройки зависит от модели используемого устройства.
ASUS
Откройте вкладку «Дополнительные настройки» и найдите там раздел «Интернет» или «Wan».
TP-Link
В старой прошивке роутеров откройте раздел «Сеть». В нижней части страницы вкладки WAN будет указан размер МТУ. Для замены просто введите новое значение и нажмите на кнопку «Сохранить».
В новых роутерах нужно перейти в раздел «Дополнительные настройки», открыть вкладку «Сеть» и открыть пункт «Интернет». В блоке «Дополнительные настройки» будет указан параметр MTU в роутере. После изменения параметров нажмите на кнопку «Сохранить». Новые настройки вступят в силу после перезагрузки роутера.
D-Link
Для настройки максимального размера блока данных откройте раздел «Сеть» подпункт «WAN». Выберите используемое подключение к интернету.
В появившемся списке настроек найдите пункт «MTU».
Zyxel
- Откройте раздел «Интернет» и откройте вкладку «Подключения». Выберите активное подключение или создайте новое.
- Найдите параметр «Размер MTU». Введите свое значение.
- Нажмите на кнопку «Применить» для сохранения параметров.
Keenetic
Чтобы изменить параметр MTU:
- В разделе «Интернет» откройте вкладку «Проводной».
- Найдите блок «Аутентификация у провайдера (PPPoE / PPTP / L2TP)» или «Параметры IP и DNS».
- Откройте дополнительные настройки. Найдите пункт «Размер MTU».
Netis
Нажмите на кнопку Advanced.
Откройте меню «Сеть». Выберите подпункт «Wan».
Чтобы поставить значение MTU в роутере Netis, откройте расширенные настройки WAN-соединения.
Tenda
Откройте раздел «Системные настройки». Найдите там пункт «Настройки WAN».
В открывшемся окне на первой строчке находится «Максимальный размер передаваемых пакетов». Его нужно уменьшить или увеличить.
В роутерах Tenda с обновленной прошивкой нужные настройки расположены в разделе «Administration».
Upvel
Откройте раздел «Настройки», выберите там «Интерфейс WAN».
Mercusys
Откройте меню «Расширенные настройки», перейдите в пункт «Настройки WAN».
Настройка на компьютере
Поменять MTU в Windows 7, 10 можно за несколько минут.
Пошагово процесс выглядит так:
- Определите текущую величину МТУ. Запустите командную строку. Введите команду «netsh interface ipv4 show subinterfaces». На экране появится таблица, в которой видно, что значение параметра 1500.
- Установите новое значение максимального размера передаваемых пакетов. Для этого введите команду «netsh interface ipv4 set subinterface “Ethernet” mtu=1300 store=persistent», где 1300 – новая величина передаваемого блока данных.
- Проверить ввод новых настроек. Необходимо снова ввести команду «netsh interface ipv4 show subinterfaces». Проверка считается успешной, если значение изменилось на 1300. Если значение осталось прежним, то снова введите команду из пункта 2.
После сохранения этих настроек с компьютера будут отправляться пакеты, максимальный размер которых ограничен на IP-уровне 1300 байтами. Но на MAC-уровне их величина будет равна 1314 байт. Отправка пакетов данных большего размера осуществляться не будет.
В ОС семейства Linux тоже можно изменить МТУ. Для этого запустите консоль комбинацией Ctrl+Alt+F1.
Дальнейший порядок действий:
- Определите величину МТУ с помощью команды ip link.
- Установите новое значение максимального передаваемого блока данных с помощью команды «ip link set dev eth0 mtu 1200», где 1200 – нужный размер МТУ.
С помощью команды происходит временная замена значения максимальной величины передаваемых пакетов на 1200. После перезагрузки восстановится значение по умолчанию. Для того, чтобы сделать новую величину постоянной, отредактируйте файл /etc/network/interfaces. К описанию нужного интерфейса (eth0) добавьте отдельной строкой mtu 1200.
После сохранения настроек выполните команду ifdown $eth0 && ifup $eth0, где eth0 – наименование интерфейса.
Что будет, если установить некорректное значение
Если на маршрутизаторе поменять значение МТУ на некорректное, возникнут проблемы с интернетом. При маленьком размере пакетов во время загрузки некоторых сайтов будут появляться ошибки, увеличится пинг. Установить значение МТУ больше стандартного не позволит прошивка роутера. Ограничение на максимальный размер пакета данных есть во всех современных модемах и маршрутизаторах.
Если пользователь все-таки сможет установить большой размер параметра, интернет работать не будет.
Обновлено 08.11.2020
Всем привет! Сегодня хочу рассказать как изменить MTU в Windows. Напомню MTU — Maximum transmission unit (MTU) — это максимальный объём данных, который может быть передан протоколом за одну итерацию. К примеру, Ethernet MTU равняется 1500, что означает, что максимальный объём данных, переносимый Ethernet фреймом не может превышать 1500 байт. Очень часто рядовым пользователям приходится его менять, когда необходимо раздать свой интернет
У каждого провайдера или сетевого устройства, данное значение может быть свое. например 1492 очень часто встречается на роутерах Dlink, и если устройству на устройство будет например приходить пакет 1500 байт, а у него мту настроено 1492, то часть пакетов будут приходить битые, глюки могут выражаться, например у вас не полностью будут отображаться интерфейс сайта, что то загрузилось, а что то нет, первый признак, проверить Maximum transmission unit.
Итак посмотрим какое значение mtu у гугла, откроем командную строку и вводим следующую команду.
где, 1472=1500(стандартное значение для Ethernet) — 28 (значение заголовка, которое не учитывается)
Как изменить значение MTU в Windows 10, Windows 8.1, Windows 7-01
И смотрим ответ, если ответ получен без потери пакетов, то увеличиваем значение, если выдаст «Требуется фрагментация пакета, но установлен запрещающий флаг.», значит уменьшаем и так, пока не получим крайнее верхнее значение пакета, которое проходит до нашего сервера. У меня получилось 1500 (1472+28). Значит дальше я и буду его устанавливать в качестве значения MTU
Далее, вводим команду:
netsh interface ipv4 show subinterfaces
Она покажет MTU для всех сетевых подключений. Нам необходимо узнать как называется интерфейс основного сетевого подключения. Посмотреть названия можно командой
Как изменить значение 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 для сетевых подключений:
netsh int tcp set global autotuninglevel=disabled
Чтобы включить автоматическую настройку обратно, нужно заменить disabled на normal
Как изменить значение MTU в Windows 10, Windows 8.1, Windows 7-07
После этого значение mtu будет такое как вам нужно. Вот мы с вами и разобрали как изменить mtu в Windows. Так что значение mtu теперь для вас не секрет.
Как сменить MTU через реестр
Для тех, кто не любит командную строку, есть PowerShell и реестр. В реестре Windows есть ветка:
HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControl 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 идем по пути:
HKEY_LOCAL_MACHINESYSTEMCurrentControlSet ServicesTcpipParametersInterfaces
Среди интерфейсов находим нужный, можно удостовериться, что у него правильный IP-адрес. Найдите ключ MTU, если его нет, то нужно создать REG_DWORD с нужным значением.
Теперь как не заморачиваться с поиском GUID сетевой карты. Откройте PowerShell ISE и запустите мой скрипт:
$aGUID_SET = @(Get-ItemProperty «HKLM:SYSTEMCurrentControlSetservicesTcpipParametersInterfaces*» | select -ExpandProperty pschildname)
Get-ItemProperty «HKLM:SYSTEMCurrentControlSetControlClass{4D36E972-E325-11CE-BFC1-08002BE10318}*» -exclude «Properties» |
Where-Object {$aGUID_SET.Contains($_.NetCfgInstanceId)} |
ForEach-Object {
«»
$_.DriverDesc
$_.NetCfgInstanceId
}
Или просто если нужно вывести все GUID из нужной ветки:
Get-ItemProperty «HKLM:SYSTEMCurrentControlSetservicesTcpipParametersInterfaces*» | select -ExpandProperty pschildname
На этом все, с вами был Иван Семин. Материал сайта pyatilistnik.org
Содержание
- Что такое MTU в настройках роутера
- MTU в роутере что это
- Какой MTU поставить на роутере
- Как поменять MTU на роутере
- Настройка MTU на компьютере
- Автоматическая настройка — PMTU discovery
- Как настроить размер mtu
- Как сменить MTU через реестр
- Изменение параметров размера максимального блока передачи по умолчанию (MTU) для подключений PPP или vpn-подключений.
- Сводка
- Изменение параметров MTU для подключений PPP
- Изменение параметров MTU для VPN-подключений
- Ссылки
Что такое MTU в настройках роутера
Когда постоянно происходят сбои при подключении к интернету, многие идут на решительные меры. Они меняют роутер, меняют провайдера. Одна из причин возможных неполадок – не корректно выставленное значение MTU. Давайте разберемся, что это такое и как его правильно выставить.
MTU в роутере что это
Значение MTU (Maximum Transmission Unit) указывает, какого максимального размера пакеты отправляет устройство. Измеряется в байтах. То есть, если на роутер пришел блок данных большего размера, то он его нарежет на несколько пакетов (фрагментирует). Эти пакеты будут идти по сети, и если встретится на их пути маршрутизатор, который посчитает их слишком большими, он тоже их нарежет. Когда они достигнут последнего маршрутизатора, он, в свою очередь, перед отправкой на компьютер получателя, будет из фрагментированных пакетов собирать в исходные.
Все эти манипуляции по нарезке и сборке пакетов трудоемки. Соответственно, желательно выставлять оптимальное значение MTU на роутере.
Так как данные в каждом пакете оборачиваются служебными заголовками, то чем более длинные пакеты используются, тем меньше затрат на заголовки. В связи с этим желательно выставлять максимальный размер MTU, при котором пакеты не будут нарезаться на последующих узлах сети.
Какой MTU поставить на роутере
Самый простой способ, это обратиться в службу поддержки провайдера (написать письмо, позвонить). Скорее всего, они подскажут актуальное значение. Но через некоторое время, провайдер может все переконфигурировать. Хотя это случается достаточно редко, но если вдруг начали возникать сбои, вполне вероятно, что следует уточнить правильность выставленного MTU.
Второй вариант, это найти оптимальный размер с помощью команды ping, отправляя пакеты, в которых установлено, что их нельзя фрагментировать. Пинговать следует удаленный ресурс, например, сайт или сервер провайдера.
Можно так же проверить наиболее посещаемые ресурсы в интернете: игровые сервера, сервера с которых смотрите фильмы, используемые IP телефоном.
Пример команды «ping -f -l 1472 yandex.ru», здесь:
- 1472 – это количество отправляемых байт данных. Следует учитывать, что помимо данных, будет отправлен еще и заголовок, который составляет 28 байт (IP заголовок 20 + ICMP заголовок 8 = 28). Следовательно, в итоге размер пакета будет составлять 1472+28=1500 (байт), стандартный размер максимального стандартного Ethernet пакета. Есть правда пакеты большего размера, называемые jumbo-кадрами.
- yandex.ru – это доменное имя сервера, на который будем отправлять команды, его можно поменять на IP адрес сервера провайдера. Можно поэкспериментировать с разными IP-адресами.
В итоге, выполнив такую команду, мы определим, требуется ли фрагментация пакета для доставки его к получателю.
Запускаем командную строку (это классическое приложение Windows, найти его можно, например, в поиске набрав «Командная строка»). И выполняем команды.
Здесь значении данных 997 байт, размер пакета 997+28=1025 байт, пакет не может быть доставлен без фрагментации.
Здесь значении данных 996 байт, размер пакета 996+28=1024 байт, пакет доходит до получателя без фрагментации.
Таким образом, изменяя размер отправляемого блока данных, мы можем вычислить DMTU – максимальный размер блока данных, который доставляется без фрагментации. Например, если команда ping проходит без фрагментации со значением 996. При попытке отправить команду со значением 997 получаем ответ: «Требуется фрагментация пакета, но установлен запрещающий флаг». Тогда мы рассчитываем параметр DMTU следующим образом: 996 байт данных + 28 байт IP заголовка = 1024 байта. Максимальный размер блока данных, который не будет фрагментирован, составит 1024 байта. Это значение и следует задать на маршрутизаторе, как размер MTU.
Как поменять MTU на роутере
Подключаемся к маршрутизатору через интернет браузер. Выставляем новый размер MTU. Затем сохраняем настройки.
Например, при использовании TP-Link, заходим в пункт «Сеть», там подпункт «WAN». Не забываем нажать после этого кнопку «Сохранить».
После изменения значений, можно проверить, насколько изменилась скорость скачивания файлов большого размера из интернета.
Настройка MTU на компьютере
Для увеличения производительности, чтобы на маршрутизатор не приходили слишком большие пакеты, возможна настройка MTU на оборудовании. В частности, можно выставить размер MTU на персональном компьютере, требуется воспользоваться командной строкой, запущенной от имени администратора:
- Определим текущее значение MTU. В командной строке выполнить команду «netsh interface ipv4 show subinterfaces». В строке ответа напротив Ethernet видим, что текущий параметр MTU, составляет 1500
- Установим новое значение. В командной строке следует выполнить команду, например, если необходимо заменить на 1024, то она будет выглядеть следующим образом: «netsh interface ipv4 set subinterface “Ethernet” mtu=1024 store=persistent»
- Проверяем, что новое значение установилось
После данной установки на компьютере, с него будут отправляться пакеты, у которых максимальный размер на уровне IP будет 1024 байта, но на MAC уровне максимальный отправляемый блок данных будет размером 1038 байт (14 из них для заголовка MAC).
Большего размера пакеты не будут отправляться. То есть, если в настройках роутера рассчитан и правильно выставлен MTU 1024, то точно такой же MTU следует задать в настройках подключенного к нему компьютера.
Автоматическая настройка — PMTU discovery
Существуют режимы работы некоторых устройств, когда размер MTU уточняется во время подключения к удаленному серверу (PMTU discovery). Алгоритм такой же, как и тот, которым пользовались при настройке MTU на роутере. В начале работы устройство отправляет блоки данных разного размера, пытаясь определить максимальный размер пакета, который дойдет без фрагментации.
В этом алгоритме есть одна проблема, называемая «MTU Discovery Black Hole». Она возникает в случае, когда администраторы сетей, чтобы избежать возможных атак на их сервера, запрещая маршрутизаторам передачу ICMP, в частности которые используются при команде ping.
Так конечно не корректно действовать. Устройство, не получив ответа на запрос не может продолжить работать.
Источник
Как настроить размер mtu
Всем привет! Сегодня хочу рассказать как изменить MTU в Windows. Напомню MTU — Maximum transmission unit (MTU) — это максимальный объём данных, который может быть передан протоколом за одну итерацию. К примеру, Ethernet MTU равняется 1500, что означает, что максимальный объём данных, переносимый Ethernet фреймом не может превышать 1500 байт. Очень часто рядовым пользователям приходится его менять, когда необходимо раздать свой интернет
У каждого провайдера или сетевого устройства, данное значение может быть свое. например 1492 очень часто встречается на роутерах Dlink, и если устройству на устройство будет например приходить пакет 1500 байт, а у него мту настроено 1492, то часть пакетов будут приходить битые, глюки могут выражаться, например у вас не полностью будут отображаться интерфейс сайта, что то загрузилось, а что то нет, первый признак, проверить Maximum transmission unit.
Итак посмотрим какое значение mtu у гугла, откроем командную строку и вводим следующую команду.
Как изменить значение MTU в Windows 10, Windows 8.1, Windows 7-01
И смотрим ответ, если ответ получен без потери пакетов, то увеличиваем значение, если выдаст «Требуется фрагментация пакета, но установлен запрещающий флаг.», значит уменьшаем и так, пока не получим крайнее верхнее значение пакета, которое проходит до нашего сервера. У меня получилось 1500 (1472+28). Значит дальше я и буду его устанавливать в качестве значения MTU
Далее, вводим команду:
Она покажет MTU для всех сетевых подключений. Нам необходимо узнать как называется интерфейс основного сетевого подключения. Посмотреть названия можно командой
Как изменить значение MTU в Windows 10, Windows 8.1, Windows 7-04
либо в центре управления сетями.
Как изменить значение MTU в Windows 10, Windows 8.1, Windows 7-04
У меня это Ethernet, у вас же смотрите по обстановке. Но в большинстве случаев он будет называться так же.
Далее, вводим следующую команду (для ее выполнения требуется чтобы командная строка была запущена от имени администратора)
Где вместо Ethernet пишем название своего интерфейса, а в значение MTU пишем полученное на первом шаге инструкции
Как изменить значение MTU в Windows 10, Windows 8.1, Windows 7-06
как отключить автоматическую настройку значения MTU для сетевых подключений:
Чтобы включить автоматическую настройку обратно, нужно заменить disabled на normal
Как изменить значение MTU в Windows 10, Windows 8.1, Windows 7-07
После этого значение mtu будет такое как вам нужно. Вот мы с вами и разобрали как изменить mtu в Windows. Так что значение mtu теперь для вас не секрет.
Как сменить MTU через реестр
Для тех, кто не любит командную строку, есть PowerShell и реестр. В реестре Windows есть ветка:
Класс содержит информацию, о всех ваших сетевых картах, а именно драйверах, их версиях и GUID самой карты. GUID потребуется для определения сетевой карты в другой ветке реестра, но не переживайте я покажу более быстрый метод определения и сопоставления GUID и сетевой карты через PowerShell. На что в данном разделе нужно обратить внимание:
- Папки 0000, 0001 и так далее — это папки перечисляющие ваши сетевые интерфейсы в Windows, тут вам нужно будет найти нужный по параметрам указанными ниже
- DriverDesc — Описание драйвера, по сути вы увидите тут производителя вашей сетевой карты, оно поможет вам определить правильный адаптер
- NetCfgInstanceId — это GUID карточки
Теперь зная GUID идем по пути:
Среди интерфейсов находим нужный, можно удостовериться, что у него правильный IP-адрес. Найдите ключ MTU, если его нет, то нужно создать REG_DWORD с нужным значением.
Теперь как не заморачиваться с поиском GUID сетевой карты. Откройте PowerShell ISE и запустите мой скрипт:
$aGUID_SET = @(Get-ItemProperty «HKLM:SYSTEMCurrentControlSetservicesTcpipParametersInterfaces*» | select -ExpandProperty pschildname)
Get-ItemProperty «HKLM:SYSTEMCurrentControlSetControlClass<4d36e972-e325-11ce-bfc1-08002be10318>*» -exclude «Properties» |
Where-Object <$aGUID_SET.Contains($_.NetCfgInstanceId)>|
ForEach-Object <
«»
$_.DriverDesc
$_.NetCfgInstanceId
>
Или просто если нужно вывести все GUID из нужной ветки:
Источник
Изменение параметров размера максимального блока передачи по умолчанию (MTU) для подключений PPP или vpn-подключений.
В этой статье описывается, как изменить реестр, чтобы изменить параметры максимального размера блока передачи (MTU) для подключений к протоколу точки к точке или для подключений виртуальной частной сети (VPN).
Применяется к: Windows 10 — все выпуски, Windows Server 2012 R2
Исходный номер КБ: 826159
Сводка
Windows Сервер 2003, Windows 2000 и Windows XP используют фиксированный размер MTU в 1500 bytes для всех подключений PPP и используют фиксированный размер MTU 1400 bytes для всех подключений VPN. Это параметр по умолчанию для клиентов PPP, для VPN-клиентов, для серверов PPP или для VPN-серверов, на которые запущены маршрутная маршрутная сеть и удаленный доступ.
Подключения PPP — это подключения, такие как подключения модема, подключения к единой цифровой сети служб (ISDN) или прямые кабельные подключения по серийному или параллельному кабелю null. VPN-подключения — это подключения протокола туннелинга точки к точке (PPTP) или протокол туннелинга уровня 2 (L2TP).
Используйте методы в этой статье для изменения реестра для изменения параметров размера MTU. Если после изменения параметров размера MTU возникли какие-либо проблемы или проблемы, связанные с производительностью, удалите добавленные ключи реестра.
Изменение параметров MTU для подключений PPP
Чтобы изменить параметры MTU для подключений PPP, добавьте значение DWORD ProtocolType, значение DWORD PPPProtocolType и значение DWORD ProtocolMTU в следующий ключ реестра:
HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesNdiswanParametersProtocols
Для этого выполните следующие действия.
В этот раздел, описание метода или задачи включены действия, содержащие указания по изменению параметров реестра. Однако неправильное изменение параметров реестра может привести к возникновению серьезных проблем. Поэтому следует в точности выполнять приведенные инструкции. Для дополнительной защиты создайте резервную копию реестра, прежде чем редактировать его. Так вы сможете восстановить реестр, если возникнет проблема. Дополнительные сведения о том, как создать и восстановить реестр, см. в дополнительных сведениях о том, как создать и восстановить реестр в окне.
Нажмите кнопку Пуск, выберите команду Выполнить, в поле Открыть введите regedit и нажмите кнопку ОК.
Найдите и выберите следующий подраздел реестра:
HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesNdisWanParameters
Добавление подкайки Протоколов (если она еще не существует):
- В меню Правка наведите указатель мыши на Создать, затем щелкните Раздел реестра.
- Введите протоколы и нажмите кнопку ENTER.
Добавьте подкайку 0 (ноль) в подкайку Протоколы:
- Щелкните подмыв протоколов, созданный в шаге 3.
- В меню Правка наведите указатель мыши на Создать, затем щелкните Раздел реестра.
- Введите 0 (ноль) и нажмите кнопку ENTER.
Щелкните подкайку 0, созданную на шаге 4.
В меню Правка выберите пункт Создать, а затем Параметр DWORD.
В поле Значение данных введите ProtocolType и нажмите кнопку ОК.
В меню Правка щелкните Изменить.
В поле Значение данных, тип 800, убедитесь, что Hexadecimal выбран в базе, а затем нажмите кнопку ОК.
В меню Правка выберите пункт Создать, а затем Параметр DWORD.
Введите PPPProtocolType и нажмите кнопку ENTER.
В меню Правка щелкните Изменить.
В поле Значение данных, тип 21, убедитесь, что Hexadecimal выбран в базе, а затем нажмите кнопку ОК.
В меню Правка выберите пункт Создать, а затем Параметр DWORD.
Введите протоколMTU и нажмите кнопку ENTER.
В меню Правка щелкните Изменить.
В базовой статье щелкните Десятичной, введите нужный размер MTU в поле Данных Value, а затем нажмите кнопку ОК.
Закройте редактор реестра.
Restart your computer.
Изменение параметров MTU для VPN-подключений
Чтобы изменить параметры MTU для VPN-подключений, добавьте значение DWORD ProtocolType, значение DWORD PPPProtocolType и значение DWORD TunnelMTU в следующий ключ реестра:
HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesNdiswanParametersProtocols
Для этого выполните следующие действия.
В этот раздел, описание метода или задачи включены действия, содержащие указания по изменению параметров реестра. Однако неправильное изменение параметров реестра может привести к возникновению серьезных проблем. Поэтому следует в точности выполнять приведенные инструкции. Для дополнительной защиты создайте резервную копию реестра, прежде чем редактировать его. Так вы сможете восстановить реестр, если возникнет проблема. Дополнительные сведения о том, как создать и восстановить реестр, см. в этой информации, как создать и восстановить реестр в Windows.
Нажмите кнопку Пуск, выберите команду Выполнить, в поле Открыть введите regedit и нажмите кнопку ОК.
Найдите и выберите следующий подраздел реестра:
HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesNdisWanParameters
Добавление подкайки Протоколов (если она еще не существует):
- В меню Правка наведите указатель мыши на Создать, затем щелкните Раздел реестра.
- Введите протоколы и нажмите кнопку ENTER.
Добавьте подкайку 0 (ноль) в подкайку Протоколы:
- Щелкните под ключ Протоколы, созданный в шаге 3.
- В меню Правка наведите указатель мыши на Создать, затем щелкните Раздел реестра.
- Введите (ноль) и нажмите кнопку ENTER.
Щелкните подкайку 0, созданную на шаге 4.
В меню Правка выберите пункт Создать, а затем Параметр DWORD.
В поле Значение данных введите ProtocolType и нажмите кнопку ОК.
В меню Правка щелкните Изменить.
В поле Значение данных, тип 800, убедитесь, что Hexadecimal выбран в базе, а затем нажмите кнопку ОК.
В меню Правка выберите пункт Создать, а затем Параметр DWORD.
Введите PPPProtocolType и нажмите кнопку ENTER.
В меню Правка щелкните Изменить.
В поле Значение данных, тип 21, убедитесь, что Hexadecimal выбран в базе, а затем нажмите кнопку ОК.
В меню Правка выберите пункт Создать, а затем Параметр DWORD.
Введите tunnelMTU и нажмите кнопку ENTER.
В меню Правка щелкните Изменить.
В базовой статье щелкните Десятичной, введите нужный размер MTU в поле Данных Value, а затем нажмите кнопку ОК.
Закройте редактор реестра.
Restart your computer.
Ссылки
Дополнительные сведения о PPP см. в разделе Запрос на комментарии (RFC) 1548. Для этого см. rFC 1548.
Источник
Содержание
- Как узнать значение MTU
- Windows
- Linux
- ip address
- ifconfig
- FreeBSD
- Провайдера
- Смена MTU на Windows через командную строку
- Зачем уменьшать MTU
- Уменьшаем MTU с помощью командной строки
- Определить минимальное значение MTU
- Что такое MTU? Как найти оптимальный размер MTU для домашней сети?
- MTU – что это?
- Рассчитываем значение MTU
- Устанавливаем значение MTU
- Как найти правильный размер MTU для моей сети.
- Узнать значение и поменять MTU в Linux
Как узнать значение 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):
* 1472 будет соответствовать MTU — 1500, так как к пакету мы должны еще прибавить 28 (заголовок).
Наша задача — подобрать значение пакета, при котором будет идти пинг:
Ответ от 90.156.242.197: число байт=1472 время=13мс TTL=56
Ответ от 90.156.242.197: число байт=1472 время=12мс TTL=56
Требуется фрагментация пакета, но установлен запрещающий флаг.
Требуется фрагментация пакета, но установлен запрещающий флаг.
Находим значение, которое стоит на границе с ошибкой и прибавляем к нему заголовок пакета — 28. Так мы получаем наше оптимальное MTU.
На данный момент большинство Интернет провайдеров предоставляет услуги связи с фрагментом в 1500. Старые подключения от Ростелеком или подключения на основе PPPoE могут работать на меньших значениях.
Источник
Смена MTU на Windows через командную строку
Меняем MTU на сервере Windows с помощью командной строки. На тестовом сервере операционная система Windows Server 2016.
MTU (Maximum Transmission Unit) — максимальный размер полезного блока данных одного пакета. Если размер блока превышает MTU, то он может быть передан протоколом с использованием фрагментации.
Основные значения MTU в байтах:
Зачем уменьшать MTU
Иногда бывает полезно уменьшить MTU на компьютере, чтобы ускорить скорость работы по сети. Классический случай, когда дома стоит роутер и на нём указан MTU 1480. Если на домашнем компьютере указано значение MTU 1500, то большие пакеты при передачи данных могут фрагментироваться. Тормозит потоковое видео или аудио, к примеру.
Уменьшаем MTU с помощью командной строки
Командная строка запущена под администратором.
Посмотреть текущее значение MTU:
У меня на интерфейсе Ethernet0 указано MTU 1500.
Установить значение MTU 1452 на интерфейсе Ethernet0:
Перезагружаем компьютер. Всё.
Сброс MTU на значение по умолчанию:
Определить минимальное значение MTU
Вычислить минимальное значение MTU между компьютером и узлом сети можно с помощью команды ping.
Если пинг не проходит, то уменьшаем размер пакета.
У меня 1500 не проходит, а 1400 проходит. Истина где-то посередине. Методом научного пинга находим максимальный размер пакета, который проходит без фрагментации.
У меня получилось 1372. Прибавляем 28 байт (8 байт ICMP заголовок и 20 байт IP). 1372+28=1400.
Источник
Что такое MTU? Как найти оптимальный размер MTU для домашней сети?
Информация в компьютерных сетях передается в виде небольших сформированных блоков данных (иначе говоря, пакетов). Каждый пакет помимо пересылаемой информации содержит еще и служебные данные, составляющие так называемый заголовок (header) пакета. Эти служебные данные нужны для определения целостности данных, используемой версии сетевых протоколов и т.д. При этом размер полезного блока данных ограничивается определенным количеством байт. Делается это для того, чтобы снизить вероятность потерь информации и уменьшить время повторной пересылки пакета в случае появления проблем с подключением.
MTU – что это?
MTU (от англ. Maximum transmission unit) – это максимальный объем данных, передаваемый по сети без дальнейшего фрагментирования (одним пакетом). Любая информация, объем которой превышает значение MTU, автоматически разбивается на небольшие блоки данных перед отправкой по сети. Возможные значения MTU зависят от используемого типа подключения к сети. Так, при использовании PPoE (в основном с ADSL и подобными технологиями) максимальное значение параметра MTU составляет 1492 байта (стандартные 1500 байт для Ethernet минус восемь байт заголовков), а при использовании Wi-Fi MTU может достигать 2304 байт.
В современных ОС оптимальное значение MTU зачастую вычисляется самой системой или берется из настроек маршрутизатора (обычно значение MTU задается в разделе WAN сетевых настроек устройства). Если проблем с доступом к Интернету не наблюдается, значение MTU лучше не менять. Однако, если возникли проблемы со связью и вы предполагаете, что они могут быть связаны с фрагментацией сетевых пакетов, попробуйте изменить значение MTU.
Сделать это можно не только через изменение соответствующей настройки маршрутизатора, но и средствами операционной системы. Перед тем как менять MTU, необходимо рассчитать оптимальное значение этого параметра. Расскажем, как это делается.
Рассчитываем значение MTU
Найти оптимальное значение MTU можно с помощью старой-доброй команды ping. Предположим, что мы определяем значение этого параметра для проводного подключения. Открываем командную строку Windows и пишем такую команду:
Запомните полученное значение и прибавьте к нему 28 байт (длина служебных заголовков). Получившееся значение – это оптимальное (или близкое к оптимальному) значение MTU для вашей сети.
Устанавливаем значение MTU
Теперь вы знаете, какое значение MTU можно использовать в вашей домашней сети. Укажем операционной системе, что необходимо использовать именно его (дальнейшие примеры иллюстрируют настройку сети IPv4).
В Windows открываем командную строку с правами администратора и выполняем команду:
netsh interface ipv4 show subinterfaces
На экране появится список всех сетевых подключений, их названия и текущий размер MTU. Запоминаем название нужного нам подключения и пишем следующую команду:
netsh interface ipv4 set subinterface Ethernet mtu=1450 store=persistent
Здесь Ethernet – название интерфейса (может быть другим), 1450 – выбранный размер MTU. Если название состоит из нескольких слов, его надо указывать в кавычках.
Для отключения автоматической настройки MTU можно выполнить команду:
netsh int tcp set global autotuninglevel=disabled
Включить автоматическое определение MTU можно той же командой с параметром autotuninglevel=normal.
Если необходимо сбросить настройки к исходному состоянию, выполняем команду:
В Linux настройка MTU осуществляется с помощью команды ip. Посмотрим текущее значение MTU:
А далее установим желаемое значение:
Здесь eth0 – название интерфейса, оно может быть другим на вашем компьютере. Для того чтобы выбранное значение MTU использовалось постоянно при каждом входе в систему, необходимо прописать значение в файл /etc/network/interfaces, либо создать модуль для systemd. Рекомендуем обратиться к документации используемого дистрибутива для получения более подробной информации.
В macOS посмотреть размер MTU для подключения en0, а затем установить значение параметра можно в терминале:
Вы можете указать размер MTU и в настройках маршрутизатора. Во многих моделях роутеров соответствующая настройка находится в разделе WAN. Более подробную информацию можно получить на сайтах производителей сетевого оборудования.
При ручной настройке MTU учитывайте, что слишком маленький размер блока данных устанавливать не рекомендуется, чтобы не создавать дополнительную нагрузку на процессор маршрутизатора. Также напомним еще раз: если ваше сетевое подключение работает нормально, значение MTU менять не стоит. Параметры, установленные провайдером или производителем маршрутизатора, вполне подходят для подавляющего большинства пользователей.
Источник
Как найти правильный размер MTU для моей сети.
Краткая информация
Один из простых и наиболее точных способов определения оптимального размера MTU – MTU пинг тест. Вы просто отправляете запросы и постепенно снижаете размер пакета до тех пор, пока пакет больше не фрагментируется. Кроме того, этот простой тест подходит для точного тестирования конечных точек, пользователи могут найти более маленький размер MTU более удобным для себя. Внимание: При соединении PPPoE размер MTU должен быть 1492 (или ниже). Более подробная информация о влиянии MTU можно найти здесь.
Внимание:
Определение правильного MTU
Для определения правильного размера MTU для вашей конфигурации, вам необходимо использовать простой MTU пинг тест. Вы отправляете запросы и постепенно снижаете размер пакета до тех пор, пока пакет больше не фрагментируется. Выполните следующие действия :
Шаг 1
Шаг 2
Шаг 3
Уменьшите размер тестового пакета (10 или 12 байт), отправьте запрос опять. Имейте в виду, что пакет должен быть снова фрагментирован (Рисунок 2)
Шаг 4
Снова уменьшите размер тестового пакета, отправьте запрос, итак до тех пор, пока размер отправляемого пакета не нужно будет фрагментировать (Рисунок 3)
Шаг 5
Как только вы отправите пакет, который не будет фрагментирован, увеличьте немного размер пакета и отправьте запрос заново, вы таким образом сможете найти максимальный размер пакеты, который не будет фрагментирован.
Шаг 6
1440 – максимальный размер пакета в пинг-тесте
+ 28 – заголовки IP и ICMP
1468 – оптимальный размер вашего MTU
Проблемы с соединением к VPN или мои приложения зависают, а время истекает.
Вы можете подсоединиться к VPN серверу и зарегистрироваться, но ничего не происходит и приложения зависают, время выходит, или проблема с загрузкой.
— Вы можете подсоединиться и зарегистрироваться, но приложения зависают, время выходит, или проблема с загрузкой. Ваш MTU (максимального размера блока (в байтах), который может быть передан) указан неправильно.
Источник
Узнать значение и поменять MTU в Linux
Узнать значение MTU для всех интерфейсов можно выполнив в консоли команду ip link
1: lo: mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default qlen 1
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
2: eth0:
mtu 1500 qdisc pfifo_fast state UP mode DEFAULT group default qlen 1000
link/ether 54:52:00:91:96:85 brd ff:ff:ff:ff:ff:ff
Чаще всего встречается 1500 — это значение по умолчанию для Ethernet интерфейсов.
Поменять MTU на сервере с Debian можно так:
ip link set dev eth0 mtu 1400
При этом начинает использоваться значение 1400, после перезагрузки эти изменения не сохранятся.
Чтобы сделать их постоянными нужно отредактировать файл /etc/network/interfaces
Для CentOS это скрипты /etc/sysconfig/network-scripts/*, для других систем иначе — для Debian также возможны варианты, но чаще всего это /etc/network/interfaces
К нужному интерфейсу достаточно дописать mtu 1400 отдельной строкой
IFACE при этом заменить именем интерфейса, таким как eth0
Если настройки сети выдаются DHCP, то секция примет такой вид:
Для сервера, к которому нет доступа по SSH MTU можно узнать экспериментальным путем. Значение может потребоваться при поиске сетевых неполадок.
Это делается за счет опции -M do утилиты ping.
ICMP пакеты при этом будут отправляться с заданным MTU, из ответа будет видно реальное значение.
PING ya.ru (87.250.250.242) 1572(1600) bytes of data.
ping: local error: Message too long, mtu=1500
— ya.ru ping statistics —
1 packets transmitted, 0 received, +1 errors, 100% packet loss, time 0ms
28 байт вычитается, поскольку они отданы под хэдеры IP и ICMP.
При установке 1500 байт PING проходит успешно.
PING ya.ru (87.250.250.242) 1472(1500) bytes of data.
1480 bytes from ya.ru (87.250.250.242): icmp_seq=1 ttl=57 time=32.0 ms
— ya.ru ping statistics —
1 packets transmitted, 1 received, 0% packet loss, time 0ms
rtt min/avg/max/mdev = 32.040/32.040/32.040/0.000 ms
Читайте про iface inet — директиву, которую можно увидеть в /etc/network/interfaces
Источник
Добрый день. Сегодня не совсем обычная статья, так как она не является повседневной и не подойдет для любого пользователя. Более того, я крайне не рекомендую лезть в данные параметры людям, которые слабо в техническом плане. Речь идет о 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 пишем полученное на первом шаге инструкции.
- Ну и напоследок отключим автоматическую настройку значения MTU для сетевых подключений: netsh int tcp set global autotuninglevel=disabled.
- Чтобы включить автоматическую настройку обратно, нужно заменить disabled на normal.
На этом всё. Надеюсь эта статья оказалась вам полезной, нажмите одну из кнопок ниже, чтобы рассказать о ней друзьям. Также подпишитесь на обновления сайта, введя свой e-mail в поле справа или подписавшись на группу в Вконтакте.
Спасибо за внимание!
Посещаем страницу moto.skesov.ru
Материал сайта Skesov.ru
- Распечатать
Оцените статью:
- 5
- 4
- 3
- 2
- 1
(23 голоса, среднее: 4.6 из 5)
Поделитесь с друзьями!
Как вручную установить размер MTU в Windows
Содержание
- 1 Немного теории
- 2 Ручной метод изменения MTU в Windows
- 3 Меняем MTU в Windows с помощью TCP Optimizer
- 4 Последовательность действий
Очень редко, но такие моменты наступают, когда необходимо изменить стандартное значение размера пакета.
Если у Вас FTP-клиент не догружает файлы или сайты в интернете открываются не всегда одинаково быстро, то, возможно, настала пора обратить внимание на установленные значения MTU.
Немного теории
Что такое MTU? Вот как рассказывает нам Wikipedia. Многие задают вопрос не что это такое, а сколько ставить? Однозначного ответа быть не может, так как факторов от которых зависит это значение, очень много: начиная от серверов, где происходит размещение сайтов, провайдеровского сетевого оборудования, стоящего между сайтами и вашим компьютером и от качества линии, соединяющей Вас с глобальной сетью.
Вообще в правильному ваше значение MTU должно быть точно таким же, как и на стороне вашего роутер, маршрутизатора провайдера или куда вы там подключаетесь. Но это не гарантирует Вам хорошую работу. На моем домашнем роутере, к примеру, а также на всех компьютерах домашней сети, установлено значение 1490. Это число я получил экспериментальным методом (если бы я тогда встретил утилиту TCP Optimizer, умеющую определять подходящий MTU, было бы в разы проще). У меня плохо отправлялись файлы на удаленный FTP-сервер, а при этом значении всё отлично работает. Хотя стоит заметить, что значение у провайдера стоит стандартное – 1500.
В Windows MTU можно поменять двумя способами: простым и сложным. Простой способ заключается в установке стороннего программного обеспечения, а сложный – в изменении MTU «родными» средствами.
Начнем с сложного, ибо он самый правильный.
Ручной метод изменения MTU в Windows
Все делается с помощью консоли. Вообще все хорошие и удобные вещи делаются только через консоль. Это стоит запомнить. 😉
- Чтобы было проще работать с сетевыми соединениями, их нужно переименовать во что-то короткое. Вместо «Локальное подключение к сети» в LAN, а «Беспроводное подключение к сети» в WAN.
- Запускаем системную консоль Windows с правами администратора:
cmd.exe
- Для того, чтобы посмотреть текущие значения MTU, вводим команду:
netsh interface ipv4 show subinterfaces
вывод будет примерно такой:
MTU Состояние определения носителя Вх. байт Исх. байт ------ --------------- --------- --------- ------------- 4294967295 1 0 0 Loopback 1500 1 83147897 2724203 LAN
В моем случае у меня только один интерфейс и это LAN со стандартным значением MTU 1500.
- Теперь вводим команду для того, чтобы изменить MTU для интерфейса LAN:
netsh interface ipv4 set subinterface "LAN" mtu=1490 store=persistent
Этой командой я указал новое значение 1490 для MTU.
- Для того, чтобы посмотреть результат нужно ввести повторно команду, которую вводили на шаге №3.
Меняем MTU в Windows с помощью TCP Optimizer
Для некоторых проще что-то делать используя графический интерфейс и в этом может помочь утилита TCP Optimizer. Вот, вроде как, ее официальный сайт. У нее достаточно много настроек и самое главное ее достоинство – она умеет определять максимальный пакет, с которым работает ваш компьютер.
Вот пару скринов:
Последовательность действий
Так вот, если вы попали на данную статью, я думаю вы уже решили что нужно попробовать его подкрутить. Теоретически, оптимизация данного параметра может помочь с решением проблем некорректной работы некоторых сайтов и сервисов, но опять же теоретически. Я же попробую объяснить, как это сделать средствами операционной системы.
- Итак, для начала открываем командную строку от имени администратора и вводим следующую команду: 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 пишем полученное на первом шаге инструкции.
- Ну и напоследок отключим автоматическую настройку значения MTU для сетевых подключений: netsh int tcp set global autotuninglevel=disabled.
- Чтобы включить автоматическую настройку обратно, нужно заменить disabled на normal.
На этом всё. Надеюсь эта статья оказалась вам полезной, нажмите одну из кнопок ниже, чтобы рассказать о ней друзьям. Также подпишитесь на обновления сайта, введя свой e-mail в поле справа или подписавшись на группу в Вконтакте.
Спасибо за внимание!
Посещаем страницу moto.skesov.ru
Материал сайта Skesov.ru
—>
How to change MTU size in Windows 10
I was doing some troubleshooting and wanted to change the MTU size. Here are the easy steps I took to do it in Windows 10.
- Open a command prompt as administrator. (Hit Windows start button, type CMD, right click on command prompt and run as administrator)
- type the command : netsh interface ipv4 show subinterfaces
- This should output your interfaces and current MTU size.
- Remember the interface name as you will need it to change the MTU size (For my example it is Ethernet).
- Type the following command and Substitute Ethernet for my interface name and a new MTU size of 1518.
- netsh interface ipv4 set subinterface “Ethernet” mtu=1518 store=persistent
- Done.
This also worked for me when changing it on my Windows 7 PC.
On a side note: If your looking to create windows 10 installation media, you can also do that from this link at Microsoft. ( I am just about to do it myself so thought I would post it.) Its always handy to have a Win 10 usb installation drive. Mine was quite old, so am going to update it with the latest version of Win 10.
Also here is a tip if your starting to see ad’s in your windows 10 start menu and want to remove them.
Используемые источники:
- https://adminway.ru/kak-v-windows-mtu-pomenyat
- https://skesov.ru/kak-vruchnuyu-izmenit-mtu-v-windows/
- https://myrandomtechblog.com/cryptomining/change-mtu-size-in-windows-10/
Оценка статьи:
(пока оценок нет)
Загрузка…
Похожие публикации