Провести пингование какого либо хоста локальной сети адрес которого не был отражен в кэше
На практике в формате команды чаще всего используются опции - t и - n.
Пример работы утилиты ping приведен на рис. 1.2.
Рис. 1.2. Пример использования утилиты ping
Утилита ping может использоваться следующими способами:
1. Для проверки того, что TCP/IP установлен и правильно сконфигурирован на локальном компьютере, в команде ping задается адрес петли обратной связи : ping 127.0.0.1
Если тест успешно пройден, то вы получите следующий ответ:
2. Чтобы убедиться в том, что компьютер правильно добавлен в сеть и IP-адрес не дублируется, используется IP-адрес локального ком-
пьютера: ping IP-адрес_локального_хоста.
3. Чтобы проверить, что шлюз по умолчанию функционирует и можно установить соединение с любым хостом в локальной сети, задается IP-адрес шлюза по умолчанию: ping IP-адрес_шлюза.
4. Для проверки возможности установления соединения через маршрутизатор в команде ping задается IP-адрес удаленного хоста: ping IP-адрес_удаленного хоста.
1.2.3.3. Утилита tracert
Имя машины может быть именем хоста или IP-адресом машины. Выходная информация представляет собой список хостов, начиная с первого шлюза и заканчивая пунктом назначения. На экран при этом выводится время ожидания ответа на каждый пакет.
В тех случаях, когда удаленный узел не достижим, применение утилиты tracert более удобно, чем ping, так как с ее помощью можно локализовать район сети, в которой имеются проблемы со связью.
Синтаксис утилиты: tracert [ -d ] [ -h maximum_hops ] [ -j host-list ] [ -w timeout ] destination-list . Параметры:
-d указывает, что не нужно распознавать адреса для имен хостов;
-h maximum_hops указывает максимальное число хопов (по умолчанию – 30);
-j host-list указывает нежесткую статическую маршрутизацию в соответствии с host - list ;
-w timeout указывает, что нужно ожидать ответ на каждый эхопакет заданное число мс;
Пример работы утилиты tracert приведен на рис. 1.3.
Рис. 1.3. Пример использования утилиты tracert
1.2.3.4. Утилита arp
Утилита arp ( Address Resolution Protocol – протокол разрешения адресов) позволяет управлять так называемым ARP-кэшем – таблицей, используемой для трансляции IP-адресов в соответствующие локальные адреса. Записи в ARP-кэше формирует протокол ARP. Если необходимая запись в таблице не найдена, то протокол ARP отправляет широковещательный запрос ко всем компьютерам локальной подсети, пытаясь найти владельца данного IP-адреса.
В кэше могут содержаться два типа записей: статические и динамические. Статические записи вводятся вручную и хранятся в кэше постоянно. Динамические записи помещаются в кэш в результате выполнения широковещательных запросов. Для них существует понятие времени жизни. Если в течение определенного времени (по умолчанию 2 мин) запись не была востребована, то она удаляется из ARP-кэша.
Синтаксис утилиты: arp [ -s inet_addr eth_addr ] [ -d inet_addr ] [ -a ].
-s inet_addr eth_addr заносит в кэш статическую запись с указанными IP-адресом и MAC-адресом;
-d inet_addr удаляет из кэша запись для определенного IP-ад-
-a просматривает содержимое кэша для всех сетевых адаптеров локального компьютера, как показано на рис. 1.4.
Рис. 1.4. Пример использования утилиты arp
1.2.3.5. Утилита netstat
Утилита netstat выводит статистику протоколов и текущих TCP/IP соединений и имеет следующий синтаксис: netstat [ -a ][ -e ][ -n ] [ -s ][ -p name ][ -r ][ interval ]. Параметры:
-a отображает полную информацию по всем соединениям и портам, на которых компьютер ожидает соединения;
-e отображает статистику Ethernet (этот ключ может применяться вместе с ключом – s );
-n отображает адреса и номера портов в числовом формате, без их преобразования в символьные имена DNS и в название сетевых служб, что делается по умолчанию t ;
-p name задает отображение информации для протокола name (допустимые значения name : tcp , udp или ip ) и используется вместе
-r отображает содержимое таблицы маршрутов (таблица маршрутизации);
-s отображает подробную статистику по протоколам. По умолчанию выводятся данные для TCP, UDP и IP. Ключ p позволяет задать вывод данных по определенному протоколу, ключ interval инициирует повторный вывод статистических данных через указанный в секундах интервал (в этом случае для прекращения вывода данных надо нажать клавиши Ctrl+C ).
Результатом выполнения команды является список активных подключений, в который входят установленные соединения и открытые порты (рис. 1.5).
Рис. 1.5. Пример отображения утилитой netstat установленных на компьютере TCP-соединений
Открытые TCP-порты обозначаются в колонке «Состояние» строкой LISTENING – пассивно открытые соединения («слушающие» сокеты) или ESTABLISHED – установленные соединения, т.е. уже используемые сетевыми сервисами. Содержание состояний протокола TCP (всего имеется 11 состояний) раскрыто в лабораторной работе № 2 настоящего практикума.
Часть портов связана с системными службами Windows и отображается не по номеру, а по названию – epmap , microsoft-ds , netbios-ss и др. Порты, не относящиеся к стандартным службам, отображаются
по номерам. UDP-порты не могут находиться в разных состояниях, поэтому специальная пометка LISTENING в их отношении не используется. Как и TCP-порты, они могут отображаться по именам или по номерам.
1.2.3.6. Утилита nslookup
Утилита nslookup предназначена для выполнения запросов к DNS-серверам на разрешение имен в IP-адреса и в простейшем случае имеет следующий синтаксис: nslookup [ host [ server ]]. Параметры:
host – доменное имя хоста, которое должно быть преобразовано в IP-адрес;
server – адрес DNS-сервера, который будет использоваться для разрешения имени. Если этот параметр опущен, то будут использованы адреса DNS-серверов из параметров настройки протокола TCP/IP (отображаются утилитой ipconfig ).
Результаты выполнения команды nslookup приведены на рис. 1.6.
Рис. 1.6. Пример отображения утилитой nslookup запроса к DNS
Первые две строки ответа содержат имя и IP-адрес DNS-сервера, который был использован для разрешения имени. Следующие строки содержат реальное доменное имя хоста и его IP-адрес и указание Nonauthoritative answer , означающее, что ответ получен не с DNS-сервера, ответственного за зону penza . ru . Также может присутствовать строка Aliase , которая содержит альтернативные имена искомого сервера.
1.2.3.7. Сервис Whois
При трассировке маршрутов или проверке доступности хоста в Internet часто возникает необходимость определить по IP-адресу хоста его юридического владельца и контактные данные его администратора.
1.3. Задание на лабораторную работу
1.3.1. С помощью утилиты ipconfig, запущенной из командной строки, определить имя, IP-адрес и физический адрес основного сетевого интерфейса компьютера, IP-адрес шлюза, IP-адреса DNS-серверов
и использование DHCP. Результаты представить в виде таблицы.
1.3.2. С помощью утилиты nslookup определить IP-адрес одного из удаленных серверов, доменные имена которых указаны в табл. 1.2.
1.3.3. С помощью утилиты ping проверить состояние связи c любыми компьютером и шлюзом локальной сети, а также с одним из удаленных серверов, доменные имена которых указаны в табл. 1.2.
Утилита командной строки ARP.EXE присутствует во всех версиях Windows и имеет один и тот же синтаксис. Предназначена для просмотра и изменения записей в кэш ARP (Address Resolution Protocol - протокол разрешения адресов), который представляет собой таблицу соответствия IP-адресов аппаратным адресам сетевых устройств. Аппаратный адрес - это уникальный, присвоенный при изготовлении, 6-байтный адрес сетевого устройства, например сетевой карты. Этот адрес также часто называют MAC-адресом (Media Access Control - управление доступом к среде) или Ethernet-адресом. В сетях Ethernet передаваемые и принимаемые данные всегда содержат MAC-адрес источника (Source MAC) и MAC-адрес приемника (Destination MAC).
Два старших бита аппаратного адреса используются для идентификации типа :
- первый бит - одиночный (0) или групповой (1) адрес.
- второй бит - признак универсального (0) или локально администрируемого (1) адреса.
Следующие 22 бита адреса содержат специальный код производителя, обозначаемый как MFG или OUI - универсальный код организации.
Таким образом, в сетях Ethernet, любое сетевое устройство имеет аппаратный адрес, состоящий из двух частей, значение которых зависит от производителя оборудования и конкретного экземпляра устройства. Старшая часть MAC - адреса, централизованно выделяется по лицензии каждому производителю сетевого оборудования. Например, 00:E0:4C - для сетевых устройств REALTEK SEMICONDUCTOR CORP. Крупным производителям сетевого оборудования обычно принадлежит несколько диапазонов OUI . Младшая часть MAC-адреса формируется при производстве сетевого устройства, и уникальна для каждого экземпляра.
Отображение IP-адресов (формируемых программным путем), в аппаратные адреса, выполняется с помощью следующих действий:
- в сеть отправляется широковещательный запрос (ARP-request), принимаемый всеми сетевыми устройствами. Он содержит IP и Ethernet адреса отправителя, а также, целевой IP-адрес, для которого выполняется определение MAC-адреса.
- каждое устройство, принявшее запрос проверяет соответствие целевого IP-адреса, указанного в запросе, своему собственному IP-адресу. При совпадении, отправителю передается ARP-ответ (ARP-Reply), в котором содержатся IP и MAC адреса ответившего узла. Кадр с ARP-ответом содержит IP и MAC адреса как отправителя, так и получателя-составителя запроса.
- информация, полученная в ARP-ответе, заносится в ARP-кэш и может использоваться для обмена данными по IP-протоколу для данного узла. ARP-кэш представляет собой таблицу в оперативной памяти, каждая запись в которой содержит IP, MAC и возраст их действительности (от нескольких секунд, до нескольких часов). Возраст записи учитывается для того, чтобы обеспечить возможность повторного выполнения процедуры ARP при каком либо изменении соответствия адресов.
Формат командной строки ARP:
ARP -s inet_addr eth_addr [if_addr]
ARP -d inet_addr [if_addr]
ARP -a [inet_addr] [-N if_addr] [-v]
Параметры командной строки ARP:
-a -отображает текущие ARP-записи, опрашивая текущие данные протокола. Если задан параметр inet_addr , то будут отображены IP и физические адреса только для заданного компьютера. Если ARP используют более одного сетевого интерфейса, то будут отображаться записи для каждой таблицы.
-g - то же, что и параметр -a .
-v - отображает текущие ARP-записи в режиме подробного протоколирования. Все недопустимые записи и записи в интерфейсе обратной связи будут отображаться.
inet_addr - определяет IP-адрес.
-N if_addr - отображает ARP-записи для заданного в if_addr сетевого интерфейса.
-d - удаляет узел, задаваемый inet_addr . Параметр inet_addr может содержать знак шаблона * для удаления всех узлов.
-s - добавляет узел и связывает адрес в Интернете inet_addr c физическим адресом eth_addr . Физический адрес задается 6 байтами (в шестнадцатеричном виде), разделенными дефисом. Эта связь является постоянной
eth_addr - определяет физический адрес.
if_addr - если параметр задан, он определяет адрес интерфейса в Интернете, чья таблица преобразования адресов должна измениться. Если параметр не задан, будет использован первый доступный интерфейс.
В IP-сетях существует три способа отправки пакетов от источника к приемнику:
- одноадресная передача ( Unicast );
- широковещательная передача ( Broadcast );
- многоадресная рассылка ( Multicast ).
При одноадресной передаче поток данных передается от узла-отправителя на индивидуальный IP-адрес узла-получателя.
Широковещательная передача предусматривает доставку потока данных от узла-отправителя множеству узлов-получателей, подключенных к данному сегменту локальной сети, с использованием широковещательного IP-адреса.
Многоадресная рассылка обеспечивает доставку потока данных группе узлов на IP-адрес группы многоадресной рассылки. Узлы группы могут находиться в данной локальной сети или в любой другой. Узлы для многоадресной рассылки объединяются в группы при помощи протокола IGMP (Internet Group Management Protocol, межсетевой протокол управления группами). Пакеты, содержащие в поле назначения заголовка групповой адрес, будут поступать на узлы групп и обрабатываться. Источник многоадресного трафика направляет пакеты многоадресной рассылки не на индивидуальные IP-адреса каждого из узлов-получателей, а на групповой IP-адрес.
Групповые адреса определяют произвольную группу IP-узлов, присоединившихся к этой группе и желающих получать адресованный ей трафик. Международное агентство IANA (Internet Assigned Numbers Authority, "Агентство по выделению имен и уникальных параметров протоколов Интернета"), которое управляет назначением групповых адресов, выделило для многоадресной рассылки адреса IPv4 класса D в диапазоне от 224.0.0.0 до 239.255.255.255.
Диагностика сетевой связности (ping, arp, traceroute)
В данной статье мы будем опираться на использование протокола IP версии 4. Согласно стандартам, определяющим работу этого протокола, каждое устройство, подключенное к сети, должно иметь как минимум IP-адрес и маску подсети — параметры, которые позволяют уникально идентифицировать устройство в пределах определенной сети. В такой конфигурации устройство может обмениваться сетевыми пакетами с другими устройствами в пределах той же самой логической сети. Если к этому набору параметров добавить адрес шлюза по умолчанию — наш сервер сможет связываться с хостами, находящимися за пределами локального адресного пространства.
В случае каких-либо сетевых проблем в первую очередь проверяем, не сбились ли настройки сетевого интерфейса. Например, команды ip addr или ifconfig выведут IP-адрес и маску сети:
Скриншот №1. Проверки настроек сетевого интерфейса
В выводе команды виден перечень сетевых интерфейсов, распознанных операционной системой. Интерфейс lo — это псевдоинтерфейс (loopback). Он не используется в реальных взаимодействиях с удаленными хостами, а вот интерфейс с именем ens192 — то, что нам нужно (именование сетевых интерфейсов различается в разных ветках и версиях ОС Linux). IP-адрес и маска сети, назначенные этому интерфейсу, указаны в поле inet — /24 после адреса обозначают 24-битную маску 255.255.255.0.
Теперь проверим, указан ли шлюз по умолчанию. Команды ip route или route покажут имеющиеся маршруты:
Скриншот №2. Проверка маршрута
В таблице маршрутизации мы видим, что имеется маршрут по умолчанию (обозначается либо ключевым словом default, либо адресом 0.0.0.0). Все пакеты, предназначенные для внешних сетей, должны направляться на указанный в маршруте адрес через обозначенный сетевой интерфейс.
Синтаксис команды ping IP/имя опции:
Скриншот №3. Синтаксис команды
В данном случае видим, что на оба сетевых пакета, отправленных на адрес нашего шлюза по умолчанию, получены ответы, потерь нет. Это значит, что на уровне локальной сети со связностью все в порядке. Помимо количества полученных/потерянных сетевых пакетов мы можем увидеть время, которое было затрачено на прохождение запроса и ответа – параметр RTT (Round Trip Time). Этот параметр может быть очень важен при диагностике проблем, связанных с нестабильностью связи и скоростью соединения.
Часто используемые параметры:
- ping –c количество — указать количество пакетов, которое будет отправлено адресату (по умолчанию пакеты отправляются до тех пор, пока пользователь не прервет выполнение команды. Этот режим можно использовать, чтобы проверить стабильность сетевого соединения. Если параметр RTT будет сильно изменяться в ходе проверки, значит где-то на протяжении маршрута есть проблема);
- ping –s количество — указать размер пакета в байтах. По умолчанию проверка производится малыми пакетами. Чтобы проверить работу сетевых устройств с пакетами большего размера, можно использовать этот параметр;
- ping –I интерфейс — указать сетевой интерфейс, с которого будет отправлен запрос (актуально при наличии нескольких сетевых интерфейсов и необходимости проверить прохождение пакетов по конкретному сетевому маршруту).
В случае, если при использовании команды ping пакеты от шлюза (или другого хоста, находящегося в одной локальной сети с сервером-отправителем) в ответ не приходят, стоит проверить сетевую связность на уровне Ethernet. Здесь для коммуникации между устройствами используются так называемые MAC-адреса сетевых интерфейсов. За разрешение Ethernet-адресов отвечает протокол ARP (Address Resolution Protocol) и с помощью одноименной утилиты мы можем проверить корректность работы на этом уровне. Запустим команду arp –n и проверим результат:
Скриншот №4. Команда arp –n
Команда выведет список IP-адресов (так как был использован аргумент –n), и соответствующие им MAC-адреса хостов, находящиеся в одной сети с нашим сервером. Если в этом списке есть IP, который мы пытаемся пинговать, и соответствующий ему MAC, значит сеть работает и, возможно, ICMP-пакеты, которые использует команда ping, просто блокируются файрволом (либо со стороны отправителя, либо со стороны получателя). Подробнее об управлении правилами файрвола рассказано здесь и здесь.
Часто используемые параметры:
- arp –n — вывод содержимого локального arp-кэша в числовом формате. Без этой опции будет предпринята попытка определить символические имена хостов;
- arp –d адрес — удаление указанного адреса из кэша. Это может быть полезно для проверки корректности разрешения адреса. Чтобы убедиться, что в настоящий момент времени адрес разрешается корректно, можно удалить его из кэша и снова запустить ping. Если все работает правильно, адрес снова появится в кэше.
Если все предыдущие шаги завершены корректно, проверяем работу маршрутизатора — запускаем ping до сервера за пределами нашей сети, например, 8.8.8.8 (DNS-сервис от Google). Если все работает корректно, получаем результат:
Скриншот №5. Проверка работы маршрутизатора
Скриншот №6. Утилита traceroute
Первым маршрутизатором на пути пакета должен быть наш локальный шлюз по умолчанию. Если дальше него пакет не уходит, возможно проблема в конфигурации маршрутизатора и нужно разбираться с ним. Если пакеты теряются на дальнейших шагах, возможно, есть проблема в промежуточной сети. А, возможно, промежуточные маршрутизаторы не отсылают ответные пакеты. В этом случае можно переключиться на использование другого протокола в traceroute.
Часто используемые опции:
- traceroute –n — вывод результата в числовом формате вместо символических имен промежуточных узлов;
- traceroute –I — использование ICMP-протокола при отслеживании маршрута. По умолчанию используются UDP-датаграммы;
- traceroute –s адрес— указать адрес источника для исходящего сетевого пакета;
- traceroute –i интерфейс— указать сетевой интерфейс, с которого будут отправляться пакеты.
Диагностика разрешения имен (nslookup, dig)
Разобравшись с сетевой связностью и маршрутизацией приходим к следующему этапу — разрешение доменных имен. В большинстве случаев в работе с удаленными сервисами мы не используем IP-адреса, а указываем доменные имена удаленных ресурсов. За перевод символических имен в IP-адреса отвечает служба DNS — это сеть серверов, которые содержат актуальную информацию о соответствии имен и IP в пределах доверенных им доменных зон.
Способы выяснения какой DNS-сервер использует наш сервер различаются в зависимости от используемой версии и дистрибутива ОС Linux. Например, если ОС используется Network Manager для управления сетевыми интерфейсами (CentOS, RedHat и др.), может помочь вывод команды nmcli:
Скриншот №7. Команда nmcli
В настройках сетевого интерфейса, в разделе DNS configuration, мы увидим IP-адрес сервера. В Ubuntu 18.04 и выше, использующих Netplan, используем команду systemd-resolve --status:
Скриншот №8. Команда systemd-resolve --status
Используемый сервер также будет указан в настройках интерфейса, в разделе DNS Servers. В более старых версиях Ubuntu потребуется проверить содержимое файлов /etc/resolve.conf и /etc/network/interfaces. Если сервер не указан, воспользуйтесь статьей для ОС Ubuntu 18.04 или CentOS, чтобы скорректировать настройки.
Проверить работу сервиса разрешения имен нам помогут утилиты nslookup или dig. Функционально они почти идентичны: G-вывод утилиты dig содержит больше диагностической информации и гибко регулируется, но это далеко не всегда нужно. Поэтому используйте ту утилиту, которая удобна в конкретной ситуации. Если эти команды недоступны, потребуется доставить пакеты на CentOS/RedHat:
yum install bind-utils
sudo apt install dnsutils
После успешной установки сделаем тестовые запросы:
Скриншот №9. Тестовые запросы
Скриншот №10. Подтверждение корректной работы
Аналогичный запрос утилитой nslookup выдает более компактный вывод, но вся нужная сейчас информация в нем присутствует.
Скриншот №11. Отправка тестового запроса 1
Скриншот №12. Отправка тестового запроса 2
Если имена разрешаются публичным DNS-сервером корректно, а установленным по умолчанию в ОС нет, вероятно, есть проблема в работе этого DNS-сервера. Временным решением данной проблемы может быть использование публичного DNS-сервера в качестве сервера для разрешения имен в операционной системе. В том случае, если разрешение имен не работает ни через локальный, ни через публичный DNS сервер — стоит проверить не блокируют ли правила файрвола отправку на удаленный порт 53 TCP/UDP пакетов (именно на этом порту DNS-серверы принимают запросы).
Часто используемые параметры:
Как обычно, полный набор опций и параметров для указанных утилит можно найти во встроенной справке операционной системы, используя команду man.
Тема: Семейство протоколов TCP/IP. Использование утилит стека протоколов.
Цель работы: познакомиться со средствами диагностики сети и поиска неисправностей стека TCP/IP.
Практическая часть
Вывести на экран справочную информацию по утилитам ipconfig, ping, tracert, hostname.
Получение имени хоста.
Изучение утилиты ipconfig.
Используется ли DHCP (адрес DHCP-сервера)
Контроллер семейства Realtek PCIe GBE
Физический адрес сетевого адаптера
Тестирование связи с помощью утилиты ping
Проверить правильность установки и конфигурирования TCP/IP на локальном компьютере.
Проверить, правильно ли добавлен в сеть локальный компьютер и не дублируется ли IP-адрес.
Проверить функционирование шлюза по умолчанию, послав 5 эхо-пакетов длиной 64 байта.
Определение пути IP-пакета.
Получение информации о текущих сетевых соединениях и протоколах стека TCP/IP.
С помощью утилиты netstat вывести перечень сетевых соединений и прослушиваемых портов локального узла.
Получить статистическую информацию для протоколов UDP, TCP, ICMP, IP.
Вывести на экран локальную таблицу маршрутизации. Изучить ее содержимое.
Ответы на контрольные вопросы:
Какие утилиты можно использовать для проверки правильности конфигурирования TCP/IP? Каковы их возможности?
Arp - Выводит для просмотра и изменения таблицу трансляции адресов, используемую протоколом разрешения адресов ARP.
Hostname - Выводит имя локального хоста. Используется без параметров.
Ipconfig - Выводит значения для текущей конфигурации стека TCP/IP: IP-адрес, маску подсети, адрес шлюза по умолчанию, адреса WINS и DNS.
Netstat - Выводит статистику и текущую информацию по соединению TCP/IP.
Ping - Осуществляет проверку правильности конфигурирования TCP/IP и проверку связи с удаленным хостом.
Tracert - Осуществляет проверку маршрута к удаленному компьютеру путем отправки эхо-пакетов протокола ICMP. Выводит маршрут прохождения пакетов на удаленный компьютер.
Какова стуктура протокола TCP/IP?
Каково место протокола TCP/IP в ЭМВОС (OSI)?
Протокол TCP/IP занимает важное место в модели OSI, т.к является самым использованным в настоящее время.
Каким образом каманда ping проверяет соединение с узлом сети? Отметьте возможные причины, по которым ping не может связаться с удаленным хостом.
Хостом - любое сетевое устройство (компьютер, маршрутизатор), обменивающееся информацией с другими сетевыми устройствами по TCP/IP.
Что такое петля обратной связи?
Петля обратной связи (127.0.0.1) устанавливается в команде ping для проверяет работоспособность стека протоколов TCP/IP и функции приема и передачи сетевого адаптера.
Каков порядок совместного применения утилит ipconfig и ping для диагностики неисправностей в настройке TCP/IP?
С помощью утилиты ipconfig проверьте, инициализирована ли конфигурация TCP/IP.
Команду ping с адресом возвратной петли (127.0.0.1) - проверяет корректно установлен и привязан к сетевой плате пакет протоколов TCP/IP.
Ping с IP-адресом локального компьютера — проверяет, что в сети отсутствует идентичный IP-адрес.
Ping с IP-адресом шлюза по умолчанию — проверяет, что шлюз работает и компьютер может взаимодействовать с локальной сетью.
Ping с IР-адресом удаленного узла — проверяет, что компьютер может устанавливать соединение через маршрутизатор.
Что такое статический адрес?
Статический адрес вводятся вручную и хранятся в кэше постоянно.
Что такое динамический адрес?
Динамический адрес помещаются в кэш в результате выполнение широковещательных запросов.
Сколько промежуточных маршрутизаторов сможет пройти IP-пакет, если его время жизни равно 30?
IP-пакет может пройти 30 промежуточных маршрутизаторов при времени жизни 30.
Для чего предназначена и как работает утилита tracert?
Tracert - это утилита трассировки маршрута. Она позволяет проследить путь от данного узла до любого другого узла сети Internet. Хост за хостом показывается прохождение IP-пакетов, при этом выводится название и IP-адрес каждого пройденного хота, а также значение интервала времени, в течение которого был получен ответ.
Утилита tracert работает следующим образом: посылается по 3 пробных эхо-пакета на каждый хост. Пакеты посылаются с различными величинами времени жизни. Каждый маршрутизатор, встречающийся по пути, перед перенаправлением пакета уменьшает величину TTL на 1. Когда время жизни пакета достигнет 0, то время истечет. Маршрут исследуется путем посылки первого эхо-пакета с TTL=1. Затем TTL увеличивается на 1 в каждом последующем пакете до тех пор, пока пакет не достигнет удаленного хоста, либо будет достигнута максимально возможная величина TTL (по умолчанию 30, задается с помощью параметра -h).
Каково назначение утилиты arp, протокола ARP? Что такое ARP-кэш?
Утилита Arp выводит для просмотра и изменения таблицу трансляции адресов.
Art-кэш – это Art-таблиц.
Как просмотреть перечень всех используемых в данный момент портов?
Перечень всех используемых в данный момент портов можно посмотреть с помощью команды netstat -a, которая выводит перечень всех сетевых соединений и прослушивающихся портов локального компьютера;
Для чего используется команда route? Какую информацию содержит таблица маршрутизации?
Команда route используется для отображения содержимого таблицы маршрутизации.
Таблица маршрутизации содержит список интерфейсов (IP и их описания); таблицу маршрута для IPv4, где описаны активные и постоянные маршруты; таблицу маршрута для IPv6, где описаны активные и постоянные маршруты.
Примеры использования ARP :
arp -a - отобразить таблицу соответствия IP и MAC адресов для данного компьютера.
arp -a | more - то же, что и в предыдущем случае, но с отображением информации в постраничном режиме.
arp -a > macaddr.txt - отобразить таблицу соответствия IP и MAC адресов для данного компьютера с выводом результатов в текстовый файл macaddr.txt .
Пример содержимого таблицы ARP:
Интерфейс: 127.0.0.1 --- 0x1
адрес в Интернете Физический адрес Тип
224.0.0.22                                                     статический
224.0.0.251                                                   статический
239.255.255.250                                           статический
Интерфейс: 192.168.1.133 --- 0x1c
адрес в Интернете Физический адрес Тип
В данном примере присутствуют записи ARP для петлевого интерфейса 127.0.0.1 и реального 192.168.1.133 . Петлевой интерфейс не используется для реальной передачи данных и не имеет привязки к аппаратному адресу. Таблица ARP реального интерфейса содержит записи для узлов с адресами 192.168.1.1 и 192.168.1.132 , а также записи для широковещательной (MAC-адрес равен ff-ff-ff-ff-ff-ff) и групповых рассылок (MAC-адрес начинается с 01-00-5e ). МАС-адрес групповой рассылки всегда начинается с префикса, состоящего из 24 битов — 01-00-5Е. Следующий, 25-й бит равен 0. Последние 23 бита МАС-адреса формируются из 23 младших битов группового IP-адреса.
arp -d 192.168.1.1 - удалить из таблицы ARP запись для IP-адреса 192.168.1.1
arp -d 192.168.1.* - удалить из таблицы ARP записи для диапазона IP-адресов 192.168.1.1 - 192.168.1.254
Некоторые замечания по практическому использованию команды ARP:
Команда PING это, пожалуй, самая используемая сетевая утилита командной строки. PING присутствует во всех версиях всех операционных систем с поддержкой сети и является простым и удобным средством опроса узла по имени или его IP-адресу.
Формат командной строки:
ping [-t] [-a] [-n число] [-l размер] [-f] [-i TTL] [-v TOS] [-r число] [-s число] [[-j списокУзлов] | [-k списокУзлов]] [-w таймаут] конечноеИмя
-t - Непрерывная отправка пакетов. Для завершения и вывода статистики используются комбинации клавиш Ctrl + Break (вывод статистики и продолжение), и Ctrl + C (вывод статистики и завершение).
-a - Определение адресов по именам узлов.
-n число - Число отправляемых эхо-запросов.
-l размер - Размер поля данных в байтах отправляемого запроса.
-f - Установка флага, запрещающего фрагментацию пакета.
-i TTL - Задание срока жизни пакета (поле "Time To Live").
-v TOS - Задание типа службы (поле "Type Of Service").
-r число - Запись маршрута для указанного числа переходов.
-s число - Штамп времени для указанного числа переходов.
-j списокУзлов - Свободный выбор маршрута по списку узлов.
-k списокУзлов - Жесткий выбор маршрута по списку узлов.
-w таймаут - Максимальное время ожидания каждого ответа в миллисекундах.
ping -a 192.168.1.50 - выполнить пинг с определением имени конесного узла по его адресу.
ping -s 192.168.0.1 computer - пинг узла computer от источника 192.168.0.1. Используется когда на компьютере имеется несколько сетевых интерфейсов.
Обобщенная схема соединения компьютера (планшета, ноутбука домашней сети) с удаленным конечным узлом можно представить следующим образом:
В качестве домашней сети используется наиболее распространенная сеть с IP-адресами 192.168.1.0 /255.255.255.0 . Речь идет об IPv4 – IP протоколе версии 4, где для адресации используется 4 байта. IP- адреса принято представлять в виде десятичных значений байтов, разделяемых точками. Каждое устройство в сети должно иметь свой уникальный адрес. Кроме адреса, в сетевых настройках используется маска сети ( маска подсети). Маска имеет такой же формат представления, как и адрес. Комбинация адреса и маски определяет диапазон адресов, которые принадлежат локальной сети - 192.168.1.0-192.168.1.255. Первый и последний адреса диапазона не назначаются отдельным сетевым устройствам, поскольку используются в качестве адреса сети и широковещательного адреса. Обычно адрес роутера делают равным 192.168.1.1 или 192.168.1.254. Это не является обязательным стандартом, но на практике используется довольно часто. Единичные биты маски определяют постоянную часть IP-адреса сети, а нулевые — выделяемые отдельным узлам. Значение 255 - это байт с установленными в единицу битами. Маска сети служит средством определения диапазона IP-адресов, принадлежащих локальной сети. Устройства с такими адресами достижимы локально, без использования маршрутизации . Маршрутизация — это способ обмена данными с сетевыми устройствами не принадлежащими к данной локальной сети через специальное устройство - маршрутизатор ( router, роутер ). Маршрутизаторы представляют собой специализированные компьютеры с несколькими сетевыми интерфейсами и специализированным программным обеспечением обеспечивающим пересылку IP-пакетов между отправителем и получателем, находящимися в разных сетях. В такой пересылке могут участвовать несколько маршрутизаторов, в зависимости от сложности маршрута. Домашний роутер — простейшая разновидность маршрутизатора, который обеспечивает пересылку пакетов, адресованных во внешние сети следующему по маршруту маршрутизатору в сети провайдера. Следующий маршрутизатор проверяет достижимость адреса конечного узла локально, и либо пересылает ему данные, либо передает их следующему маршрутизатору в соответствии с таблицей маршрутов. Так происходит до тех пор, пока данные не достигнут получателя или закончится время жизни пакета.
Команда PING можно использовать для диагностики отдельных узлов:
ping 127.0.0.1 - это пинг петлевого интерфейса. Должен выполняться без ошибок, если установлены и находятся в работоспособном состоянии сетевые программные компоненты.
ping свой IP или имя - пинг на собственный адрес или имя. Должен завершаться без ошибок, если установлены все программные средства протокола IP и исправен сетевой адаптер.
ping IP-адрес роутера - должен выполняться, если исправна сетевая карта компьютера, исправен кабель или беспроводное соединение, используемые для подключения к роутеру и исправен сам роутер. Кроме того, настройки IP должны быть такими, чтобы адрес компьютера и роутера принадлежали одной подсети. Обычно это так, когда сетевые настройки выполняются автоматически средствами DHCP-сервера маршрутизатора.
В результате выполнения данной команды отображается и трассировка маршрута:
Статистика Ping для 87.250.251.11:
Пакетов: отправлено = 1, получено = 1, потеряно = 0
(0% потерь)
Приблизительное время приема-передачи в мс:
Минимальное = 36мсек, Максимальное = 36 мсек, Среднее = 36 мсек
В данном примере, между отправителе и получателем пакетов выстраивается цепочка из 9 маршрутизаторов. Нужно учитывать тот факт, что в версии утилиты ping.exe для Windows, число переходов может принимать значение от 1 до 9. В случаях, когда этого значения недостаточно, используется команда tracert
Использование PING в командных файлах.
Нередко, команда PING используется для организации задержек в командных файлах. Выполняется пингование петлевого интерфейса с указанием нужного значения счетчика пакетов, задаваемого параметром -n . Посылка эхо-запросов выполняется с интервалом в 1 секунду, а ответ на петлевом интерфейсе приходит практически мгновенно, поэтому задержка будет приблизительно равна счетчику минус единица:
ping -n 11 127.0.0.1 - задержка в 10 секунд.
ping 456.0.0.1 - ping на несуществующий адрес
Ответ на такую команду может отличаться от конкретной версии утилиты, и может быть приблизительно таким
При проверке связи не удалось обнаружить узел 456.0.0.1. Проверьте имя узла и повторите попытку.
Ответ на ping доступного узла:
Таким образом, для решения задачи определения доступности узла в командном файле, достаточно проанализировать характерные слова в выводе ping.exe при успешном ответе. Наиболее характерно в данном случае наличие слова TTL . Оно никогда не встречается при возникновении ошибки и состоит всего лишь из символов английского алфавита. Для поиска "TTL" в результатах ping.exe удобнее всего объединить ее выполнение в цепочку с командой поиска строки символов FIND.EXE (конвейер ping и find). Если текст найден командой FIND, то значение переменной ERRORLEVEL будет равно 0
ping -n 1 COMPUTER | find /I "TTL" > nul
if %ERRORLEVEL%==0 goto LIVE
ECHO computer недоступен
подпрограмма обработки недоступного состояния
.
Exit
:LIVE - начало подпрограмм ы обработки состояния доступности узла
.
.
Одна из важнейших подсистем, отвечающая за связь любого сервера с внешним миром — сетевая. Через сетевые интерфейсы поступают запросы от удаленных систем и через эти же интерфейсы направляются ответы, что позволяет налаживать коммуникацию и предоставлять/получать сервисы. В связи с этим особенно важно уметь производить диагностику и мониторинг сети хотя бы на базовом уровне, чтобы выявлять проблемы и вносить корректировки в конфигурацию в случае необходимости.
Для операционных систем семейства Linux написано множество утилит, помогающих в диагностике и мониторинге. Познакомимся с наиболее часто используемыми из них.
Читайте также: