Восстановление tcp ip windows xp

Обновлено: 03.07.2024

Иногда эксперименты с настройками сетевых карт, либо вирусы, черви и трояны, или же слишком агрессивные антивирусы повреждают настройки Winsock, что приводит к неадекватной работе сетевых компонентов в системе

Проблема: не работает сеть.

Причина:
Такое поведение наблюдается при повреждении разделов реестра, в которых хранится конфигурация Winsock. Что же такое Winsock? Если сказать в "двух словах", то Winsock это интерфейс, который упрощает разработку сетевых приложений под Windows. Всё что нам нужно знать, это то что Winsock представляет собой интерфейс между приложением и транспортным протоколом, выполняющим передачу данных.При взаимодействии клиент - сервер в сети каждого участника взаимодействия можно рассматривать как конечную точку. Сокет это вроде как и есть эта конечная точка. В приложении вы определяете сокет.

Решение:
Нажмите Пуск, в поле Начать поиск введите cmd, щелкните правой кнопкой мыши файл cmd.exe и выберите команду Запуск от имени администратора, а затем нажмите кнопку Продолжить.
Введите в командной строке команду netsh winsock reset и нажмите клавишу Enter. После выполнения команды перезагрузите компьютер.

Для чего нужна команда "netsh winsock reset"?

-для предотвращения атак отказа в обслуживании и отправления пакетов от чужого имени ограничена возможность передачи данных с помощью сокетов;
-ограничение частоты создания сетевых подключений. Т.е. соединений может быть сколько угодно, но установить множество подключений одновременно уже не получится, т.к. при достижении максимального числа разрешенных все последующие ставятся в очередь и выполняются с заданной частотой (что в равной степени относится и к сканированию портов).
-это изменение позволяет замедлить скорость распространения вирусов и червей, благодаря чему снижается риск массовых эпидемий, и антивирусные компании выигрывают немного времени на изготовление "противоядия". Реализация восстановления Winsock после удаления LSP

Winsock используется для обработки данных, передаваемых по протоколу TCP/IP, в процессе которой информация последовательно проходит все установленные на компьютере обработчики этих данных - LSP (Layered Service Provider). Если один из них будет некорректно удален, то цепочка обработки нарушается, и работа по протоколу TCP/IP становится невозможной. Такие ситуации нередко случались, когда в Winsock для перехвата какой-либо информации внедрялось вредоносное приложение. При удалении его антивирусом пользователь лишался сети Интернет, либо был вынужден восстанавливать удаленные вредоносные компоненты. Благодаря автоматическому восстановлению цепочки Winsock необходимость в корректном удалении LSP во многих случаях наконец-то отпала.

Вместе с этим стали доступны две новые команды Netsh:
netsh winsock show catalog - отображение списка установленных на компьютере LSP Winsock.
netsh winsock reset catalog - сброс настроек и восстановление первоначальной конфигурации LSP Winsock

При установке в составе какой-нибудь сборки Windows иногда может некорректно установиться сетевой протокол TCP/IP. В этом случае нужно его переустановить, и по-другому просто никак.

Как это сделать:

1. Запустить regedit и удалить 2 ключа в реестре:
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Winsock
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\WinSock 2\

2. В файле Nettcpip.inf (находится в папке windows\inf) найти раздел [MS_TCPIP.PrimaryInstall] и в записи Characteristics = 0xa0 заменить 0xa0 на 0x80.

3. Зайти в Панели управления в Сетевые подключения, правой кнопкой мыши щелкнуть значок Подключение по локальной сети и выбрать Свойства.

4. Открыть вкладку Общие и последовательно щелкнуть Установить, Протокол и Добавить.

5. В окне Выбор сетевых протоколов щелкнуть Установить с диска.

6. В окне Копировать файлы с диска ввести C:\Windows\inf и нажмите кнопку ОК.

7. Выделить пункт Протокол Интернета (TCP/IP) и нажмите кнопку ОК.

8. Вернуться на экран Подключение по локальной сети, но кнопка Удалить теперь активна.

9. Теперь можно удалить Протокол Интернета (TCP/IP).

10. Перезагрузить компьютер.

11. Зайти опять в Сетевые подключения и установить Протокол Интернета (TCP/IP) заново, используя кнопку Установить с диска и путь c:\windows\inf.

Если не удается подключиться к Интернету, можно сбросить параметры протокола TCP/IP. Данная статья описывает два способа сброса настроек TCP/IP. Чтобы автоматически сбросить настройки TCP/IP, перейдите к разделу Простое исправление. Чтобы сбросить настройки TCP/IP вручную, перейдите к разделу Самостоятельное решение проблемы.

Простое исправление

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

Если вы работаете не на том компьютере, на котором возникла проблема, решение «Простое исправление» можно сохранить на устройстве флэш-памяти или компакт-диске, а затем запустить на нужном компьютере.

Windows 8.1, Windows 8, Windows RT, Windows 7, Windows Server 2012 R2, Windows Server 2012, Windows Server 2008 R2

Windows Vista, Windows XP, Windows Server 2008 или Windows Server 2003

Чтобы сбросить параметры протокола TCP/IP вручную, выполните указанные ниже действия.

Примечание. Чтобы выполнить инструкции ниже, необходимо войти в систему по учетной записи администратора.

Windows 8 и Windows 8.1

На начальном экране введите команду CMD. В результатах поиска щелкните правой кнопкой мыши пункт Командная строка и выберите команду Запуск от имени администратора.

Введите в командной строке следующую команду и нажмите клавишу ВВОД:netsh int ip reset c:\resetlog.txt Примечание. Если вы не хотите указывать путь к каталогу с файлом журнала, выполните следующую команду:netsh int ip reset

Windows 7 и Windows Vista

Чтобы открыть командную строку, нажмите кнопку Пуск, а затем в поле Найти программы и файлы введите CMD.

В списке Программы щелкните правой кнопкой мыши файл CMD.exe и выберите команду Запуск от имени администратора.

В окне Контроль учетных записей нажмите кнопку Да.

Введите в командной строке следующую команду и нажмите клавишу ВВОД:netsh int ip reset c:\resetlog.txt Примечание. Если вы не хотите указывать путь к каталогу с файлом журнала, выполните следующую команду:netsh int ip reset resetlog.txt

Чтобы открыть командную строку, нажмите кнопку Пуск, а затем щелкните Выполнить. Введите в поле Открыть следующую команду и нажмите клавишу ВВОД:

Введите в командной строке следующую команду и нажмите клавишу ВВОД:netsh int ip reset c:\resetlog.txt Примечание. Если вы не хотите указывать путь к каталогу с файлом журнала, выполните следующую команду:

netsh int ip reset resetlog.txt

Запуск команды reset перезаписывает следующие разделы реестра, которые используются протоколом TCP/IP:

Это то же самое, что удалить и вновь установить протокол TCP/IP. Для успешного выполнения команды вручную необходимо указать имя файла журнала, в который будут записываться действия, выполняемые программой netsh. (В ранее упомянутых в этом разделе процедурах, выполняемых вручную, этот файл называется "resetlog.txt".)

Проблема устранена? Проверьте, устранена ли проблема. Если проблема устранена, можно пропустить дальнейшую информацию из этой статьи. Если же нет, обратитесь в службу технической поддержки.

Пример файла журнала для команды NETSH INT IP RESET

Ниже представлен пример файла журнала, созданного по результатам выполнения команды netsh для сброса настроек протокола TCP/IP. Содержимое файла журнала может отличаться в зависимости от конфигурации компьютера. Если исходная конфигурация разделов реестра, касающихся протокола TCP/IP, не изменялась, журнал может остаться пустым. reset SYSTEM\CurrentControlSet\Services\Dhcp\Parameters\Options\15\RegLocation
old REG_MULTI_SZ =
SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\Interfaces\?\DhcpDomain
SYSTEM\CurrentControlSet\Services\TcpIp\Parameters\DhcpDomain

added SYSTEM\CurrentControlSet\Services\Netbt\Parameters\Interfaces\Tcpip_\NetbiosOptions
added SYSTEM\CurrentControlSet\Services\Netbt\Parameters\Interfaces\Tcpip_\NetbiosOptions
reset SYSTEM\CurrentControlSet\Services\Netbt\Parameters\Interfaces\Tcpip_\NameServerList
old REG_MULTI_SZ =
10.1.1.2

deleted SYSTEM\CurrentControlSet\Services\Netbt\Parameters\EnableLmhosts
added SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\Interfaces\\AddressType
added SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\Interfaces\\DefaultGatewayMetric
added SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\Interfaces\\DisableDynamicUpdate
deleted SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\Interfaces\\DontAddDefaultGateway
reset SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\Interfaces\\EnableDhcp
old REG_DWORD = 0

added SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\Interfaces\\NameServer
added SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\Interfaces\\RawIpAllowedProtocols
added SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\Interfaces\\TcpAllowedPorts
added SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\Interfaces\\UdpAllowedPorts
added SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\Interfaces\\DisableDynamicUpdate
reset SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\Interfaces\\EnableDhcp
old REG_DWORD = 0

reset SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\Interfaces\\IpAddress
old REG_MULTI_SZ =
12.12.12.12

deleted SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\Interfaces\\IpAutoconfigurationAddress
deleted SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\Interfaces\\IpAutoconfigurationMask
deleted SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\Interfaces\\IpAutoconfigurationSeed
reset SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\Interfaces\\RawIpAllowedProtocols
old REG_MULTI_SZ =
0

reset SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\Interfaces\\SubnetMask
old REG_MULTI_SZ =
255.255.255.0

reset SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\Interfaces\\TcpAllowedPorts
old REG_MULTI_SZ =
0

reset SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\Interfaces\\UdpAllowedPorts
old REG_MULTI_SZ =
0

added SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\Interfaces\\AddressType
added SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\Interfaces\\DefaultGatewayMetric
added SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\Interfaces\\DisableDynamicUpdate
deleted SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\Interfaces\\DontAddDefaultGateway
reset SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\Interfaces\\EnableDhcp
old REG_DWORD = 0

added SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\Interfaces\\NameServer
added SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\Interfaces\\RawIpAllowedProtocols
added SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\Interfaces\\TcpAllowedPorts
added SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\Interfaces\\UdpAllowedPorts
reset SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\Interfaces\\DefaultGateway
old REG_MULTI_SZ =
10.1.1.2

reset SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\Interfaces\\DefaultGatewayMetric
old REG_MULTI_SZ =
0

added SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\Interfaces\\DisableDynamicUpdate
reset SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\Interfaces\\EnableDhcp
old REG_DWORD = 0

reset SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\Interfaces\\IpAddress
old REG_MULTI_SZ =
10.1.1.1

deleted SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\Interfaces\\IpAutoconfigurationAddress
deleted SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\Interfaces\\IpAutoconfigurationMask
deleted SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\Interfaces\\IpAutoconfigurationSeed
reset SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\Interfaces\\NameServer
old REG_SZ = 10.1.1.2,10.1.1.3

reset SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\Interfaces\\RawIpAllowedProtocols
old REG_MULTI_SZ =
0

reset SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\Interfaces\\SubnetMask
old REG_MULTI_SZ =
255.255.255.0

reset SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\Interfaces\\TcpAllowedPorts
old REG_MULTI_SZ =
0

reset SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\Interfaces\\UdpAllowedPorts
old REG_MULTI_SZ =
0

deleted SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\DontAddDefaultGatewayDefault
deleted SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\EnableIcmpRedirect
deleted SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\EnableSecurityFilters
deleted SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\SearchList
deleted SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\UseDomainNameDevolution
<completed>Примечание. В Windows Server 2003 с пакетом обновления 1 можно восстановить WinSock с помощью команды netsh winsock reset.

Для получения дополнительной информации щелкните приведенные ниже номера статей базы знаний Майкрософт:

314067 Как устранить проблемы, связанные с подключением по протоколу TCP/IP, в Windows XP

811259 Как проверить целостность конфигурации Winsock2 и восстановить ее при повреждении в Windows Server 2003, Windows XP и Windows Vista

Возможно, вы сталкивались с вирусами/троянами, после лечения которых перестает нормально работать сеть («компьютер не выходит в интернет»). Как человек, угробивший кучу времени на борьбу с этим замечательным явлением на нескольких компьютерах, считаю нужным записать рецепт.

Как можно бороться:
Внимание! Текст писался давно и про Windows XP. Вполне допускаю, что в более современных версиях названия папок, файлов, кнопок в окнах и прочего отличаются. Более того, эти рецепты могут вообще не подойти. Используйте с умом, пожалуйста :)

Полная переустановка TCP/IP aka закат солнца вручную:
Если ничего из вышеперечисленного не восстановило работоспособность, осталась еще одна процедура, помогающая избежать переустановки Windows. Кстати, переустановка «поверх», с сохранением настроек, программ и документов, может не устранить проблему. Пробовал, сталкивался.

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

Внимание! Текст писался давно и про Windows XP. Вполне допускаю, что в более современных версиях названия папок, файлов, кнопок в окнах и прочего отличаются. Более того, эти рецепты могут вообще не подойти. Используйте с умом, пожалуйста :)

  1. Открываем в блокноте файл c:\windows\inf\nettcpip.inf .
  2. Находим секцию [MS_TCPIP.PrimaryInstall] ..
  3. В записи Characteristics = 0xA0 замеяем 0xA0 на 0x80 .
  4. Сохраняем, закрываем.
  5. Открываем Сетевые подключения, там открываем свойства Подключения к локальной сети.
  6. На вкладке Общие щелкаем Установить -> Протокол -> Добавить.
  7. В окне Выбор сетевых протоколов щелкаем Установить с диска.
  8. Вводим путь C:\windows\inf , нажимаем ОК.
  9. Выделяем Протокол Интернета (TCP/IP), нажимаем ОК. Теперь в свойстве подключения стало возможно снести TCP/IP.
  10. Выделяем Протокол Интернета (TCP/IP), нажимаем кнопку Удалить, затем ОК.
  11. Запускаем regedit, удаляем ветки реестра HKLM\System\CurrentControlSet\Services\W insock и HKLM\System\CurrentControlSet\Services\W insock2 .
  12. Перезагружаемся.
  13. В файле c:\windows\inf\nettcpip.inf меняем обратно 0x80 на 0xA0 , сохраняем, закрываем.
  14. Открываем Сетевые подключения, там открываем свойства Подключения к локальной сети.
  15. На вкладке Общие щелкаем Установить -> Протокол -> Добавить.
  16. Выделяем Протокол Интернета (TCP/IP), нажимаем ОК.
  17. При необходимости восстанавливаем настройки адресов IP, перезагружаемся. TCP/IP работает.

Предпоследний пункт может не сработать, выдав «расширенную ошибку». Возможно, если не менять обратно файл nettcpip.inf , этой ошибки не возникнет. Дело в том, что системная база безопасности почему-то оказывается в неправильном состоянии. Как быть в этом случае? Для проверки сначала запускаем команду:

esentutl /g c:\windows\security\Database\secedit.sdb

Пробуем восстановление базы (у меня не сработало):

esentutl /r c:\windows\security\Database\secedit.sdb

Делаем ремонт базы:

esentutl /p c:\windows\security\Database\secedit.sdb

После этого запуск с ключом /g должен показать, что база в порядке, и TCP/IP установится. Эти манипуляции с базой безопасности могут что-то такое сделать с групповыми политиками, так что если вы ими пользуетесь, проверьте, все ли там в порядке.

Надеюсь, все написанное здесь вам не пригодится, а если все-таки пригодится, то сэкономит немало времени и нервов.

Если у вас "слетела" сеть после лечения.

. Воспользуетесь программой WinsockFix (скачать в зависимости от системы)
Программа делает следующее:
1. Отключает все сетевые адаптеры.
2. Удаляет из реестра ключи Winsock и Winsock2, заменяя нужные параметры исходными значениями согласно "чистой" установке XP, чтобы запустить повторное построение службы Winsock, включая создание таблиц маршрутизации командой Netsh int ip reset resetlog.txt.
3. Разрешает работу сетевых адаптеров.
4. Проверяет файл HOSTS на правильность указателя localhost (обязан ссылаться на адрес 127.0.0.1).

Anti-Malware Telegram

Утилиты для восст./коррекции сетевых настроек

Мы не гарантируем 100% восстановление настроек после применения этих утилит. Желательно перед их применением записать настройки локальной сети для Вашего компьютера.


0. Возможности, заложенные в наших инструментах:
AVZ Файл - Восстановление системы.
Пункт 14. Автоматическое исправление настроек SPl/LSP
Выполняет анализ настроек SPI и в случае обнаружения ошибок производит автоматическое исправление найденных ошибок. Данную микропрограмму можно запускать повторно неограниченное количество раз. После выполнения данной микропрограммы рекомендуется перезагрузить компьютер. Обратите внимание ! Данную микропрограмму нельзя запускать из терминальной сессии
Показания к применению: После удаления вредоносной программы пропал доступ в Интернет.

Показания к применению: После удаления вредоносной программы пропал доступ в Интернет и выполнение микропрограммы "14. Автоматическое исправление настроек SPl/LSP" не дает результата.

Пункт 18.Полное пересоздание настроек SPI
Выполняет резервное копирование настроек SPI/LSP, после чего уничтожает их и создает по эталону, который хранится в базе.
Показания к применению: Тяжелые повреждения настроек SPI, неустранимые скриптами 14 и 15. Применять только в случае необходимости !

1. Стандартное средство от MicroSoft: netsh
Описание взято с сайта производителя

ВВЕДЕНИЕ
Поскольку стек протоколов TCP/IP относится к ключевым компонентам Windows XP, возможность удаления протоколов TCP/IP не предусмотрена. Если при просмотре компонентов сетевого интерфейса выделить элемент "Протокол Интернета (TCP/IP)", кнопка "Удалить" остается недоступной. В некоторых случаях оптимальным решением является переустановка стека IP. С помощью программы NetShell стек протоколов TCP/IP можно вернуть в исходное состояние (состояние сразу после установки операционной системы). Соответствующие сведения представлены в данной статье.

NetShell (netsh) - это интерфейс сценариев командной строки, которая предназначена для настройки и отслеживания доступа к сети в ОС Windows XP. Программа предоставляет пользователю интерактивный интерфейс для взаимодействия с сетевой оболочкой.

В Windows XP в контексте протокола Интернета для программы NetShell предусмотрена команда reset. Выполнение этой команды приводит к перезаписи параметров реестра, которые используются стеком протоколов TCP/IP, что равнозначно его удалению и повторной установке.

Использование команды
netsh int ip reset [имя_файла_журнала] Чтобы выполнить команду вручную, необходимо указать имя файла журнала, в который будут записываться действия, выполняемые командой netsh. Так, запуск одной из команд, которые приведены в разделе "Примеры" этой статьи, приводит к сбросу стека протоколов TCP/IP и записи выполненных действий в файл Resetlog.txt (в первом случае файл журнала создается в текущей папке, а во втором - по указанному в команде адресу). Если журнал с таким именем уже существует, новый журнал будет добавлен в конец файла.

Предупреждение. Выполнение команды netsh winsock reset может отрицательно повлиять на работу программ, осуществляющих доступ в Интернет или отслеживающих данные в Интернете: антивирусных программ, брандмауэров и прокси-клиентов. В случае неправильной работы одной из этих программ после использования рассматриваемого метода переустановите программу, чтобы восстановить ее работоспособность.
Примеры команд:

  • Имеет возможность создания backup текущих системных установок
  • Отключает все сетевые адаптеры.
  • Удаляет из реестра ключи Winsock и Winsock2, заменяя нужные параметры исходными значениями согласно "чистой" установке XP, чтобы запустить повторное построение службы Winsock, включая создание таблиц маршрутизации командой Netsh int ip reset resetlog.txt.
  • Разрешает работу сетевых адаптеров.
  • Проверяет файл HOSTS на правильность указателя localhost (обязан ссылаться на адрес 127.0.0.1).


  1. Запустить.
  2. Нажать Reg-Backup для сохранения настроек реестра. (не обязательно)
  3. Нажать Fix
  4. Перезагрузиться.
  5. Восстановить сетевые настройки.

Ссылка на скачивание будет добавлена позже.

Описание на английском взято с сайта разработчика:

LSP-Fix is a free Windows utility to repair a loss of Internet access associated with certain types of software. This type of software, known as a Layered Service Provider or LSP, typically handles low-level Internet-related tasks, and data is passed through a chain of these programs on its way to and from the Internet. However, due to bugs in the LSP software or deletion of the software, this chain can get broken, causing the Internet connection to become inaccessible.

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

Основная идея заключается в том, что бы определить, какой максимальный размер tcp-пакета маршрутизатор провайдера может пропустить не фрагментируя его для дальнейшей передачи и установить своё значение MTU меньшим (в идеале равным) значению MTU маршрутизатора. В чем тут фишка. Дело в том, что возможно в силу каких-либо причин на маршрутизаторе установлен размер MTU меньше, чем типичный для ethernet, а у вас используется значение по умолчанию (1492). Если MTU маршрутизатора провайдера к примеру 576 (стандартное для ppp-соединений значение), а у вас 1492, и вы отправляеет в сеть пакет размером 1400 байт (к примеру), то до маршрутизатора он дайдет 1 пакетом, а дальше будет разбит на 3 (1400\576) и отправлен далее по маршруту, а там в свою очередь MTU может быть еще ниже и пакет опять будет разбит. А теперь представьте, что во время передачи между какими-либо маршрутизаторами один из этих фрагментов потерялся (потеря пакета) и соответствеено передача остальных двух смысла уже иметь не будет, вам сообщается, что при передаче произошла ошибка и нужно повторить. Т.е. терятся время и трафик. А если мы сделаем размер уходящего от нас пакета равным минимальному MTU на пути его следования, то и разбивать его маршрутизатору не придется, а значит и шанс на ошибку ниже и времени на достоверную передачу тоже нужно меньше -> мы выигрываем в скорости.

3. Смотрим результат, если видим:
"Требуется фрагментация пакета, но установлен запрещающий флаг"
то уменьшаем размер пакета с 1492 в меньшую сторону до тех пор пока не пойдут привычные ответы. Это и есть подходящее для вас значение MTU. Магическое число 1492 взято не с потолка, это величина получается если из максимального размера фрейма ethernet`a (1500) вычесть 8 байт отводимых под заголовок и получится 1492 байта для полезной нагрузки, а меньше оно может оказаться если по пути следования пакета встречаются не только ethernet каналы, но и каналы использущие другие протоколы канального уровня, где размер фрейма другой (меньше) или фрейм инкапсулируется.

4. Открываем ветку реестра:

Обнаруживаем там много включений вида 0000, 0001, 0002 и так далее. Просматриваем их все, пока не найдем ключ с описанием вашего сетевого адаптера (например у меня "Marvell Yukon 88E8056 PCI-E Gigabit Ethernet Controller") и смотрим значение параметра NetCfgInstanceId

5. Перемещаемся в ветку:

и находим там раздел с именем соответствующим NetCfgInstanceId найденному ранее. Т.е. изменения MTU каснутся только этого сетевого подключения.

6. Если есть параметр MTU, меняем его на полученное вам в результате экспериментов в пункте 3. число (в десятичном виде), если же этого параметра нет - создайте его сами (тип DWORD).

. (Если - создаем, тип DWORD). Его значение определяется исходя из следующих соображений. Величине MTU ставится в соответствие некоторое значение MSS (Maximum Segment Size, максимальный размер сегмента (размер данных, уложенных в MTU)). Величина MSS должна быть меньше MTU на 40 байт заголовка. MSS = MTU - 40. TcpWindowSize рекомендуется ставить мимимум в четыре раза больше величины MSS. TcpWindowSize = MSS * 4. (в моём случае MTU был равен 1464, значит TcpWindowSize должен быть (1462-40)*4 = 5688. Но имейте в виду, что это изменение каснется абсолютно всех подключений (сетевых, dial-up) по умолчанию величина TcpWindowSize 8760 (т.е. расчитан на 6 стандартных фреймов ethernet`а) и уменьшать его следует только в том случае, если канал очень не надежен и значение потерь пакетов до хотя бы до ближайшего маршрутизатора около 16%, что в условиях adsl крайне редко (а вот для dial-up`a очень даже часто). И уменьшенее даст более уверенную передачу. Уменьшать соответственно кратно величине TcpWindowSize. Если канал очень надежный, то казалось бы можно увеличить размер буфера, это можно сделать, но не стоит слишком увлекаться иначе можно только навредить. Величина вплоть до TcpWindowSize * 12 для хорошего канала вполне приемлема.

8. Можно перезагружаться.

ЗЫ Кстатит говоря, пытаться проверять действие этих манипуляций простыми пингами некорректно, так как размер пакета icmp-echo намного меньше MTU. Ощутить разницу можно если до и после изменения MTU замерить скорость скачивания с какого-нибудь ближайшего хоста. Особенно эффект виден на медленных линках (dial-up) но и на adsl тоже вполне ощутим

Эти манипуляции полезны тем, кто сидет на VPN-подключениях, а также для тех, кто имеет провайдера, который прижимает траффик. Если нет желания данные манипуляции проводить руками, то имееются в сети несколько утилит, о которых речь пойдет дальше.

1. SetMTU от Cisco


Как пользоваться видно на скриншоте. Выбираем адаптер и внизу выставляем соотв. значение MTU. После необходимо перезагрузиться.

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