Как MTU, установленный на маршрутизаторе, влияет на устройства?

827
adamitj

Это больше вопрос для уточнения, чем запрос на решение. Я прочитал много вопросов и ответов, касающихся настроек MTU на маршрутизаторах и устройствах, но я не понимаю, что происходит с моей домашней установкой.

Мой Интернет-провайдер дает мне надежное 100 Мбит / с пассивное оптоволоконное соединение с Интернетом. У меня нет проблем с обычными сайтами и серверами, но мой корпоративный VPN (Cisco Any Connect) всегда давал мне тайм-ауты при доступе к сайтам компании в интрасети.

Простой тест пинг показал потери около 45% (очень высокий уровень потерь). Только при подключении к VPN.

Перед тем, как подключиться к основному маршрутизатору ISP (оптоволокну), у меня есть маршрутизатор Wifi, к которому мой компьютер подключен через порт локальной сети Ethernet, поэтому я использую 2 маршрутизатора в своей настройке.

 PC <--> WiFi Router (10.0.0.0/24) <--> ISP fiber router (192.168.1.0/24) <--> Internet 

После долгого поиска я начал настраивать MTU в своем интерфейсе Ethernet, подключенном к корпоративному VPN, с помощью следующих команд (мой компьютер работает под управлением Windows 10 Pro):

# Find the best MTU size without fragments ping www.google.com -f -l 1294  # List interfaces and MTU netsh interface ipv4 show interfaces  # List subinterfaces netsh int ipv4 show subinterface  # Change MTU for Ethernet Card netsh int ipv4 set subinterface "Ethernet" mtu=1294 store=persistent 

Как вы можете видеть, после многих испытаний я нашел оптимальное значение 1294. Фактически с 1464 года фрагментации не было, но сайты в интранете работали только тогда, когда я перешел на 1294.

На данный момент, установив 1294 на ПК, я могу без проблем получать доступ ко всем сайтам и соединениям в интрасети, без каких-либо пропаданий или тайм-аутов (коэффициент потери пинга падает до <5%).

Затем я вернул значение MTU моей сетевой карты Ethernet на 1500 (по умолчанию для Windows), а затем изменил значение MTU на моих 2 маршрутизаторах на 1294 и перезагрузил их, а также перезагрузил компьютер. Я пытался изменить только каждый из них за раз, но в конце концов менял оба.

Однако ... изменение значений MTU на маршрутизаторах не влияет на соединения с моим ПК. Мне нужно изменить MTU, чтобы карта Ethernet работала без ошибок при подключении к VPN.

Так и должно быть?

Кстати, мое интернет-соединение довольно крепкое. Тестирование пинга со многими сайтами вне VPN не дает мне абсолютно никаких потерь.

1
Какой именно у вас сетевой адаптер? harrymc 5 лет назад 0
@harrymc - это сетевой адаптер Intel (встроенный в моё устройство ASUS Z97M-PLUS). Это имеет какое-то значение? Я также проверил на своем Lenovo ThinkPad T-480 с другим адаптером Intel Gigabit Ethernet и по-прежнему одинаковое поведение на обоих компьютерах. Кабель сертифицирован CAT5e Furukawa. Wifi-маршрутизатор - это Intelbras R1200 (бразильский бренд, но очень хороший Wifi-маршрутизатор). Перед любым сомнением с моим WiFi-роутером я также проверил подключение Ethernet непосредственно к своему оптоволоконному роутеру, и все так же. adamitj 5 лет назад 0

1 ответ на вопрос

1
Andy

Проблема, вероятно, в том, что большие пакеты не работают в вашей корпоративной сети. Я никогда не слышал, чтобы это было проблемой ниже MTU 1500, но, тем не менее, похоже, что это проблема. То, что вы делаете с помощью команды ping, разбивает (фрагментирует) любой пакет размером более 1294 байт, чтобы они могли проходить по сети в виде пакетов меньшего размера. Пакеты должны быть собраны обратно в их первоначальный размер, обычно на машине, с которой вы разговариваете. Параметр MTU применяет это для всех пакетов.

Теперь VPN прозрачен для фрагментации. Если ваш маршрутизатор принудительно фрагментирует ваши VPN-пакеты, чтобы получить MTU в 1294 байта, то да, эти пакеты проходят через Интернет с максимальным размером 1294 байта. Проблема в том, что VPN-сервер внутри корпоративной сети соберет их обратно в полный размер и выложит их в виде полноразмерных пакетов. Таким образом, неисправная корпоративная сеть за пределами VPN-сервера видит пакеты размером> 1294 байта. Вам нужно применить свой MTU перед инкапсуляцией VPN. Таким образом, пакеты, покидающие VPN-сервер, также будут фрагментированы.

Поэтому у меня нет другого выбора, кроме как изменить настройки MTU моего ПК / ноутбука перед подключением к VPN. Я пытался найти способ сделать это прозрачным, изменяя на маршрутизаторах. adamitj 5 лет назад 0
Вы не можете использовать маршрутизатор для принудительного использования MTU для трафика внутри VPN-туннеля. Вы должны настроить MTU туннельного адаптера на своем клиентском ПК в настройках сети. Andy 5 лет назад 0

Похожие вопросы