Порядок выявления неисправностей и их устранения
539
64 bytes from dkws.org.ua (91.203.4.50): icmp_seq=2 ttl=58 time=24.8 ms
64 bytes from dkws.org.ua (91.203.4.50): icmp_seq=5 ttl=58 time=12.2 ms
64 bytes from dkws.org.ua (91.203.4.50): icmp_seq=6 ttl=58 time=159 ms
64 bytes from dkws.org.ua (91.203.4.50): icmp_seq=7 ttl=58 time=19.3 ms
64 bytes from dkws.org.ua (91.203.4.50): icmp_seq=9 ttl=58 time=29.0 ms
...
П
РИМЕЧАНИЕ
Команда
ping
имеется как в Linux, так и в Windows, но ее вывод в Windows немного
отличается от приведенного здесь.
Тут, как можно видеть, все нормально. Но иногда ответы от удаленного сервера то
приходят, то не приходят. Чтобы узнать, в чем причина (где именно теряются паке-
ты), нужно выполнить трассировку узла:
tracepath dkws.org.ua
В некоторых дистрибутивах Linux вместо команды
tracepath
используется команда
traceroute
, а в Windows —
tracert
. На рис. 11.7 показано выполнение команды
tracepath
.
Сразу видно, что с прохождением пакетов до удаленного узла есть опре-
деленные проблемы — по пути пакеты теряются. Для того чтобы выяснить причи-
Рис. 11.7.
Проблема с прохождением пакетов
540
Глава 11
ну, вам нужно обратиться к администратору того маршрутизатора, который не про-
пускает пакеты дальше. Причина именно в нем. В нашем случае, как видно из
рисунка, пакеты доходят до маршрутизатора
dc-m7i-1-ge.interfaces.dc.utel.ua
,
а после него движение пакетов прекращается.
Проверка функционирования серверов имен
Если соединение установлено (о чем свидетельствует наличие «поднятого» интер-
фейса в выводе
ifconfig
), а веб-страницы не открываются, попробуйте пропинго-
вать любой удаленный узел по IP-адресу.
Если вы не знаете, какой узел пинговать
(т. е. не помните ни одного IP-адреса), пропингуйте узел 213.186.114.75. Если вы
получите ответ, а страницы по-прежнему не открываются, когда вы вводите сим-
вольное имя, значит, у вас проблемы с DNS — сервер провайдера почему-то не
передал вашему компьютеру IP-адреса DNS-серверов. Позвоните провайдеру и
выясните причину, а еще лучше — уточните IP-адреса серверов DNS и укажите их
в файле
/etc/resolv.conf
.
Формат этого файла прост:
nameserver
IP-адрес
Например:
nameserver 193.254.218.1
nameserver 193.254.218.27
Всего можно указать до четырех серверов DNS.
Если же не открывается какая-то конкретная страница, а все остальные работают
нормально, тогда понятно, что причина в само´м
удаленном сервере, а не в ваших
настройках.
В более сложных случаях бывает полезно просмотреть трафик, проходящий по оп-
ределенному порту. Для этого нужно выполнить команду
tcpdump
— например:
tcpdump tcp port 80
Эта команда отобразит весь трафик, поступающий на TCP-порт 80.
Проверка доступности приложений на удаленном компьютере
Администраторы часто запрещают в межсетевых экранах прохождение ping-
пакетов, открывая только порты, используемые установленными приложениями.
В этом случае убедиться в доступности удаленного компьютера можно, если вы
знаете порт, на котором работает соответствующая программа. Например, в прак-
тике авторов был случай, когда администраторами провайдера
были закрыты пор-
ты, необходимые для создания безопасного подключения.
Существуют различные возможности проверить удаленные системы. Во-первых,
в Support Tools присутствует утилита
portqry.exe
, которая позволяет увидеть ответ
удаленной системы на запрос по конкретному порту. Так, для проверки достижи-
мости FTP-сервера можно выполнить следующую команду:
portqry -n server -e 21
Порядок выявления неисправностей и их устранения
541
Результатом будет, например, такой вывод:
Querying target system called:
server
Attempting to resolve name to IP address...
Name resolved to 192.168.0.1
TCP port 21 (ftp service): LISTENING
Data returned from port:
220 server.example.com X2 WS_FTP Server 5.0.0 (1845270209)
331 Password required
Утилита сообщила, что порт 21 открыт, и отобразила информацию, которую выдает
FTP-сервер, работающий на этом компьютере (имя компьютера
server
).
Сходные утилиты, позволяющие
получить ответ на запрос, отправленный на кон-
кретный порт, легко найти в Интернете. Но проще использовать программу Telnet,
которая входит в состав всех операционных систем. Для систем Windows NT 6.0 и
старше ее надо добавить в число установленных компонентов (она называется
кли-
ент Telnet
), в предыдущих же версиях эта утилита доступна по умолчанию.
Запуская утилиту Telnet с параметрами в виде имени удаленной системы и номером
порта, вы осуществляете попытку подключения к соответствующему порту. Если
попытка подключения удалась, то либо на экране появится ответ, либо экран на
некоторое время «зависнет», после чего соединение разорвется по тайм-ауту. Если
порт не отвечает, то вы увидите на экране сообщение о невозможности подключе-
ния. Далее
приведен вывод команды
telnet
при проверке доступности порта 25
(порт почтового сервера, попытка неудачна) и 80 (порт сервера WWW — видно,
что порт ответил на запрос).
>telnet 192.168.29.1 25
Подключение к 192.168.29.1...Не удалось открыть подключение к этому узлу,
на порт 25: Сбой подключения
>telnet 192.168.29.1 80
HTTP/1.0 400 Bad Request
Date: Fri, 11 Nov 2011 10:58:58 GMT
Server: Boa/0.94.11
Connection: close
Content-Type: text/html; charset=ISO-8859-1
400 Bad Request
400 Bad Request
Your client has issued a malformed or illegal request.
Достарыңызбен бөлісу: