Восстановление стека TCP/IP
Что делать если не работают сетевые протоколы? При попытки пропинговать сервер / ip-адресс вы получаете ошибку «Не удается обратиться к драйверу IP. Код ошибки 2»? Тогда у вас что-то со стеком TCP/IP, разберём подробнее.
Начну с лёгкого и простого, заканчивая более сложными решениями проблемы.
Возможно у вас на компьютере стоит Аваст и проблемы начались после обновления антивирусных баз, 6 декабря 2012 года аваст добавил в свои базы файл C:\Windows\system32\drivers\TCPIP.sys , вскоре после обновления баз аваст нашёл этот файл в системных файлах и удалил (возможно поместил в карантин).
Не беда, ниже я напишу как восстановить работоспособность стека TCP/IP, после чего сеть должна заработать (если она конечно раньше работала):
1. Самый простой способ — воспользоваться avastfix.zip зеркало :
- для начала нужно скачать avastfix (ссылки строчкой выше)
- распаковать, допустим на диск C:\ (в архиве есть папка, так что после извлечения будет путь такой C:\avastfix\ )
- если у вас стоит аваст, то отключите его: в правом нижнем углу найдите значок аваста (возле часов), нажмите на него правой кнопкой мышки и выберите управление экранами avast , далее нужно указать отключение навсегда
- запустите fixtcpip.bat , после чего компьютер перезагрузится
- после перезагрузки проверяем работу сети например пингом на сервер гугла: на клавиатуре нажмите одновременно на флажок (логотип windows), между Ctrl и Alt , и букву R , то есть Win + R . В появившемся окне напишите cmd , у вас открылась командная строка, в ней напишите ping 8.8.8.8 , должно появиться
Обмен пакетами с 8.8.8.8 по 32 байт:
Ответ от 8.8.8.8: число байт=32 время=55мс TTL=48
или что-то похожее, но не ошибка драйвера сети
C:\Windows\system32\drivers\TCPIP.sys (у вас может быть установлен windows на другой раздел, например D: )
Давайте теперь рассмотрим что в этом «чудо» архиве:
fixtcpip.bat — некий скрипт, который импортирует в реестр стандартные настройки стека, распаковывает архив tcpip.rar при помощи UnRAR.exe в C:\Windows\system32\drivers\ и перезагружает компьютер
2. Рассмотрим теперь ручное восстановление/копирование файла
- для начала всё же отключим аваст (см. выше 3-ий пункт » если у вас стоит …»)
- файл tcpip.sys можно скопировать из папки C:\Windows\system32\dllcache , но возможно аваст его то же удалил, тогда можно взять загрузочный CD/DVD/USB диск и там найти этот файл в …\I386\TCPIP.SY_ . Так же файл можно взять с рабочей системы. Но если взять этот файл вам не откуда, тогда вот ссылка для SP3 (если у вас SP2, то можете попросить) tcpip.sys
- перезагрузите компьютер
- проверьте работоспособность сети/интернета, если работает, тогда обновите аваст и запустите аваст (см. последний пункт 1-го способа)
3. Если не помогли предыдущие способы, то скорее всего виноват не аваст. Проверьте, существует ли файл C:\windows\inf\nettcpip.inf , если существует, тогда приступайте к следующему способу. Если файла нет, тогда его нужно скопировать с рабочей системы, нет рабочей системы? Не беда, скачайте отсюда nettcpip.inf
4. Переустановка стека TCP/IP используя Microsoft Fix it 50199 зеркало
5. Можно попробовать утилиту TCPIP.Sys RestoreTool от фирмы UnHackMe , этой утилитой я не пользовался, но по описанию она должна переустанавливать стек TCP/IP в операционных системах: Windows 2000/XP/Vista/Seven/8 32 и 64-бит
6. Сброс настроек стека TCP/IP вручную. На сайте Microsoft в статье kb299357 написано, что для переустановки достаточно выполнить выполнить всего одну команду в командной строке:
- запустите cmd
- выполните netsh int ip reset resetlog.txt
- перезагрузите компьютер
7. А теперь самое сложное переустановка стека TCP/IP в windows XP вручную.
- Загрузите windows в Безопасный режим , то есть включаете компьютер и многократно нажимайте на F8 пока не появится меню загрузки windows, выберите Безопасный режим
- Зайдите в реестр ( Пуск — Выполнить — regedit — OK или Win + R )
- Удалите два ключа и выйдите из реестра:
Источник
Стек tcp не работает
Группа: Пользователи
Сообщений: 2370
Регистрация: 17.7.2007
Пол:
Сегмент: 33
Восстановление стека TCP/IP в Windows XP
Возможно, вы сталкивались с вирусами/троянами, после лечения которых перестает нормально работать сеть («компьютер не выходит в интернет»). Как человек, угробивший кучу времени на борьбу с этим замечательным явлением на нескольких компьютерах, считаю нужным записать рецепт.
Как может проявляться проблема:
- Команда ipconfig выдает ошибку.
- Не работает получение адреса по dhcp (команда ipconfig /renew).
- «Странные знаки» вместо IP-адреса в выводе команды ping.
- Касперский при запуске выдает ошибки типа «Сбой при запуске монитора HTTP-трафика».
- ActiveSync при запуске выдает ошибку типа «TCP/IP network transport is not installed».
- В диспетчере устройств при включенном «Показать скрытые устройства» в разделе «Драйверы устройств не Plug and Play» драйвер протокола TCP/IP не виден или показан как отключенный и отображается сообщение об ошибке.
- Могут, естественно, быть и другие симптомы.
Как можно бороться:
- Начинаю я со сканирования всех жестких дисков с аварийного диска Касперского со свежими базами. Править недолеченную винду — удовольствия мало, да и смысла может не быть.
- Если у каких-то сетевых соединений IP-адреса назначены вручную, выписываем их или делаем скриншоты. На следующем шаге эти настройки скорее всего слетят.
- Даем команду netsh int ip reset, перезагружаемся. Помогло? Замечательно. Нет? Едем дальше.
- Даем команду netsh winsock reset, перезагружаемся. Это может не работать на Windows до SP2. После этого действия может слететь интеграция в стек TCP/IP антивирусов, фаерволлов, клиентов для проксей. Правится или повторной установкой нужных галок в настройках этих программ, или их переустановкой.
- Простые методы закончились 🙂 Возможно, поврежден или остутствует файл tcpip.sys. Восстановить его можно командой expand X:\i386\tcpip.sy_c:\windows\system32\tcpip.sys, где X: — буква диска с дистрибутивом. После восстановления перезагружаемся.
- Возможно, дело в каких-то еще системных файлах, потертых или измененных. Запустить проверку с восстановлением из дистрибутива по необходимости можно командой sfc /scannow. Мне не помогло, работало долго, но ошибок никаких не нашло.
- Видел рекомендацию воспользоваться софтинкой http://www.snapfiles.com/get/winsockxpfix.html — мне не помогло, но «десять баксов-то не лишние» — вдруг кому поможет. Софтинка небольшая, около мегабайта весит.
- Можно попробовать заново установить протокол TCP/IP. В свойствах подключения к локальной сети на вкладке Общие щелкаем Установить -> Протокол -> Добавить. В окне Выбор сетевых протоколов щелкаем Установить с диска, вводим путь C:\windows\inf, нажимаем ОК. Выделяем Протокол Интернета (TCP/IP), нажимаем ОК. Проверяем настройки IP, перезагружаемся.
- Можно попробовать в диспетчере устройств удалить и установить заново сетевую карту. Я не пробовал.
Полная переустановка TCP/IP aka закат солнца вручную:
Если ничего из вышеперечисленного не восстановило работоспособность, осталась еще одна процедура, помогающая избежать переустановки Windows. Кстати, переустановка «поверх», с сохранением настроек, программ и документов, может не устранить проблему. Пробовал, сталкивался.
Итак, отращиваем бороду, покупаем бубен, надеваем толстые очки и засучиваем рукава.
- Открываем в блокноте файл c:\windows\inf\nettcpip.inf.
- Находим секцию [MS_TCPIP.PrimaryInstall]..
- В записи Characteristics = 0xA0 замеяем 0xA0 на 0x80.
- Сохраняем, закрываем.
- Открываем Сетевые подключения, там открываем свойства Подключения к локальной сети.
- На вкладке Общие щелкаем Установить -> Протокол -> Добавить.
- В окне Выбор сетевых протоколов щелкаем Установить с диска.
- Вводим путь C:\windows\inf, нажимаем ОК.
- Выделяем Протокол Интернета (TCP/IP), нажимаем ОК. Теперь в свойстве подключения стало возможно снести TCP/IP.
- Выделяем Протокол Интернета (TCP/IP), нажимаем кнопку Удалить, затем ОК.
- Запускаем regedit, удаляем ветки реестра HKLM\System\CurrentControlSet\Services\Winsock и HKLM\System\CurrentControlSet\Services\Winsock2.
- Перезагружаемся.
- В файле c:\windows\inf\nettcpip.inf меняем обратно 0x80 на 0xA0, сохраняем, закрываем.
- Открываем Сетевые подключения, там открываем свойства Подключения к локальной сети.
- На вкладке Общие щелкаем Установить -> Протокол -> Добавить.
- Выделяем Протокол Интернета (TCP/IP), нажимаем ОК.
- При необходимости восстанавливаем настройки адресов IP, перезагружаемся. TCP/IP работает.
Предпоследний пункт может не сработать, выдав «расширенную ошибку». Возможно, если не менять обратно файл nettcpip.inf, этой ошибки не возникнет. Дело в том, что системная база безопасности почему-то оказывается в неправильном состоянии. Как быть в этом случае? Для проверки сначала запускаем команду:
esentutl /g c:\windows\security\Database\secedit.sdb
Если в выводе между строчками Checking database integrity и Integrity check successful нет никаких сообщений, что что-то не так, значит с базой все в порядке. У меня было сообщение типа This operation may find that this database is corrupt.
Пробуем восстановление базы (у меня не сработало):
esentutl /r c:\windows\security\Database\secedit.sdb
Делаем ремонт базы:
esentutl /p c:\windows\security\Database\secedit.sdb
После этого запуск с ключом /g должен показать, что база в порядке, и TCP/IP установится. Эти манипуляции с базой безопасности могут что-то такое сделать с групповыми политиками, так что если вы ими пользуетесь, проверьте, все ли там в порядке.
Надеюсь, все написанное здесь вам не пригодится, а если все-таки пригодится, то сэкономит немало времени и нервов.
Источник
Как сбросить стек TCP/IP в Windows 10
Интернет работает по протоколу TCP/IP. Если стек протокола TCP/IP не работает правильно в Windows 10 или любой другой операционной системе, такой как Linux или MacOS, у вас возникнут проблемы с подключением к Интернету. Лучший способ решить проблемы с Интернетом — сбросить настройки стека TCP/IP.
Это повреждение в стеке служб TCP/IP может быть вызвано различными факторами, такими как установка программного обеспечения, изменяющего сетевые настройки в Windows, вирусы и вредоносное ПО, повреждение реестра Windows и т. д.
Нет прямого способа сбросить интернет-протоколы в Windows 10. Интернет-протокол TCP/IP хранит некоторые сетевые данные локально, которые могут быть повреждены.
Если ваше Интернет-соединение не работает должным образом и вы получаете сообщение «Этот сайт недоступен», хотя Windows показывает, что вы подключены к Интернету.
Сброс стека TCP/IP возможен с помощью командной строки в Windows. Давайте пройдемся по процессу и избавим наше интернет-соединение от ошибок.
Что такое протокол TCP/IP?
Протокол управления передачей/Интернет-протокол отвечает за перенос пакетов от одного источника к месту назначения. Этот протокол включает трехстороннее рукопожатие, что означает, что перед обменом фактической информацией происходит обмен тремя пакетами между источником и целью. Это рукопожатие предназначено для установления доверия между двумя устройствами.
Многократное повторение этих рукопожатий значительно увеличит трафик в сети. Следовательно, данные кэшируются и хранятся локально, чтобы избежать ненужной транспортировки пакетов.
Более того, протокол TCP/IP работает аналогично эталонной модели OSI. Это означает, что у него есть собственный набор правил и положений, которые он устанавливает для связи между устройствами. Это называется стеком. Кэш TCP/IP относится к хранимым в устройстве данным, которые он использует для маршрутизации пакетов.
Когда и почему следует сбрасывать стек TCP/IP
Со временем Windows сохраняет кэш сетевых данных, включая IP-адреса. В системном реестре также есть параметры, которые напрямую связаны с интернет-протоколом. В любой момент они могут быть повреждены, что приведет к невозможности подключения к Интернету, даже если все остальные настройки выполнены правильно.
Повреждение стека может даже быть причиной того, что трафик вашего компьютера направляется на старый IP-адрес и не может обновить новый в кеше.
Иногда недостаточно изменить IP-адрес вашего компьютера или просто перезапустить его. Именно тогда пользователь должен прибегнуть к этому решению и сбросить свои настройки TCP / IP.
Как сбросить стек TCP/IP в Windows 10
Как мы упоминали ранее, Microsoft не предоставила простой способ сбросить интернет-протокол. Однако мы все еще можем сделать это с помощью команды netsh в командной строке.
Команду netsh можно использовать для просмотра или настройки сетевых параметров в среде Windows, указав правильные параметры.
Обратите внимание, что этот процесс удалит все текущие конфигурации всех сетевых портов на вашем устройстве, включая все неактивные, а также виртуальные сетевые адаптеры. Следовательно, их нужно будет перенастроить после завершения процесса. Более того, операция также требует перезагрузки системы, поэтому рекомендуется сохранить ваши данные, прежде чем продолжить.
- Откройте командную строку с правами администратора.
- Введите ipconfig /release , чтобы удалить текущие настройки IP.
- Введите ipconfig /flushdns , чтобы удалить кеш DNS.
- Введите netsh winsock reset для сброса кеша Windows Sockets API.
- Введите netsh int ip reset , чтобы сбросить кеш стека TCP/IP. Пока не перезагружайте компьютер.
- Введите ipconfig /renew , чтобы запросить новые параметры IP с сервера.
- Перезагрузите компьютер.
Если вы хотите автоматизировать процесс, просто скопируйте и вставьте вышеупомянутую команду в текстовый документ и сохраните ее с любым именем по вашему выбору, заканчивающимся на .bat . Это создаст командный файл, который выполнит все команды внутри, когда вы дважды щелкните его.
Например, скрипт может выглядеть так:
Если вы по-прежнему не можете получить доступ к Интернету, вы можете полностью сбросить настройки сети Windows.
TCP/IP — это душа компьютерных сетей; без него доступ в Интернет был бы невозможен. Рекомендуется поддерживать сетевой кэш вашей системы и оптимизировать его для повышения производительности.
Инструкция по сбросу протокола актуальна для всех версий Windows. На видео заснят процесс сброса на Windows 7.
Источник