Утилита ping.
Поскольку одним из основных требований к современным сетям является надежность, необходимы системы,способные эту надежность обеспечить, то есть системы поиска и диагностирования неисправностей, возникающих при работе сети. Одной из базовых команд для решения этой задачи в UNIX является команда PING ( Packet INternet Grouper - средство поиска межсетевых пакетов). Несмотря на кажущуюся простоту, этой команды очень часто бывает вполне достаточно для решения многих проблем. Команда PING тестирует сетевое соединение путем передачи дигностических пакетов конкретному узлу в сети. В свою очередь узел, получив такой пакет, должен ответить и подтвердить прием. Если ответ получен, то система работоспособна. На данный момент существует две версии этой команды: оригинальная, просто сообщающая о том, произошел или нет процесс передачи приема диагностического пакета, и усовершенствованная, выдающая развернутую информацию о процессе передачи-приема. Их использование будет подробнее рассмотрено ниже, в главе " Примеры использования команды ".
Оригинальный вариант команды PING имеет следующий формат:
PING hostname
где hostname - машина, соединение с которой тестируется.
Усовершенствованный вариант команды имеет более сложный формат:
PING [ -fnqrvR ] [ -c count ] [ -i wait ] [-l ] [ -p pattern ] [-s packetsize ] hostname
| -c count | Команда заканчивает работу
после count передач -
приемов диагностического пакета. Если ключ c не указан, то команда будет выполняться до нажатия CTRL^C. |
| -i wait | Ключ, задающий временной
интервал wait между
посылками. По умолчанию этот интервал задается равным 1 секунде. Этот ключ не совместим с ключом f. |
| -p pattern | При помощи ключа p пользователь
может наполнить 16 байт пакета,
то есть задать данные, которые будут передаваться. Это используется для дигностики проблем, связанных с передачей данных. |
| -s packetsize | Ключ s задает число
байт для пересылки packetsize.
По умолчанию задается размер в 56 байт, а вся посылка занимает 64 байта, так как к данным добавляется 8-ми байтовый заголовок ICMP протокола. |
| -f | Команда посылает очередной
пакет как только получает
ответ на предыдущий. Этот ключ может использовать только суперпользова- тель. Использование команды с таким ключом создает большую нагрузку сети и поэтому должно применяться крайне осторожно. |
| -l | Команда использует свободный путь для передачи тестовых пакетов. |
| -n | Числовой вывод. Команда не
будет выводить символьные
имена адресов. |
| -q | На экран не будет выводиться
ничего, кроме строк с
информацией о начале и завершении работы команды. |
| -R | Ключ R говорит
команде о необходимости записи
пути тестовых пакетов. Но необходимо помнить, что IP - заголовок может хранить только 9 имен узлов. Остальные будут проигнорированы . |
| -r | В этом случае команда
посылает тестовый пакет прямо
на host, минуя нормальный путь. Если host не является прямо прикрепленным к сети то команда возвращает ошибку. Команда с этим ключом используется для локальных узлов. |
| -v | Команда будет перечислять
все полученные тестовые пакеты
кроме ответов. |
Примеры использования команды.
Для понимания работы команды Ping, необходимо рассмотреть несколько примеров.
1. Пример использования оригинального варианта команды.
ping 128.138.240.26
В результате действия этой команды в случае удачного выполнения на экран будет выведено:
68 bytes from 128.138.240.26: icmp_seq=0
time=12 ms
68 bytes from 128.138.240.26: icmp_seq=1 time=11 ms
68 bytes from 128.138.240.26: icmp_seq=2 time=11 ms
68 bytes from 128.138.240.26: icmp_seq=3 time=10 ms
--------------------------------------------------------------------------
5 packets transmitted, 5 packets received, 0% packets loss
round - trip ( ms ) min/avg/max = 9/11/12
Число icmp_seq говорит
о порядковом номере посылки ( в
нашем случае от 0 до 3 ).
Число time показывает время,
прошедшее с момента отправки
пакета до получения ответа.
Данные после пунктирной линии
являются итоговыми:
Количество отправленных и
полученных, а также процент
потерянных пакетов.- первая строка.
Вторая строкаМинимальное/ Среднее/
Максимальное время по данным time.
Контрольные вопросы и ответы к ним приведены для лучшего усвоения работы команды.
Вопрос |
Ответ |
| 1. Определить,
функционирует ли машина с IP-адресом 138.116.114.1. |
ping 138.116.114.1 |
| 2.
Проверить работоспособность
узла 138.116.114.1 с помощью 6-и 60-ибайтных посылок, посылаемых через 4 секунды с заполнением их словом "HELLO" |
ping -c 6 -i 4 -p HELLO
-s 60 138.116.114.1 |
| 3.
Провести тестирование узла
138.116.114.1 без вывода текущей информации на экран. Тестирование проводить до нажатия клавиш CTRL^C |
ping -f -q
138.116.114.1 |
| 4.Провести
проверку работоспособности
узла 138.116.114.1 с записью пути до него. |
ping -R 138.116.114.1 |
| 5.Определить
среднее время передачи приема тестовых пакетов 60-ибайтовой длины на узел 138.116.114.1. Использовать 8 посылок. |
ping -c 8 -s 60
138.116.114.1 |
1."
UNIX:Руководство системного
администратора."
2. Джеймс С. Армстронг "Секреты
UNIX."
3. Питер Дайсон "UNIX:Настольный
справочник."