ПОДРОБНАЯ инструкция восстановление протокола tcp/ip

Восстановление стека TCP/IP в Windows XP

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

Как может проявляться проблема:
Команда ipconfig выдает ошибку.
Не работает получение адреса по dhcp (команда ipconfig /renew).
«Странные знаки» вместо IP-адреса в выводе команды ping.
Касперский при запуске выдает ошибки типа «Сбой при запуске монитора HTTP-трафика».
ActiveSync при запуске выдает ошибку типа «TCP/IP network transport is not installed».
В диспетчере устройств при включенном «Показать скрытые устройства» в разделе «Драйверы устройств не Plug and Play» драйвер протокола TCP/IP не виден или показан как отключенный и отображается сообщение об ошибке.
Могут, естественно, быть и другие симптомы.

  1. Как можно бороться:
    Начинаю я со сканирования всех жестких дисков с аварийного диска Касперского со свежими базами. Править недолеченную винду — удовольствия мало, да и смысла может не быть.
  2. Если у каких-то сетевых соединений IP-адреса назначены вручную, выписываем их или делаем скриншоты. На следующем шаге эти настройки скорее всего слетят.
  3. Даем команду netsh int ip reset, перезагружаемся. Помогло? Замечательно. Нет? Едем дальше.
  4. Даем команду netsh winsock reset, перезагружаемся. Это может не работать на Windows до SP2. После этого действия может слететь интеграция в стек TCP/IP антивирусов, фаерволлов, клиентов для проксей. Правится или повторной установкой нужных галок в настройках этих программ, или их переустановкой.
  5. Простые методы закончились 🙂 Возможно, поврежден или остутствует файл tcpip.sys. Восстановить его можно командой expand X:\i386\tcpip.sy_ c:\windows\system32\tcpip.sys, где X: — буква диска с дистрибутивом. После восстановления перезагружаемся.
  6. Возможно, дело в каких-то еще системных файлах, потертых или измененных. Запустить проверку с восстановлением из дистрибутива по необходимости можно командой sfc /scannow. Мне не помогло, работало долго, но ошибок никаких не нашло.
  7. Видел рекомендацию воспользоваться софтинкой http://www.snapfiles.com/get/winsockxpfix.html — мне не помогло, но «десять баксов-то не лишние» — вдруг кому поможет. Софтинка небольшая, около мегабайта весит.
  8. Можно попробовать заново установить протокол TCP/IP. В свойствах подключения к локальной сети на вкладке Общие щелкаем Установить -> Протокол -> Добавить. В окне Выбор сетевых протоколов щелкаем Установить с диска, вводим путь C:\windows\inf, нажимаем ОК. Выделяем Протокол Интернета (TCP/IP), нажимаем ОК. Проверяем настройки IP, перезагружаемся.
  9. Можно попробовать в диспетчере устройств удалить и установить заново сетевую карту. Я не пробовал.

Полная переустановка 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 установится. Эти манипуляции с базой безопасности могут что-то такое сделать с групповыми политиками, так что если вы ими пользуетесь, проверьте, все ли там в порядке.

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



Быстрые клавиши MC — Midnight Commander

Ctrl и Shift обозначают соответствующие клавиши клавиатуры, Meta — условное обозначение для набора мета-клавиш, на современном PC это обычно Alt или Esc. Выделил те с которыми жить легче.

F3 Начать выделение текста. Повторное нажатие F3 закончит выделение
Shift+F3 Начать выделение блока текста. Повторное нажатие F3 закончит выделение
F5 Скопировать выделенный текст
F6 Переместить выделенный текст
F8 Удалить выделенный текст
Meta+i Переключение режима «Автовыравнивание возвратом каретки»,

удобно при вставке отформатированного текста из буфера обмена

Meta+l Переход к строке по её номеру
Meta+q Вставка литерала (непечатного символа).См. таблицу ниже
Meta+t Сортировка строк выделенного текста
Meta+u Выполнить внешнюю команду и вставить в позицию под курсором её вывод
Ctrl+f Занести выделенный фрагмент во внутренний буфер обмена mc (записать во внешний файл)
Ctrl+k Удалить часть строки до конца строки
Ctrl+n Создать новый файл
Ctrl+s Включить или выключить подсветку синтаксиса
Ctrl+t Выбрать кодировку текста
Ctrl+u Отменить действия
Ctrl+x Перейти в конец следующего
Ctrl+y Удалить строку
Ctrl+z Перейти на начало предыдущего слова
Shift+F5 Вставка текста из внутреннего буфера обмена mc (прочитать внешний файл)
Meta+Enter Диалог перехода к определению функции
Meta+- Возврат после перехода к определению функции
Meta++ Переход вперед к определению функции
Meta+n Включение/отключение отображения номеров строк
tab Отодвигает вправо выделенный текст, если выключена опция «Постоянные блоки»
Meta-tab Отодвигает влево выделенный текст, если выключена опция «Постоянные блоки»
Shift+Стрелки Выделение текста
Meta+Стрелки Выделение вертикального блока
Meta+

Shift+-

Переключение режима отображения табуляций и пробелов
Meta+

Shift++

Переключение режима «Автовыравнивание возвратом каретки»

Не работает Shop-Script, не работают include в PHP 5.3.2.

Переехал на другой сервер где установлен новый Apache/2.2.14 (FreeBSD) mod_ssl/2.2.14 OpenSSL/0.9.8k DAV/2 PHP/5.3.2. После начались проблемы с несколькими интернет магазинами, перестали работать includ-ы, белка здохла SquirrelMail.
Вот так бред:

orce_compile = true; //this forces Smarty to recompile templates each time.
//please remove this line in you finished redesign of your shopping cart
and would like to optimise your shopping cart work //select a new language?
 if (isset($_POST["lang"])) $_SESSION["current_language"] = $_POST["lang"];
 //current language session variable if (!isset($_SESSION["current_language
"]) || $_SESSION["current_language"] < 0 || $_SESSION["current_language"] >
 count($lang_list)) $_SESSION["current_language"] = 0; //set default langua
ge //include a language file if (isset($lang_list[$_SESSION["current_langua
ge"]]) && file_exists($lang_list[$_SESSION["current_language"]]-
>filename))
 include($lang_list[$_SESSION["current_language"]]->filename); //include cu
rrent language file else { die("ERROR: Couldn't find language file!"); } //c
onnect to the database db_connect(DB_HOST,DB_USER,DB_PASS) or die (db_error
 
"; $aux_pages = auxpgGetAllPageAttributes(); if ( count($aux_pages) != 0 )
 $smarty->assign( "aux_page1", $aux_pages[0] ); if ( count($aux_pages) > 1
 ) $smarty->assign( "aux_page2", $aux_pages[1] ); //show Smarty output $smart
y->display($lang_list[$_SESSION["current_language"]]->template_path."
index.tpl.html"); ?

Решение крылось в php.ini правим параметр short_open_tag=off. Перезапускаем apache. Не забываем в  добавить в php.ini разделе [Date] пареметр date.timezone = Europe/Kiev.


При копировании файлов произошла ошибка. Установка прекращена. Код ошибки: FS_GENERROR

При копировании файлов произошла ошибка. Установка прекращена. Код ошибки: FS_GENERROR. При установке на windows7 Pro  1С:Предприятие комплексной поставки выскакивала такая вот ошибка.

Решается очень просто: инсталляцию запускаем с того диска на котором нет базы 1С, может еще помочь копирование всех файлов в одну папку и запуск.  Не забываем в конфигураторе выставить +текущую системную установку. Администрирование -> кодовая страница таблиц информационной базы-> +текущая системная установка.