• Narrow screen resolution
  • Wide screen resolution
  • Wide screen resolution
OOPS. Your Flash player is missing or outdated.Click here to update your player so you can see this content.
Главная Linux Основные команды сетевой диагностики
Основные команды сетевой диагностики Печать E-mail
Рейтинг пользователей: / 1
ХудшийЛучший 
Автор: Administrator   

 

3.3.1. Основные команды сетевой диагностики


Основными утилитами сетевой диагностики ОС Linux являются ping, tarceroute, netstat, tcpdump и Isof.
Команда ping посылает ICMP-пакет ECHO_REQUEST конкретному хосту и ждет от него ответа ECHO_RESPONSE. Несмотря на простоту, команда ping является одним из основных инструментов тестирования сети. В обработке ее запроса участвуют таблицы маршрутизации, физические компоненты сетей и сетевые шлюзы, поэтому для достижения успешного результата сеть должна быть в более или менее рабочем состоянии. Команда ping имеет следующий синтаксис:

ping [опции] место_назначения
опции - разнообразные параметры, позволяющие управлять посылкой ICMP-пакетов. Наиболее часто используются опции:

  • с (--count) - количество посылаемых пакетов. Если не задан аргумент -с, то команда ping работает в бесконечном цикле. Чтобы прервать работу команды, нужно нажать клавиши <Ctrl+C>.
  • i (--interval) - интервал времени в секундах между посылкой двух пакетов.
  • s - используется для указания размера посылаемого пакета в байтах

место_назначения - целевой объект (например, хост), куда необходимо посылать ICMP-пакеты.

[root@rhe!5 ~]# ping -с 3 192.168.137.3 PING 192.168.137.3 (192.168.137.3) 56(84) bytes of data.
64 bytes from 192.168.137.3: icmp_seq=l ttl=64 time=2.71 ms
64 bytes from 192.168.137.3: icmp_seq=2 ttl=64„ time=0.289 ms
64 bytes from 192.168.137.3: icmp_seq=3 ttla=64 time=0.862 ms
--- 192.168.137.3 ping statistics ---
3 packets transmitted, 3 received, 0% packet loss, time 2001ms
rtt min/avg/max/mdev = 0.289/1.288/2.715/1.036 ms


Листинг 3.4. Пример использования команды ping.


В выводе команды ping отображается статистика по количеству переданных.принятых пакетов (packets transmitted/received), времени сессии (time) и среднему времени отклика (rtt).

Команда traceroute отображает последовательность хостов, через которые проходит IP-пакет, чтобы достичь своего места назначения. В основном, данная команда используется для проверки корректности сетевых маршрутов. Команда traceroute имеет следующий синтаксис:
traceroute [опции] пункт_назначения
опции - разнообразные параметры команды traceroute;
пункт_назначения - целевой объект (например, хост), куда необходимо посылать IP-пакеты.

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

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

В следующем листинге приведен пример использования команды netstat для просмотра сервисов и соответствующих портов, которые находятся в режиме прослушивания TCP трафика:
[root@rhel5 ~]# netstat -tl
Active internet connections (only servers)

Proto

Recv-Q

Send-Q

Local Address

Foreign Address

State

 

 

 

 

tcp

0

0

rhel5.linux.lab:smtp

*:*

LISTEN

 

 

 

 

tcp

0

0

rhel5.inux.lab:2207

*:*

LISTEN

 

 

 

 

tcp

0

0

*: ssh

*:*

LISTEN

 

 

 

 

Листинг 3.5. Пример использования команды


В данном выводе команды netstat в поле State указан статус соединения, в полях Recv-Q и Send-Q указывается количество запросов, находящихся во входящих и исходящих очередях на данном порте. Локальные и удаленные адреса указаны в формате имя_хоста:название_сервиса, где вместо названия сервиса может указываться порт. Для сопоставления имен сервисов и портов команда netstat использует файл /etc/services.

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

[root@rhe!5 ~]# tcpdump 'tcp port 22'
tcpdump: verbose output suppressed, use -v or -vv for full protocol
decode
listening on eth0, link-type ENlOMB (Ethernet), capture size 96 bytes
13:38:36.535475 IP 192 .168.137 .4. ssh > 192 .168 .137 .1. high-criteria: p 282252:282400(148) ack 1249 win 12236

Наиболее универсальным анализатором сетевых пакетов является программа wireshark (http://www.wireshark.org/), позволяющая производить анализ пакетов в графическом режиме и имеющая хорошие возможности по фильтрации, формату входных данных и методам обработки.
13:38:36.535807 IP 192.168.137.4.ssh > 192.168.137.1.high-criteria: Р
282796:282944(148) аск 1249 win 12236


Листинг 3.6. Пример использования команды tcpdump.


В выводе команды указывается сетевой интерфейс (в примере, eth0), на котором осуществляется анализ пакетов, далее указывается тип соединения (в примере, Ethernet) и размер блока обрабатываемых данных (в примере, 96 байт). После этого следует непосредственное отображение сетевых данных. В данном случае, команда tcpdump была запущена с целью отображения пакетов протокола TCP, где в качестве порта был указан 22-й порт. В результате команда tcpdump отобразила несколько пакетов, принадлежащих сеансу ssh, с указанием отправителя и получателя, размером окна и номера последовательности АСК.
Иногда, бывает необходимо определить процесс, который использует тот или иной порт. Для этих целей в ОС Linux используется команда lsof, предназначенная для отображения открытых файлов.

 

 

Добавить комментарий


Защитный код
Обновить


Авторизация


Новости с OpenNet

Проект OpenNET

Карта сайтаПартнеры