Изучение системных утилит для диагностики лвс. Диагностика локальных сетей

Локальная сеть представляет собой механизм, функционирование которого зависит от внешних факторов: стабильности электропитания, количества и качества установленных программ, аппаратного обеспечения компьютеров, защищенности от внешних угроз и т. д. Каждый из них может стать причиной нестабильной работы или отказа локальной сети.

Для диагностики и устранения подобных сбоев в Windows 7 предусмотрен довольно эффективный штатный механизм. Чтобы его запустить, выполните команду Пуск > Панель управления. Сеть и интернет >> Центр управления сетями и общим доступом >> Устранение неполадок - откроется соответствующее окно.

В этом окне выберите один из следующих режимов диагностики и устранения неполадок.

  • Подключения к интернету - если возникли проблемы с подключением к Интернету, то щелкните на этом пункте. На следующем этапе система попросит указать, какого рода проблемы возникли: с выходом в Интернет в целом или с подключением к конкретной веб-странице. В первом случае будет выполнено тестовое подключение к сайту www.microsoft.com и при обнаружении проблем на экране появятся их описание и рекомендации по устранению. Во втором нужно указать адрес проблемного ресурса, и система выяснит причину, по которой не удается его открыть.
  • Общие папки и Домашняя группа - эти режимы используют для диагностики и устранения сетевых ошибок, которые возникают при работе с подключением к общим папкам на чужих компьютерах: первый - если доступ осуществляется с рабочего компьютера, второй - если ваш ПК подключен к домашней сети. Чтобы обнаружить проблему и просмотреть возможные способы ее устранения, укажите сетевое размещение проблемной папки.
  • Сетевой адаптер - выберите этот пункт и следуйте появляющимся на экране указаниям, если сбои обусловлены проблемами с сетевым адаптером. Все действия выполняются в пошаговом режиме, и, как правило, процесс диагностики и устранения неполадок не вызывает затруднений.
  • Входящие подключения - при возникновении трудностей с входящими подключениями (когда компьютер недоступен для других участников сети) щелкните на этом пункте. Помимо прочего, мастер диагностики и устранения неполадок проверит, не влияют ли на возникновение проблем защитные настройки брандмауэра.

Диагностика сети Windows 10

В Windows 10 у вас есть новый инструмент под названием "Средство устранения сетевых неполадок". Вы можете найти его, нажав на значок поиска в левом нижнем углу и введите слово Сеть. В результатах поиска нажмите на "Проверка состояния сети" >> "Средство устранения сетевых неполадок".

Еще один способ добраться до диагностики сетей, это открыть Параметры >> Сеть и Интернет >> Средство устранения сетевых неполадок.

При запуске Диагностики проблем с сетью начинается процесс выявления ваших проблем с подключением. Через некоторое время этот инструмент покажет, удалось ли найти какие-либо проблемы или нет. Когда проблема найдена, Windows Network Diagnostics покажет описание и предложить решение, если это возможно.

Сети на базе TCP/IP содержат большое количество удобных утилит и команд, позволяющих наблюдать за статусом сети и диагностировать возникающие проблемы (табл. 7.1).

Утилита pingявляется одним из основных диагностических средств в сетях TCP/IP и входит в поставку всех современных сетевых операционных систем. Функциональность ping также реализована в некоторых встроенных ОС маршрутизаторов, доступ к результатам выполнения ping для таких устройств по протоколу SNMP определяется RFC 2925 (Definitions of Managed Objects for Remote Ping, Traceroute, and Lookup Operations).

Так как программа использует ICMP и создает raw-пакеты, для ее выполнения в unix-системах необходимы права суперпользователя. Чтобы обычные пользователи могли использовать ping, на /bin/ping ставят SUID бит в права доступа (chmod4755 /bin/pingи попросить выполнить эту команду администратора). Пример запуска утилиты ping:

Пример. Запуск ping.

%ping -c 3 fpm2.ami.nstu.ru

PING fpm2.ami.nstu.ru (217.71.130.131): 56 data bytes

64 bytes from 217.71.130.131: icmp_seq=0 ttl=57 time=5.458 ms

64 bytes from 217.71.130.131: icmp_seq=1 ttl=57 time=3.088 ms

64 bytes from 217.71.130.131: icmp_seq=2 ttl=57 time=1.927 ms

Fpm2.ami.nstu.ru ping statistics ---

3 packets transmitted, 3 packets received, 0.0% packet loss

round-trip min/avg/max/stddev = 1.927/3.491/5.458/1.469 ms

Таблица 7.1

Утилита (команда)

Назначение

Примеры использования

Используется для отправки ЭХО-запросов на указанный узел сети. Простое, но незаменимое средство диагностики сети

ping -c 7 saturn

Используется для определения маршрута следования пакетов от вашего хоста до указанного хоста

traceroute -I fpm2.ami.nstu.ru

Конфигурирует или отображает параметры сетевых интерфейсов хоста (для протоколов стека TCP/IP)

Выводит информацию о сетевых соединениях, статистику по сетевым интерфейсам и т. п.

Отображает или модифицирует таблицу протокола ARP (преобразование IP в MAC-адреса)

Выводит различную информа-цию о системе

То же, что и ifconfig, но для Windows XP

То же, что и traceroute, но для Windows XP

tracert tom.interface.nsk.su

Утилита tracerouteпредназначена для определения маршрутов следования данных в сетях TCP/IP. Она выполняет отправку данных указанному узлу сети, при этом отображая сведения о всех промежуточных маршрутизаторах, через которые прошли данные на пути к целевому узлу. В случае проблем при доставке данных до какого-либо узла программа позволяет определить, на каком именно участке сети возникли неполадки.

tracerouteвходит в поставку большинства современных сетевых операционных систем. В системах Microsoft Windows эта программа носит названиеtracert , а в системах GNU/Linux –traceroute .

Для определения промежуточных маршрутизаторов tracerouteотправляет серию пакетов целевому узлу, при этом каждый раз увеличивая на 1 значение поля TTL («время жизни»). Это поле обычно указывает максимальное количество маршрутизаторов, которое может быть пройдено пакетом. Первый пакет отправляется с TTL, равным 1, и поэтому первый же маршрутизатор возвращает обратно сообщение ICMP, указывающее на невозможность доставки данных.Tracerouteфиксирует адрес маршрутизатора, а также время между отправкой пакета и получением ответа (эти сведения выводятся на монитор компьютера). Затемtracerouteповторяет отправку пакета, но уже с TTL, равным 2, что позволяет первому маршрутизатору пропустить пакет дальше.

Процесс повторяется до тех пор, пока при определенном значении TTL пакет не достигнет целевого узла. При получении ответа от этого узла процесс трассировки считается завершенным.

На оконечном хосте IP-дейтаграмма с TTL = 1 не отбрасывается и не вызывает ICMP-сообщения типа срок истек , а должна быть отдана приложению. Достижение пункта назначения определяется следующим образом: отсылаемыеtracerouteдейтаграммы содержат UDP-пакет с таким номером UDP-порта адресата (превышающим 30000), что он заведомо не используется на адресуемом хосте. В пункте назначения UDP-модуль, получая подобные дейтаграммы, возвращает ICMP-сообщения об ошибке «порт недоступен». Таким образом, чтобы узнать о завершении работы, программеtracerouteдостаточно обнаружить, что поступило ICMP-сообщение об ошибке этого типа.

Примерв Windows:

C:\Documents and Settings\dnl>tracert fpm2.ami.nstu.ru

Пример.Результат выполнения командыtracert

Трассировка маршрута к fpm2.ami.nstu.ru

с максимальным числом прыжков 30:

1 2 ms 1 ms 1 ms ifgate.interface.nsk.su

2 2 ms 1 ms 2 ms cisco.n-sk.ru

3 1 ms 1 ms 1 ms router.n-sk.ru

4 2 ms 1 ms 1 ms nsk-ix.n-sk.ru

5 2 ms 1 ms 1 ms c7120.nstu.ru

6 2 ms 2 ms 1 ms ix-i.nstu.ru

7 2 ms 3 ms 1 ms ami.nstu.ru

8 2 ms 3 ms 1 ms fpm2.ami.nstu.ru

Трассировка завершена.

Запуск программы производится из командной строки. Для этого вы должны войти в нее (Пуск – Выполнить – В графе «Открыть» пишется «cmd», нажимается ОK). В открывшемся окне пишем:

tracert fpm2.ami.nstu.ru

где tracert – обращение к программе, а fpm2.ami.nstu.ru– символьное имя (DNS-имя) или IPv4 адрес.

Примерв Linux:

В Unix/Linux системах существуют режимы, в которых запуск программы возможен только от имени суперпользователя root(администратора). К числу этих режимов относится важный режим трассировки с помощьюICMP (ключ -I).

Во всех остальных случаях (и в том числе в режиме, который используется по умолчанию) traceroute может работать от имени обычного рядового пользователя (на серверахfpm2 иSaturnключ-Iиспользовать запрещено, поэтому информация, выводимая на экран, будет неполной).

Пример. Результат выполнения командыtraceroute

%traceroute -I saturn.ami.nstu.ru

traceroute to saturn.ami.nstu.ru (217.71.130.153), 64 hops max, 60 byte packets

1 ifgate (195.62.2.1) 1.262 ms 1.258 ms 1.138 ms

2 cisco.n-sk.ru (195.62.0.93) 2.798 ms 1.629 ms 1.903 ms

3 router.n-sk.ru (195.62.1.49) 1.232 ms 1.175 ms 1.170 ms

4 nsk-ix.n-sk.ru (195.62.1.80) 1.567 ms 1.446 ms 1.579 ms

5 c7120.nstu.ru (217.71.128.237) 1.771 ms 1.659 ms 1.582 ms

6 ix-i.nstu.ru (217.71.128.70) 2.040 ms 1.593 ms 1.753 ms

7 ami.nstu.ru (217.71.131.2) 2.996 ms 2.718 ms 1.612 ms

8 saturn.ami.nstu.ru (217.71.130.153) 4.268 ms 3.108 ms 2.051 ms

Замечание. Утилитаtracerouteиспользуется в том числе и в познавательных целях, например, чтобы определить, почему внутри одного города между провайдерами так долго проходят пакеты. Оказалось, пакеты передавались не через внутреннюю точку обмена трафиком, а через город на другом континенте. В отчете по лабораторной работе желательно привести подобный случай для Новосибирска.

Утилиту ifconfig мы будем использовать не для конфигурирования сетевых интерфейсов, а в познавательных целях для получения информации о состоянии активных сетевых интерфейсов. Для этого, находясь на определенном хосте, выполняем утилиту ifconfig без параметров (опций) и анализируем полученные результаты.

Утилита netstat служит для определения состояния сетевых структур данных. Вы можете посмотреть таблицы маршрутизатора на вашей машине, детальную информацию о различных используемых протоколах и т. д. C опцией -i эта команда выдает информацию о сетевых интерфейсах на вашей машине.

Примериспользования команды netstat (для операционной системы SunOC):

name MTU Net/Dest Address Ipkts Ierrs Opkts Oerrs Collis Queue

le0 1500 solar sun 7442667 27558 736826 33 125361 0

lo0 536 loopback localhost 1283 0 1283 0 0 0 ,

где name – имя сетевого интерфейса;

lo0 – циклический (loopback) интерфейс (или «заглушка»), используемый для проверки сетевых протоколов;

MTU – (Maximum Transmition Unit) размер в байтах максимального пакета данных, поддерживаемого данным интерфейсом. Для Ethernet MTU=1500, для FDDI – 4428, для lo0 – 536;

Net/Dest – назначение сети. Это имя, значение которого можно получить по номеру сети (Network Number), может быть установлено в файле /etc/networks;

Address – имя машины (опция -n позволяет вывести также IP-адрес);

Ipkts/Ierrs – число пришедших пакетов и число ошибок;

Opkts/Oerrs – то же самое для исходящих пакетов;

Collis – число произошедших коллизий. Величина, называемая коэффициентом коллизий (collision rate), вычисляется как (Collis/Opkts)*100. Хорошим считается коэффициент 0…2 %, при 3…5 % можно начинать беспокоиться, если же он больше 5 %, дела совсем плохи;

Queue – число пакетов, ожидающих прохождения через интерфейс. В большинстве случаев таких пакетов нет.

Пример использования утилиты netstat дляLinux:

Bash-3.2$ netstat -i

Kernel Interface table

Iface MTU Met RX-OK RX-ERR RX-DRP RX-OVR TX-OK TX-ERR TX-DRP TX-OVR Flg

eth0 1500 0 173351491 0 0 0 156580779 0 0 0 BMRU

eth1 1500 0 183024 0 0 0 247635 0 0 0 BMRU

lo 16436 0 547246 0 0 0 547246 0 0 0 LRU

Лабораторная работа № 15

15.1 Цель работы - приобретение практических знаний и навыков в на-
стройке программного обеспечения (ПО) ПЭВМ для обеспечения функцио-
нирования в составе локальной компьютерной сети.

15.2 Теоретические основы.

Утилита ping

Утилита ping тестирует сетевое соединение путем посылки ICMP-пакетов типа 8 (запрос эха), на которые получатель отвечает ICMP-пакетом типа 0 (эхо-ответ). С помощью этой утилиты удобно проверять наличие пу­ти до заданного узла и определять временные характеристики этого пути. Утилите ping достаточно указать IP-адрес или DNS-имя, однако имеется ряд параметров, позволяющих более тонко управлять ее работой. Утилита ping выводит результат каждого запроса/ответа на отдельной строке, а перед за­вершением работы выдает статистику: минимальное, максимальное и среднее время передачи пакета, количество и долю потерянных пакетов. Фактически ping является "рабочей лошадкой при тестировании сетевых со­единений.

Общий формат использования утилиты (как всегда, находящиеся в квад­ратных скобках параметры опциональны): ping [-t] [-a] [-n число] [-l размер] [-f] [-i TTL] [-v TOS] [-r число] [-s число] [[-j списокУзлов] | [-k списокУзлов]] [-w таймаут] конечноеИмя. Для получения такой подсказки достаточно запустить ping без параметров, для вывода подсказки в файл ping_test.txt следует использовать ping > ping_test.txt (то же относится и к большинству иных утилит).

Параметр "-t" включает постоянную проверку связи до нажатия Ctrl+C. При нажатии Ctrl+Break выводится статистически накопленная информация и работа продолжается (обычно этот параметр используют, чтобы как можно быстрее узнать о наличии связи с заданным узлом).

Параметр "-а" требует определение IP-адреса по имени узла (по умолча­нию не выполняется).

Параметр "-n <число>" позволяет задать количество запросов (по умол­чанию четыре запроса).

Параметр "-l <число>" дает возможность задать размер пакета (по умолча­нию размер пакета 64 байта).

Параметр "-f" позволяет установить в запросах флаг "не фрагменти-ровать". Используется в сочетании с параметром "-1"для обнаружения се­тей с малым размером кадра, для передачи через которые IP-пакеты приходится фрагментировать.

Параметр "-i <число>" задает время жизни пакета (TTL), по умолчанию у ICMP-пакетов время жизни равно 255.

Параметр "-r <число>" дает возможность получить маршрут, по которо­му передавались запрос и ответ (показать маршрутизацию). Числовой па­раметр может быть от 1 до 9 и определяет максимальное количество узлов, которые будут показаны в маршруте.

Параметр "-w <число>" позволяет задать время ожидания каждого пакета (в миллисекундах), по умолчанию это 1"000 миллисекунд.

Утилита tracert

Утилита tracert дает возможность проследить маршрут пакетов до задан­ного узла и получить временные характеристики для каждого промежуточ­ного маршрутизатора на этом пути. Эта утилита, как и ранее описанная ping, отправляет серию пакетов ICMP типа 8, но с разными значениям TTL: сна­чала отправляется три пакета с TTL=1 (на эти пакеты ближайший маршру­тизатор ответит пакетами ICMP типа 11 (истекло время передачи), из ко­торых будет извлечен его адрес), затем с TTL=2 (на эти пакеты ответит вто­рой маршрутизатор) и так далее до тех пор, пока не будет достигнут задан­ный узел или значение TTL не превысит порог. Для каждого TTL утилита выводит по одной строке с адресом маршрутизатора (и, возможно, с его до­менным именем - если удалось его разрешить) и тремя значениями времени, которое понадобилось для передачи пакета. Формальный синтаксис: tracert [-d] [-h максЧисло] [-j списокУзлов] [-w интервал] имя.

Параметр "-d" позволяет (принудительно) не выполнять разрешение IP-адресов маршрутизаторов в доменные имена, это позволяет ускорить работу утилиты за счет отмены обращения к службе DNS.

Параметр "-h <число>" дает возможность задать порог, до которого будет расти TTL (по умолчанию - 30).

Параметр "-w <число>" позволяет задать время ожидания каждого пакета (в миллисекундах), по умолчанию 1"000 миллисекунд.

Утилита pathping

Утилита pathping фактически совмещает функциональность утилит ping и tracert и выполняется в две фазы: сначала, подобно tracert, собирается и вы­водится маршрут до заданного узла (только IP-адреса и имена) и затем, по­добно ping, в течение некоторого времени (чем дольше выполнялась трасси­ровка, тем больше будет это время) собирается статистика времен передачи пакетов, количеств и относительных долей потерянных пакетов для каждого из промежуточных маршрутизаторов (а не только для заданного узла, как ping).

Формальный синтаксис: pathping [-g Список] [-h Число_прыжков] [-i Адрес] [-n] [-p Пауза] [-q Число_запросов] [-w Таймаут] [-P] [-R] [-T] [-4] [-6] узел

Наиболее полезен результат работы второй фазы утилиты pathping - он на­глядно показывает, на каком из маршрутизаторов имеются проблемы с пере­дачей пакетов. Для Windows существует мощный визуальный (показывает движение пакетов на карте Планеты) трассировщик VisualRoute фирмы Visu-alWare (http://visualware.com ).

Утилита агр

Утилита агр дает возможность просматривать и изменять ARP-таблицу, в которой хранятся пары "ММАС-адрес - IP-адрес" для тех узлов, с которыми в недавнем происходил обмен данными. Эта таблица формируется автомати­чески при работе сетевого узла, но администратор сети может вносить в нее записи вручную. Формальный синтаксис: arp -s inet_addr eth_addr или ARP -d inet_addr или ARP -a [-N if_addr]. Здесь if_addr суть зада­ет номер интерфейса.

Параметр "-а" позволяет вывести всю ARP-таблицу на экран.

Параметр "-а <1Р-адрес>" запрашивает вывод записи об узле с заданным адресом на экран.

Параметр "-S <1Р-адрес> <МАС-адрес>" позволяет добавить запись об узле с заданными адресами в ARP-таблицу.

Параметр "-d <1Р-адрес>" служит для удаления записи об узле с заданным адресом из ARP-таблицы.

Параметр "-d *" очищает ARP-таблицу.

Утилита hostname

Утилита hostname всего-навсего выводит имя узла. Может быть использова­на в файлах сценариев для пакетной обработки.

Утилита ipconfig

Утилита ipconfig отображает и настраивает настройки протоколов TCP/IP. Без дополнительных параметров выводится IP-адрес, маска подсети и шлюз по умолчанию для всех сетевых интерфейсов. С параметром "/all" кроме сказанно­го, выводятся МАС-адреса сетевых интерфейсов, имя узла, адреса серверов DNS и WINS и некоторая другая информация. Формальный синтаксис: ipconfig | /renew [адаптер] | /flushdns | displaydns /registerdns | /showclassid адаптер | /setclassid адаптер [устанавливаемый_код_ класса_dhcp]].

Параметр "/flushdns" очищает кэш разрешенных имен DNS.

Параметр "/displaydns" выводит кэш разрешенных имен DNS на экран.

Параметр "/release [адаптер]" освобождает арендованный по DHCP (Dynamic Host Configuration Protocol) IP-адрес (если указан адаптер, то только для этого адаптера, иначе для всех адаптеров).

Параметр "/renew [адаптер]" запрашивает обновление аренды по DHCP ЕР-адреса (если указан адаптер, то только для этого адаптера, иначе для всех адат"еров).

Параметр "/registerdns" запрашивает обновление аренды по DHCP всех адре­сов и повторную их регистрацию в DNS.

Утилита route

Утилита route отображает таблицу маршрутов и позволяет ее изменять. Фор­мальный синтаксис: route [-f] [-p] [команда [узел]] [шлюз] . При использовании route параметр "метрика" определяет ка­чество данного маршрута (в хопах - количестве промежуточных маршрутизато­ров, времени прохождения пакета по линиям связи, характеристикой надежно­сти линии связи на данном маршруте и т.п.) в соответствие с заданным в сете­вом пакете критерием (т.н. классом сервиса).

Команда "PRINT" выводит таблицу маршрутов: сетевой адрес; маска сети; адрес шлюза; интерфейс; метрика, команда "ADD" позволяет добавить новый маршрут, "DELETE" - удалить маршрут, "CHANGE" - изменить (существующий) маршрут).

Утилита netstat

Утилита netstat отображает текущие соединения, порты, ожидающие соеди­нения и статистические данные по протоколам TCP/IP. Без дополнитель-н^1х параметров выводится список текущих соединений (протокол: TCP или UDP; локальный адрес и порт; внешний адрес и порт; состояние соедине­ния). Формальный синтаксис: netstat [-a] [-e] [-n] [-s] [-p имя] [-r] [интервал]

Параметр "-а" дополнительно отображает порты, ожидающие соедине­ния; ожидающие TCP-порты обозначены состоянием "LISTENING", a UDP-порты - внешним адресом

Параметр "-n" требует выводить все адреса и номера портов в числовом формате, поскольку по умолчанию netstat пытается разрешить IP-адреса и имена и заменить номер порта на его имя.

Параметр "-r" выводит таблицу маршрутов (сетевой адрес; маска сети; адрес шлюза; интерфейс; метрика). Подобную информацию можно получить с помощью утилиты route.

Параметр "-е" позволяет получить статистику Ethernet.

Параметр "-s" выводит статистику по протоколам TCP, UDP и IP.

Параметр "-е <протокол>" применяется совместно с параметром "-s" для ог­раничения выдаваемой статистики заданным протоколом (TCP, UDP или IP).

Утилита nbtstat

Утилита nbtstat отображает статистику протокола и текущих подключений TCP/IP при использовании технологии NetBIOS через TCP/IP. Формальный синтаксис: nbtstat [-a Узел] [-A IP-адрес] [-c] [-n] [-r] [-R] [-RR] [-s] [-S] [интервал].

Параметр "-с" дает возможность просматривать содержимое кэша разре­шенных имен.

Параметр "-n" позволяет просматривать список зарегистрированных дан­ным компьютером локальных NetBIOS-имен.

Параметр "-а <имя удаленного компьютера>" выводит содержимое таблицы имен для удаленного компьютера, указанного по имени.

Параметр "-А " выводит содержимое таб­лицы имен для удаленного компьютера, указанного по IP-адресу.

Параметр "-r" дает возможность просматривать статистические данные о разрешении имен.

Параметр "-интервал" задает циклический вывод статистики через указан­ный интервал в секундах (прекращение вывода - Ctrl+C).

15.3 Необходимое оборудование - IBM PC-совместимая ЭВМ, подключен-
ная к компьютерной сети с помощью Ethernet-сетевой карты.

15.4 Порядок проведения работы. Проверка работоспособности сетевого соединения с использованием стандартных утилит Windows. При этом следует проверить корректность задания хотя бы одного адреса DNS-сервера (рекомендуется, например, 192.190.241.65) при настройке сетевого ПО, иначе сопоставление IP-адреса заданному доменному имени окажется невозможным. Типовыми заданиями являются:

Просмотр и анализ настроек стека протоколов TCP/IP с использованием утилиты ipconfig.

Тестирование сетевого соединения утилитой ping (конечный адрес ука­зывается преподавателем - им может быть, напр., IP-адрес местного Proxy-сервера, адрес одной из машин в сети, доменное имя некоторого узла в Сети и др.).

Прослеживание маршрута пакетов до заданного узла утилитой tracert.

Отображение и изменение таблицы хранения соответствия МАС- и IP-адресов с помощью утилиты arp.

Просмотр текущих сетевых соединений, портов, TCP/IP-статистики ути­литой netstat.

Отображение статистики протокола и текущих подключений TCP/IP при использовании NetBIOS через TCP/IP утилитой nbtstat.

Отображение и изменение таблицы маршрутов утилитой route (препода­вателем может быть задано изменение или дополнение маршрутов).

2.5 Оформление отчета по работе. В отчете указываются параметры ис­пользуемой сети (тип ПЭВМ, MAC- и IP-адреса сетевой карты, тип и число портов коммутатора, топология локальной сети).

При использовании утилит ping, tracert или pathping необходимо отметить время передачи пакетов (обычно среднее), число и долю потерянных пакетов (по ней сделать вывод о корректности работы каждого промежуточного маршрутизатора).

При использовании утилиты netstat необходимо зафиксировать назначение TCP- и UDP-портов имени ПЭВМ, локальному адресу и их состояние (пара­метр "-a"). Общую статистику обменов можно получить при использовании параметра "-e", с использованием параметра "-s" следует зафиксировать и проанализировать статистику по всем протоколам стека TCP/IP (включая

При использовании утилиты nbtstat первым шагом рекомендуется просмот­реть таблицы NetBIOS-имен на локальном компьютере (параметр "-n") и далее на других компьютерах в сети (параметры " -a" или " -A").

При использовании утилиты route (с параметром PRINT для вывода на эк­ран) просматривается как список интерфейсов, так и список активных мар­шрутов. Удаление маршрута достигается вводом route DELETE узел (где узел -IP-адрес удаляемого из маршрута узла), добавление - route ADD узел MASK маска шлюз METRIC метрика IF интерфейс (где узел - IP-адрес добавляемого узла, маска - значение маски, шлюз - IP-адрес шлюза, метрика - значение мет­рики добавляемого маршрута, интерфейс - номер сетевого интерфейса; может быть опущен, тогда выбирается наиболее подходящий для указанного шлю­за).

Данная статья специально для тех, кто понимает, что такое IP-адрес, DNS и основной шлюз сети, а также знаком с терминами провайдер, сетевая карта и т.д. Обзор этих терминов, возможно, будет опубликован отдельно.

Поскольку статья написана для большой аудитории от простого пользователя Windows до начинающего администратора UNIX или пользователя MacOS, я решил выделить 2 части. В первой части статьи я расскажу о методах обнаружения и устранения сетевых ошибок средствами операционной системы Windows, во второй части – средствами UNIX-подобных ОС, таких, как Linux, FreeBSD, MacOS. И так, у Вас не работает Интернет, в отличии от Ваших коллег, соседей, жены, которые работают через один и тот же роутер/сервер и т.д. Что делать?

Диагностика и устранение ошибок сети штатными средствами ОС Windows

Для начала нам потребуется рабочий инструмент. Повторюсь, никаких сторонних программ устанавливать мы не будем, используем только то, что есть в составе ОС. Итак, запускаем Командную строку. Для тех, кто не знает, это черное окошко с белыми буковками. Находится она в меню Пуск->Все программы->Стандартные-> Командная строка. Быстро вызвать ее также можно через поиск в Windows7/Windows8 по фразе cmd или Пуск->Выполнить->cmd в WindowsXP.

Мигающий курсор говорит нам о том, что программа готова к вводу команд. Все эти команды мы будем вбивать не обращая внимания на то, что написано до этого курсора.

Шаг 1: проверяем состояние оборудования, наличия подключения(кабеля)

За все это отвечает команда ipconfig. Набираем ipconfig /all и нажимаем Enter. Таким же образом мы будем набирать и остальные команды. Обращаю внимание, что сама команда ipconfig запускается с параметром all, который обязательно отделяется пробелом и знаком косой черты /. Отреагировав на команду ipconfig, система нам вывела несколько экранов информации, в которые нам предстоит вникнуть, чтобы правильно диагностировать и устранить проблему сети.

Как видно на скриншоте, для каждого сетевого адаптера система вернула настройки. Если у Вас выведена только фраза Настройка протокола IP для Windows , значит в системе вообще не обнаружены сетевые адаптеры: здесь возможны варианты выхода из строя оборудования, отсутствия драйверов или аппаратное выключение, например кнопка на ноутбуке, которая выключает беспроводные сети.

Поскольку у меня ноутбук, были обнаружено несколько доступных сетевых адаптеров. Особо я выделю

Если у Вас, как, например, в моем случае, применимо к выделенной проводной сети в строке Состояние среды значится фраза Среда передачи недоступна значит налицо неподключенный или испорченный кабель/розетка/порт коммутатора и т.п. В случае наличия физического подключения, как например у меня в Wi-Fi сети, будут выведены основные настройки (мы рассмотрим только некоторые из них):

  • Описание : здесь, как правило, указывается сетевой адаптер, определенный системой (виртуальные адаптеры, типа Microsoft Virtual и т.п. не имеет смысла рассматривать вообще, нам нужны только физические);
  • DHCP включен : важный параметр, который указывает, как был получен адрес: автоматически через DHCP(будет значение Да ) или установлен вручную(будет значение Нет );
  • IPv4-адрес : IP-адрес в TCP/IP сети – один из трех самых важных параметров, который понадобится нам в дальнейшем;
  • Маска подсети : Еще один важный параметр;
  • Основной шлюз : 3-й важный параметр – адрес маршрутизатора/шлюза провайдера, как правило совпадает с DHCP-сервером, если настройки получены автоматически;
  • DNS-серверы : адреса серверов, которые преобразуют имена хостов в IP-адреса.

Шаг2: проверяем правильность IP-адреса

В случае, если у Вас настройки получаются автоматически (опция DHCP включен - Да), но не заполнен параметр Основной шлюз и DNS-серверы , служба DHCP не работает на роутере или сервере. В этом случае нужно убедиться, что роутер включен (возможно попробовать его перезагрузить), в случае сервера, что служба DHCP работает и назначает адреса.

После перезагрузки роутера, необходимо, обновить настройки. Для этого можно перезагрузить компьютер или просто выполнить 2 команды:

  • ipconfig /release – для сброса всех автоматических настроек
  • ipconfig /renew – чтобы получить автоматические настройки

В результате обеих команд мы получим вывод, аналогичный выводу команде ipconfig /all. Наша задача добиться того, чтобы были заполнены IPv4-адрес, Маска подсети, Основной шлюз, DNS-серверы. Если настройки назначаются вручную – проверяем, чтобы были заполнены IPv4-адрес, Маска подсети, Основной шлюз, DNS-серверы. В случае домашнего интернета эти настройки могут быть указаны в договоре с провайдером.

Шаг 3: проверяем доступность своего оборудования и оборудования провайдера

После того, как все настройки получены, необходимо проверить работоспособность оборудования. К слову сказать, вся сеть представляет собой цепочку шлюзов. Первый из них и есть тот Основной шлюз , который выдала нам команда ipconfig, следующий – шлюз, являющийся основным для провайдера и так далее до достижения нужного узла в сети Интернет.

И так, для проверки сетевых устройств в Windows служит команда ping и для того, чтобы правильно диагностировать проблему в работе сети необходимо выполнить пинг для следующих адресов в последовательности:

  1. Свой компьютер (IPv4-адрес). Наличие отклика свидетельствует о работоспособности сетевой карты;
  2. Роутер или сервер, выполняющий роль Интернет-шлюза (Основной шлюз). Наличие отклика свидетельствует о правильной настройки компьютера для работы в локальной сети и доступности шлюза, отсутствие отклика свидетельствует либо о неверных настройках, либо о неработающем роутере/сервере.
  3. Ваш IP у провайдера (обычно указан в договоре с провайдером – настройки, IP-адрес). Наличие отклика свидетельствует о правильной настройки Вашего компьютера, роутера/сервера, отсутствие отклика – либо о неверной настройки роутера, либо о недоступном шлюзе провайдера/ неполадках на стороне провайдера.
  4. DNS (DNS-серверы). Наличие отклика свидетельствует о корректной работе сетевого протокола – если в этом случае не работает Интернет, скорее всего дело в самой операционной системе, вирусном заражении, программных блокировках, как со стороны провайдера, так и самого компьютера/шлюза.
  5. IP-адрес любого рабочего хоста в сети, например я использую DNS-сервер Google – 8.8.8.8. Отклик свидетельствует о правильной работе сетевого оборудования как с Вашей стороны, так и со стороны провайдера. Отсутствие отклика свидетельствует об ошибках, которые дополнительно диагностируются трассировкой.
  6. URL любого сайта, например yandex.ru. Отсутствие отклика может свидетельствовать о неработающей службе распознавания адресов, если не удалось преобразовать url в IP-адрес. Это проблема скорее всего службы DNS-клиент, которая отключена в Windows на Вашем ПК, либо работает не правильно.

Для рассматриваемого примера будут выполнены следующие команды.

При положительном тесте будет выведено количество отправленных и полученных пакетов, а также время прохождения пакета до узла сети.

Характерные ошибки выглядят подобным образом.

Шаг 4: Тестирование трассировкой

Также общую картину можно получить, если воспользоваться трассировкой. Суть теста в том, что пакет проходит по всем шлюзам от тестируемого компьютера до узла сети. В качестве узла сети может быть шлюз провайдера, какой-либо сервер или просто url сайта.

Для запуска необходимо применить команду tracert. В примере, я буду тестировать сайт yandex.ru:

На первом шаге хост преобразуется в IP-адрес, что свидетельствует о правильной работе DNS-служб и верной настройке сети. Далее по порядку пакет проходит по всем шлюзам сети до назначения:

  • 1-Основной шлюз
  • 2,3-Шлюзы провайдера (может быть 1 или несколько)
  • 4,6-Промежуточный шлюзы
  • 5-Один из шлюзов не доступен
  • 7-Нужный нам сайт yandex.ru

Диагностика неисправности сети в этом тесте помогает определить на каком именно узле имеется неисправность. Так, например, если пакет не уходит дальше 1-й строки (Основной шлюз), значит существует проблема с роутером или ограничения на стороне провайдера. 2-я строка – проблема на стороне провайдера и т.д.

Шаг 5: Тестирование отдельных протоколов

При успешном прохождении всех вышеперечисленных тестов можно утверждать о правильной настройке сети и работе провайдера. Однако и в этом случае могут некорректно работать некоторые клиентские программы, например электронная почта или браузер.

Связано это может быть как с проблемами на самом компьютере (например, вирусное заражение или неправильные настройки программы или вовсе ее неработоспособность), так и с ограничительными мерами, применяемыми провайдером (блокирование 25-го порта для отправки почты).

Для диагностики этих проблем применяется программа telnet. По умолчанию в ОС Windows 7 и выше, данный компонент не установлен. Для установки необходимо перейти в Пуск-Панель-Управления->Программы(Программы и компоненты, Установка и удаление программ в зависимости от версии ОС), перейти в Включение и отключение компонентов Windows (для этого требуются права администратора) и установив галочку напротив Клиент Telnet нажать OK.

Теперь мы можем приступать к тестированию сетевых портов. Для примера, проверим работоспособность почтового протокола.

У меня есть корпоративный почтовый ящик, который располагается на хостинге RU-CENTER. Адрес сервера: mail.nic.ru, сообщения перестали поступать по протоколу POP3, стало быть порт 110 (адрес сервера и номер порта я взял из настроек Outlook). Таким образом для того, чтобы проверить, имеет ли мой компьютер доступ к серверу mail.nic.ru по порту 110 в командной строке я запишу:

telnet mail.nic.ru 110

Далее сервер выдал мне статус моего обращения +ОК , что свидетельствует о корректной работе как сети в целом, так и почтовой службы в частности и в неработающей почте скорее всего виноват почтовый клиент.

Убедившись в этом, я набираю команду quit, на что сервер снова ответил мне +ОК и тем самым завершил сеанс работы команды telnet.

Таким образом, с помощью штатных средств операционной системы Windows мы можем диагностировать и устранить проблему сети. В следующей части статьи, я расскажу о штатных средствах диагностики в UNIX-подобных ОС, таких, как Linux, FreeBSD и MacOS.

Лекция 13 Диагностика сетей

Лекция 13

Тема: Диагностика сетей

а. Администраторы сети, которые формируют сетевую среду (подавляющее меньшинство).

б. Пользователи сети, кто вынужден эту среду осваивать и в ней жить.

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

Число компьютерных сетей увеличивается лавинообразно, растет число больших (>10 ПК) и многопротокольных сетей (802.11, 802.16, 802.17 и т.д.). По мере увеличения сети усложняется ее обслуживание и диагностика, с чем сталкивается администратор при первом же отказе. Наиболее сложно диагностировать многосегментные сети, где ПК разбросаны по большому числу помещений, далеко отстоящих друг от друга. По этой причине сетевой администратор должен начинать изучать особенности своей сети уже на фазе ее формирования и готовить себя и сеть к будущему ремонту.

При возникновении нештатной ситуации администратор должен суметь ответить на ряд вопросов:

Связана проблема с оборудованием или программным обеспечением;

Отказ вызван повреждением программы, неверным выбором конфигурации или ошибочными действиями оператора.

Сетевая диагностика - это получение и обработка информации о состоянии сети.

Документирование сети

Начинать надо с исчерпывающего документирования аппаратной и программной части сети. Администратор всегда должен иметь под рукой схему сети, отвечающую реальному положению на текущий момент, и подробное описание конфигурации программного обеспечения с указанием всех параметров (физические и IP-адреса всех интерфейсов, маски, имена ПК, маршрутизаторов, значения MTU, MSS, TTL и других системных переменных, типовые значения RTT и других параметров сети, измеренных в разных режимах.).

В пределах локальной сети поиск неисправности возможен с помощью временного деления ее на части. По мере интеграции сети в Интернет такие простые меры становятся недостаточными или недопустимыми. Но не следует пренебрегать такими простыми средствами, как проверка отсутствия обрыва или закоротки сетевого кабеля.

Следует помнить, что сетевая диагностика является основой сетевой безопасности. Только администратор, знающий все о том, что происходит в сети, может быть уверен в ее безопасности.

В лекции будет предполагаться, что сеть на физическом уровне использует стандарт Ethernet, а для межсетевой связи протокол TCP/IP (Интернет). Этим перечнем разнообразие сетевых сред не исчерпывается, но многие приемы и программные диагностические средства с успехом могут использоваться и в других случаях. Большинство из рассматриваемых программ работают в среде UNIX, но существуют их аналоги и для других ОС.

Источником диагностической информации может быть компьютер, его процессор, сетевой интерфейс, операционная система, установленная на машине, сетевые перключатели, маршрутизаторы и т.д.

При переходе на стандарты передачи 1 и тем более 10Гбит/с возникают дополнительные проблемы. Обработка таких потоков с целью диагностики может существенно замедлить работу машины. Аналогичные проблемы возникают при построении IPS/IDS-систем, а также антивирусных программ. Впрочем эта проблема становится тяжелой также из-за фантастического роста числа сигнатур (миллионы) атак и вирусов. Одним из способов решения задачи является привлечение аппаратных средств, а также организация нескольких потоков обработки, что достаточно реально для машин с несколькими процессорами.

Программные средства диагностики

В Интернет имеется немало общедоступных специализированных диагностических программных продуктов: Etherfind, Tcpdump , netwatch, snmpman, netguard, ws_watch.

Такие средства входят также и в комплекты поставки большинства стандартных сетевых пакетов для ОС MS-DOS, UNIX, Windows NT, VMS и других: ping, tracetoute, netstat, arp, snmpi, dig (venera.isi.edu /pub), hosts, nslookup, ifconfig, ripquery. Перечисленные выше диагностические программы являются необходимым инструментом для отладки программ, передающих и принимающих пакеты.

Диагностические команды ОС

Таблица 1.

Название команды Назначение

arp Отображает или модифицирует таблицу протокола ARP (преобразование IP в MAC-адреса)

chnamsv Служит для изменения конфигурации службы имен на ЭВМ (для TCP/IP)

chprtsv Изменяет конфигурацию службы печати на ЭВМ-клиенте или сервере

gettable Получает таблицы ЭВМ в формате NIC

hostent Непосредственно манипулирует записями адресного соот-ветствия ЭВМ в конфигурационной базе данных системы

hostid Устанавливает или отображает идентификатор данной ЭВМ

hostname Устанавливает или отображает имя данной ЭВМ

htable Преобразует файлы ЭВМ в формат, используемый программами сетевой библиотеки

ifconfig Конфигурирует или отображает параметры сетевых интерфейсов ЭВМ (для протоколов TCP/IP)

ipreport Генерирует сообщение о маршруте пакета на основе специфицированного маршрутного файла

iptrace Обеспечивает отслеживание маршрута движения пакетов на интерфейсном уровне для протоколов Интернет

lsnamsv Отображает информацию базы данных DNS

lsprtsv Отображает информацию из базы данных сетевой службы печати

mkhost Создает файл таблицы ПК

mknamsv Конфигурирует службу имен клиент ПК (для TCP/IP)

mktcpip Устанавливает требуемые величины для запуска TCP/IP на ЭВМ

namerslv Непосредственно манипулирует записями сервера имен для локальной программы DNS в базе данных конфигурирования системы

netstat Отображает состояние сети

no Конфигурирует сетевые опции

rmnamsv Удаляет TCP/IP службу имен из ЭВМ

rmprtsv Удаляет службу печати на машине клиента или сервере

route Служит для ручного манипулирования маршрутными таб-лицами

ruptime Отображает состояние каждой ЭВМ в сети

ruser Непосредственно манипулирует записями в трех отдельных системных базах данных, которые регулируют доступом внешних ЭВМ к программам

securetcpip Активизирует сетевую безопасность

setclock Устанавливает время и дату для ЭВМ в сети

slattach Подключает последовательные каналы в качестве сетевых интерфейсов

timedc Присылает информацию о демоне timed

trpt Выполняет отслеживание реализации протокола для TCP-сокетов

Для того чтобы диагностировать ситуацию в сети, необходимо представлять себе взаимодействие различных ее частей в рамках протоколов TCP/IP и иметь некоторое представление о работе Ethernet .

Сети, следующие рекомендациям Интернет, имеют локальный сервер имен (DNS, RFC-1912, -1886, -1713, -1706, -1611-12, -1536-37, -1183, -1101, -1034-35; цифры, напечатанные полужирным шрифтом, соответствуют кодам документов, содержащим описания стандартов), служащий для преобразования символьного имени сетевого объекта в его IP-адрес. Обычно эта машина базируется на ОС UNIX.

DNS-сервер обслуживает соответствующую базу данных, которая хранит много другой полезной информации. Многие ПК имеют SNMP-резиденты (RFC-1901-7, -1446-5, -1418-20, -1353, -1270, -1157, -1098), обслуживающие управляющую базу данных MIB (RFC-1792, -1748-49, -1743, -1697, -1573, -1565-66, -1513-14, -1230, -1227, -1212-13), содержимое которой поможет также узнать много интересного о состоянии вашей сети. Сама идеология Интернет предполагает богатую диагностику (протокол ICMP, RFC-1256, 1885, -1788, -792).

Использование протокола ICMP

Протокол ICMP используется в наиболее популярной диагностической программе ping (входит в поставку практически всех сетевых пакетов). Возможная форма вызова этой программы имеет вид:

ping <имя или адрес ЭВМ или другого объекта> [размер пакета] [число посылок]

В различных реализациях программа ping имеет много различных опций, которые позволяют измерять статистические характеристики канала (например, потери), определение задержки в канале (RTT), отображение посылаемых пакетов и получаемых откликов, а также определение маршрута до интересующего объекта. Ping используется для определения доступности сервис-провайдера и т.д.

Ниже приведен пример использования команды tracetoute, которая во многом эквивалентна ping (но базируется непосредственно на IP, используя соответствующие опции):

traceroute kirk.Bond.edu.au

Программа traceroute посылает по три пакета с нарастающими значениями TTL, если отклик на пакет не получен печатается символ *. Большие задержки (RTT) в приведенном примере определяются спутниковыми каналами связи (время распространения сигнала до спутника!).

Для того чтобы правильно реагировать на нештатные ситуации, надо хорошо представлять себе, как сеть должна работать в нормальных условиях. Для этого надо изучить сеть, ее топологию, внешние связи, конфигурацию программного обеспечения центральных серверов и периферийных ПК. Следует иметь в виду, что изменение конфигурации является обычно привилегией системного администратора и в любых сомнительных случаях нужно обращаться к нему. Неквалифицированные действия при реконфигурировании системы могут иметь катастрофические последствия.

Применение DNS для целей диагностики

Как уже отмечалось выше, одним из важнейших частей любого узла Интернет является сервер имен (DNS). Конфигурация DNS-сервера определяется тремя файлами: named.boot, named.ca и named.local. Зонная информация содержится в файле named.rev, а данные о локальном домене в файле named.hosts. Отладка, контроль и диагностика DNS-сервера осуществляется с использованием программ nslookup (или dig).

DNS-сервер весьма важный объект узла, от него зависит скорость обслуживания запросов и надежность системы в целом. Именно по этой причине помимо основного любой узел имеет несколько вторичных DNS-серверов.

Программа ifconfig служит для контроля состояния сетевых интерфейсов, их конфигурирования и проверки. С помощью этой команды интерфейсу присваивается IP-адрес, субсетевая маска и широковещательный адрес.

Применение NETSTAT

Одной из наиболее информативных команд является netstat (за исчерпы-вающим описанием опций и методов применения отсылаю к документации на ваше сетевое программное обеспечение).

Эта команда может вам дать информацию о состоянии интерфейсов на ПК, где она исполнена: netstat -i

В последнее время появилось несколько комплексных (общедоступных) пакетов диагностики (NetWatch, WS_watch, SNMPMAN, Netguard и др.). Некоторые из этих пакетов позволяют построить графическую модель тестируемой сети, выделяя цветом или с помощью вариации картинок работающие ЭВМ. Программы, использующие протокол SNMP, проверяют наличие посредством специального запроса доступность SNMP-демона, с помощью ICMP-протокола определяют работоспособность ЭВМ, после чего отображают переменные и массивы данных из управляющей базы данных MIB (если эта база имеет уровень доступа public). Это может делаться автоматически или по запросу оператора. SNMP-протокол позволяет мониторировать вариации загрузки отдельных сегментов сети пакетами UDP, TCP, ICMP и т.д., регистрируя количество ошибок по каждому из активных интерфейсов. Для решения этой задачи можно использовать соответствующую программу, которая регулярно опрашивает MIB интересующих вас ЭВМ, а полученные числа заносятся в соответствующий банк данных. При возникновении нештатной ситуации администратор сети может просмотреть вариации потоков в сегментах сети и выявить время и причину сбоя в системе. Аналогичные данные можно получить с помощью программы, переводящей интерфейс Ethernet в режим приема всех пакетов (mode=6). Такая программа допускает получение данных по всем типам пакетов, циркулирующих в данном кабельном сегменте.

Определенный интерес может представлять диагностическая программа ttcp, которая позволяет измерять некоторые характеристики TCP- или UDP-обменов между двумя узлами.

При переходе сетей в гигабитный диапазон скоростей, в частности на 10Гбит/с, возникают трудности мониторинга состояния сети.

Похожие публикации