Примечание Диагностику IP-параметров diaul-up-подключения (подключения к провайдеру по телефонному каналу связи) необходимо проводить после установления модемного соединения.
Для диагностики TCP/IP рекомендуется использовать следующую последовательность операций:
1. Проверка параметров настройки IP-протокола. 2. Проверка достижимости ближайших компьютеров сети. 3. Проверка функционирования серверов имен. 4. Проверка качества канала связи.
Примечание В Windows XP существует специальный мастер диагностики сетевого подключения, который выполняет аналогичные операции и выдает результаты соответствующих тестов. Эта программа вызывается из меню утилиты Сведения о системе (Пуск | Все программы | Стандартные | Служебные | Сведения о системе | Сервис | Диагностика сети).
Проверка параметров настройки IP-протокола
Для отображения параметров IP-протокола используются утилиты ipconfig (Windows NT/200x/XP/Vista) и winipcfg (Windows 9.r/ME). Утилита ipconfig выполняется в режиме командной строки. Утилита winipcfg имеет графический интерфейс. Утилиты выводят на экран параметры настройки протокола TCP/IP: значения адреса, маски, шлюза. При запуске ipconfig с ключом /all на экран будут выведены все действующие параметры протокола. Отмечу также ключ /renew, который позволяет обновить автоматически полученные параметры IP-протокола, и ключ /registerdns, с помощью которого можно обновить запись на DNS-сервере данного компьютера (используется в Windows 200х/XP/Vista).
Примечание Обратите внимание, что обычно при операции обновления сервер подтверждает ранее выданные адреса, поэтому о результате можно судить только по изменению информации в позициях Доступ получен и Доступ истекает.
Если утилита покажет, что сетевому адаптеру присвоен адрес 169.254.134.123 (или аналогичный), то можно сделать заключение, что в сети недоступен сервер, автоматически присваивающий параметры IP-протокола. Часто причиной подобной ошибки (если ранее компьютер нормально работал в сети) является нарушение контакта в подсоединении сетевого кабеля.
Проверка достижимости ближайших компьютеров сети
Для проверки достижимости компьютеров в сети TCP/IP используется команда ping. Эта команда посылает на заданный компьютер последовательность символов определенной длины и выводит на экран информацию о времени ответа удаленной системы. Ключами команды можно регулировать количество отсылаемых символов и время ожидания ответа (через этот период выводится сообщение о превышении периода ожидания; если ответ придет позже, то он не будет показан программой). При тестировании подключения рекомендуется применять следующую последовательность операций.
1. Сначала проверяется работоспособность протокола TCP/IP путем "пингования" адреса 127.0.0.1:
■ ping 127.0.0.1
Адрес 127.0.0.1 — это "личный" адрес любого компьютера. Таким образом, эта команда проверяет прохождение сигнала "на самого себя". Она может быть выполнена без наличия какого-либо сетевого подключения.
Если будет показано сообщение о недостижимости адресата, то это означает ошибку установки протокола IP. В этом случае целесообразно удалить протокол из системы, перезагрузить компьютер и вновь установить поддержку протокола TCP/IP.
2. Следующим шагом необходимо проверить ответ локального компьютера по присвоенному ему IP-адресу. Для этого следует выполнить команду:
ping <адрес>Результат, который должен быть выведен на экран в случае нормальной работы, практически аналогичен полученному в предыдущем примере.
3. Следующая проверка— это выполнение команды ping с указанием IP-адреса любого ближайшего компьютера. Можно использовать любой адрес, относительно которого вы уверены, что он достижим в локальной сети на момент проверки. Например, можно записать IP-адрес шлюза или адрес DNS-сервера. Наличие отклика свидетельствует, что канал связи установлен и работает. Отсутствие ответа обычно говорит либо о повреждении кабельной сети (например, нет контакта в разъеме), либо о неверно установленных параметрах статического адреса.
Проверка состояния порта TCP/IP удаленного компьютера
В случае применения брандмауэров для защиты подключения компьютера к Интернету наличие ответа от удаленной системы на команду ping совсем не означает, что пакеты, предназначенные другим портам, будут пропущены. Существуют две возможности удостовериться в правильной настройке брандмауэра. Во-первых, в Support Tools от Windows 2003 присутствует утилита portqry.exe, которая позволяет увидеть ответ удаленной системы на запрос по конкретному порту. Так, для проверки достижимости FTP-сервера можно выполнить следующую команду:
portqry -n comp -e 21
Результатом будет, например, такой вывод: Querying target system called: comp Attempting to resolve name to IP address... Name resolved to 192.168.0.29 TCP port 21 (ftp service): LISTENING Data returned from port: 220 comp.xnets.ru X2 WS_FTP Server 5.0.0 (1845270209) 331 Password required Утилита сообщила, что порт 21 открыт, и отобразила информацию, которую выдает FTP-сервер, работающий на этом компьютере (имя компьютера - comp).
Примечание Аналогичные утилиты, позволяющие осуществлять "пинги" на конкретные порты, легко найти в Интернете.
Второй способ состоит в применении утилиты telnet. Запуская эту утилиту с параметрами в виде имени удаленной системы и номером порта, вы осуществляете попытку подключения к соответствующему порту. Если вы не можете подключиться к удаленной системе, то необходимо найти компьютер, на котором происходит фильтрация пакетов. Для этого следует проверить путь прохождения информации с помощью команды tracert, после чего протестировать возможность подключения к соответствующему порту каждого компьютера этой цепочки.
По результату выполнения данной команды можно оценить, что наибольшая задержка в прохождении сигнала возникает на каналах связи с узлами, стоящими в строках 7 и 8. Одиночные звездочки свидетельствуют, что ответ от этого узла не получен в заданный диапазон времени. Если в строке стоят все звездочки, то это может обозначать, что администраторы соответствующих хостов не разрешили прохождение ICMP-пакетов (пакеты, которые используются в том числе и командами ping и tracert).
Проверка функционирования серверов имен
Для проверки работоспособности сервера имен Интернета следует выполнить команду ping, указав в качестве параметра не IP-адрес, а доменное имя какого-либо компьютера:
ping <имя>
Если команда сможет "разрешить" IP-адрес хоста и покажет отклик, то это означает работоспособность системы распознавания имен. Практически это говорит о правильной настройке протокола TCP/IP и работоспособности канала связи. Если не будет ответа на ввод команды с именем существующего хоста, то это может свидетельствовать либо об ошибке в задании DNS-серверов, либо об их неработоспособности.
Проверка качества канала связи
При работе в Интернете одни информационные серверы открываются быстрее, другие медленнее, бывают случаи недостижимости желаемого хоста. Часто причиной этого бывает недостаточное качество канала связи: большое время ожидания данных или существенный процент потерь пакетов, что обычно приводит к повторам передачи. С помощью утилит tracert и pathping можно оценить качество канала связи по всей цепочке до желаемого источника. Утилита tracert выводит на экран время отклика каждой системы, находящейся на пути передачи данных к искомому серверу. Точка, после которой время отклика резко увеличено, свидетельствует о наличии в этом месте узкого "горлышка", не справляющегося с нагрузкой. Более точную усредненную статистику достижимости удаленного хоста можно получить с помощью команды pathping. Эта утилита посылает на каждый промежуточный хост серию пакетов и выводит информацию о количестве откликов и среднем времени ответа:
После опубликования цепочки хостов, через которые проходит сигнал по пути к заданному серверу, программа pathping выводит статистические данные О достижимости каждого промежуточного хоста, причем время усреднения выбирается исходя из конкретной ситуации (в примере подсчет проводился за период в 375 с). Первым параметром выводится время доступа к данному хосту, затем показано количество отправленных на него пакетов и число неполученных ответов (с процентом успеха). После этого отображаются аналогичные значения для достижимости конечного хоста при расчете прохождения пакетов отданной промежуточной точки. Так, цифры в 14-й строке говорят о том, что время доступа к хосту составляет 1059 мс и при отправке на него 100 пакетов на четыре отсутствовал ответ. А если бы сигнал на конечный хост передавался с позиции номер 14, то при посылке 100 пакетов ответ был бы получен на все. В завершение после имени данного промежуточного хоста утилита сообщила, что количество успешных пакетов составило 96%.
Переустановка протокола TCP/IP в Windows XP
Иногда "последним" средством восстановления работоспособности становится переустановка протокола TCP/IP. Поскольку в Windows XP данный протокол является практически основным компонентом, то пользователь не может его удалить обычными операциями удаления/добавления компонентов. Чтобы вернуть параметры протокола в первоначальное состояние, следует воспользоваться командой netsh. Команда
netsh interface ip reset
установит настройки протокола TCP/IP в значения по умолчанию.