Поскольку причины большинства проблем просты, приобретение четкого представления о проблеме зачастую и является решением. К сожалению, это не всегда так, и в этом разделе мы начнем беседу об инструментах, позволяющих подготовить атаку на самую трудноизлечимую проблему.
Существует множество средств диагностики - начиная от коммерческих систем со специализированным программным и аппаратным обеспечением стоимостью многие тысячи долларов и заканчивая бесплатными программами из комплекта поставки системы Unix. Кроме того, следует иметь под рукой некоторые инструменты.
Для работы с сетевым оборудованием и кабелями пригодится простейший ручной инструмент. Может оказаться достаточно пары острогубцев и набора отверток, однако не исключено, что возникнет необходимость в специализированных инструментах. Например, для присоединения разъема RJ-45 к не экранированной витой паре (UTP) требуется использование специального обжимного инструмента. Как правило, проще всего купить готовый набор инструментов для сетевых работ у вашего поставщика кабельной продукции.
Полноценный кабельный тестер также полезен. Современные кабельные тестеры - это небольшие портативные устройства с клавиатурой и жидкокристаллическим экраном, позволяющие тестировать как коаксиальные, так и UTP-кабели. Выбор тестов производится с клавиатуры, а результаты отображаются на жидкокристаллическом экране. Интерпретировать результаты не нужно - устройство делает все за вас и выводит сообщение об ошибке в виде простого текста. К примеру, тест кабеля может привести к выводу сообщения «Short at 74 feet». Из этого сообщения можно понять, что в кабеле присутствует замыкание в 74 футах от тестера. Что может быть проще? Качественные инструменты тестирования упрощают поиск, а значит, и разрешение проблем с кабелями.
Весьма полезным элементом тестировочного оборудования может стать правильно настроенный портативный компьютер. Установите программное обеспечение TCP/IP. Возьмите компьютер с собой, направляясь к пользователю, сообщившему о сетевой проблеме. Отсоедините кабель Ethernet от пользовательской системы и подключите его к своему портативному компьютеру. Выполните настройку с подходящим адресом из подсети пользователя и перезагрузитесь. Затем прозвоните различные системы сети при помощи программы ping и подключитесь к одному из серверов пользователя. Если все работает, ошибка, скорее всего, связана с компьютером пользователя. Пользователи доверяют такому тесту, поскольку он воспроизводит то, что они делают ежедневно. Пользователи больше доверяют портативному компьютеру, чем непонятному прибору для тестирования, отображающему сообщение «No faults found» (Нет ошибок). Если же тестирование дает сбой, проблема, вероятно, связана с сетевым оборудованием или подключением. И вот тогда на сцене появляется тестер для кабелей.
Другим преимуществом использования портативного компьютера в качестве инструмента тестирования является его врожденная гибкость. Он позволяет работать с широким спектром приложений для тестирования, диагностики и управления. Установите Unix на этот портативный компьютер и работайте с программами, описанными в этой главе, как с настольного, так и с портативного компьютера.
В этой книге сделан упор на бесплатные или «встроенные» программные диагностические инструменты систем Unix. Программные инструменты, обсуждаемые в этой главе, а также многие другие описаны в документе RFC 1470 , FYI on a Network Management Tool Catalog: Tools for Monitoring and Debugging TCP/IP Internets and Interconnected Devices (Информативный документ по каталогу инструментов управления сетями: инструменты для наблюдения и отладки Интернет-сетей TCP/IP и взаимосвязанных устройств).
Броский заголовок и полезный документ! Документ в некоторой степени уста рел, однако действительно обозначает ряд весьма полезных инструментов. Инструменты, перечисленные в каталоге и описанные в этой книге:
ifconfig - Предоставляет сведения о базовых настройках интерфейса. Полезна для поиска неверных IP-адресов, некорректных масок подсетей, а также неверных широковещательных адресов, ifconfig подробно описывается в главе 6. Данный инструмент поставляется в составе операционной системы Unix.
arp - Предоставляет информацию о преобразовании адресов Ethernet/IP. Может использоваться для обнаружения систем локальной сети, при настройке которых использовался неверный IP-адрес, аг р описывается в этой главе и используется в примерах главы 2. аг р входит в состав Unix.
netstat - Предоставляет самую разнообразную информацию. Повсеместно используется для вывода подробной статистики по каждому из сетевых интерфейсов, по сетевым сокетам, а также таблицам маршрутизации, netstat многократно упоминается в этой книге, а подробнее всего в главах 2, 6 и 7. netstat входит в состав Unix.
ping - Позволяет определить, доступен ли удаленный узел, ping отображает статистику по потерянным пакетам и времени доставки. Программа ping описана в главе 1 и используется в главе 7. ping также входит в состав Unix.
nslookup - Предоставляет информацию о службе имен DNS. nslookup подробно описывается в главе 8 и входит в состав программного пакета BIND.
dig - Также предоставляет информацию о службе имен. По функциональности схожа с nslookup.
traceroute - Выводит информацию о каждом из транзитных участков маршрута, по которому проходит пакет от вашей системы до удаленной.
snoop - Анализирует отдельные пакеты, которыми обмениваются узлы сети, snoop - это анализатор протоколов TCP/IP, включенный в состав системы Solaris 8. Он позволяет изучать содержимое пакетов, включая заголовки, и наиболее полезен для анализа проблем, связанных с протоколами, tcpdump - инструмент с аналогичными функциями, он поставляется в системах Linux.
В этой главе описаны все перечисленные инструменты, даже те, что уже описывались ранее. Мы начнем с программы ping, которая при отладке применяется чаще любого другого инструмента диагностирования.