Traceroute online with mapping

Проблема с протоколом разрешения адресов (ARP-протокол)

В данном подразделе приведен пример подключения через протокол Ethernet:

Router4#ping 100.0.0.5

Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 100.0.0.5, timeout is 2 seconds:

Jan 20 17:04:05.167: IP: s=100.0.0.4 (local), d=100.0.0.5 (Ethernet0), len 100, sending
Jan 20 17:04:05.171: IP: s=100.0.0.4 (local), d=100.0.0.5 (Ethernet0), len 100, encapsulation failed.
Jan 20 17:04:07.167: IP: s=100.0.0.4 (local), d=100.0.0.5 (Ethernet0), len 100, sending
Jan 20 17:04:07.171: IP: s=100.0.0.4 (local), d=100.0.0.5 (Ethernet0), len 100, encapsulation failed.
Jan 20 17:04:09.175: IP: s=100.0.0.4 (local), d=100.0.0.5 (Ethernet0), len 100, sending
Jan 20 17:04:09.183: IP: s=100.0.0.4 (local), d=100.0.0.5 (Ethernet0), len 100, encapsulation failed.
Jan 20 17:04:11.175: IP: s=100.0.0.4 (local), d=100.0.0.5 (Ethernet0), len 100, sending
Jan 20 17:04:11.179: IP: s=100.0.0.4 (local), d=100.0.0.5 (Ethernet0), len 100, encapsulation failed.
Jan 20 17:04:13.175: IP: s=100.0.0.4 (local), d=100.0.0.5 (Ethernet0), len 100, sending
Jan 20 17:04:13.179: IP: s=100.0.0.4 (local), d=100.0.0.5 (Ethernet0), len 100, encapsulation failed.
Success rate is 0 percent (0/5)
Router4#

В данном примере команда ping не работает из-за «неудачной инкапсуляции». Это означает, что маршрутизатору известно, на какой интерфейс следует отправлять пакет, но неизвестно, каким образом это сделать. В этом случае необходимо понять принцип функционирования ARP-протокола.

В основном, ARP — это протокол, используемый для сопоставления адреса второго уровня (MAC-адрес) с адресом третьего уровня (IP-адрес). Для проверки этого отображения можно использовать команду show arp:

Router4#show arp

Protocol Address Age (min) Hardware Addr Type Interface
Internet 100.0.0.4 0000.0c5d.7a0d ARPA Ethernet0
Internet 100.0.0.1 10 0060.5cf4.a955 ARPA Ethernet0

Вернемся к проблеме неудачной инкапсуляции. Более подробные сведения об этой проблеме можно получить с помощью команды debug:

Router4#debug arp
ARP packet debugging is on

Router4#ping 100.0.0.5

Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 100.0.0.5, timeout is 2 seconds:

Jan 20 17:19:43.843: IP ARP: creating incomplete entry for IP address: 100.0.0.5
interface Ethernet0
Jan 20 17:19:43.847: IP ARP: sent req src 100.0.0.4 0000.0c5d.7a0d,
      dst 100.0.0.5 0000.0000.0000 Ethernet0.
Jan 20 17:19:45.843: IP ARP: sent req src 100.0.0.4 0000.0c5d.7a0d,
      dst 100.0.0.5 0000.0000.0000 Ethernet0.
Jan 20 17:19:47.843: IP ARP: sent req src 100.0.0.4 0000.0c5d.7a0d,
      dst 100.0.0.5 0000.0000.0000 Ethernet0.
Jan 20 17:19:49.843: IP ARP: sent req src 100.0.0.4 0000.0c5d.7a0d,
      dst 100.0.0.5 0000.0000.0000 Ethernet0.
Jan 20 17:19:51.843: IP ARP: sent req src 100.0.0.4 0000.0c5d.7a0d,
      dst 100.0.0.5 0000.0000.0000 Ethernet0.
Success rate is 0 percent (0/5)

В представленном выше результате выполнения команды показано, что маршрутизатор 4 транслирует пакеты, пересылая их на широковещательный Ethernet-адрес FFFF.FFFF.FFFF. В данном случае 0000.0000.0000 означает, что маршрутизатор 4 ищет MAC-адрес целевого устройства 100.0.0.5. Поскольку в этом примере он не знает MAC-адреса во время выполнения ARP-запроса, то он отсылает широковещательные кадры с интерфейса Ethernet 0 с адресом 0000.0000.000 в качестве шаблона и запрашивает, какой MAC-адрес соответствует IP-адресу 100.0.0.5. Если маршрутизатор не получает ответа, то соответствующий адрес в результате выполнения команды show arp помечается как неполный:

Router4#show arp

Protocol Address Age (min)   Hardware Addr Type Interface
Internet 100.0.0.4   0000.0c5d.7a0d ARPA Ethernet0
Internet 100.0.0.5   Incomplete ARPA  
Internet 100.0.0.1 2   0060.5cf4.a955 ARPA Ethernet0

По прошествии определенного периода времени сведения о неполноте удаляются из ARP-таблицы. Пока соответствующий MAC-адрес отсутствует в ARP-таблице, выполнение команды ping будет заканчиваться неудачей в результате «неудачной инкапсуляции».

Утилита ping

Проверка доступности компьютера

Утилита ping предназначена для того, чтобы при помощи отправки ICMP пакетов убедиться в работоспособности хоста. Команда ping посылает запрос (ICMP ECHO_REQUEST) конкретному компьютеру и фиксирует поступающие ответы (ICMP ECHO_RESPONSE). Её можно применять для работоспособности отдельных компьютеров и сегментов сети. В обработке ее запроса участвуют таблицы маршрутизации, физические компоненты сетей и сетевые шлюзы, поэтому для достижения успешного результата сеть должна быть в более или менее рабочем состоянии. Если команда не работает, можно быть совершенно уверенным в том, что более сложные средства тем более не функционируют. Однако это правило неприменимо в сетях, где брандмауэры блокируют эхо-запросы ICMP. Убедитесь в том, что брандмауэр не препятствует работе команды ping, прежде чем подозревать, что зондируемый компьютер игнорирует эту команду. В конце концов, отключите на короткое время брандмауэр для проверки работоспособности сети.

Если не задан аргумент «число пакетов», команда ping работает в бесконечном цикле. Чтобы прервать работу команды, нужно нажать специальную клавиатурную комбинацию .

Например, пропингуем neoserver.ru (это имя хоста):

Информация о компьютере neoserver.ru включает его IP-адрес, порядковый номер ответного ICMP-пакета и полное время прохождения пакета. Полученные результаты свидетельствуют о том, что компьютер neoserer.ru работает и подключен к сети.

Min – минимальное время ответа хоста, кторому был отправлен запрос.

Avg – среднее время ответа хоста, кторому был отправлен запрос

Max – максимальное время ответа хоста, кторому был отправлен запрос.

Ещё вы увидите TTL – определяет максимальное количество хопов (то есть прыжок, участок между маршрутизаторами), которые пакет может пройти. Наличие этого параметра не позволяет пакету бесконечно ходить по сети.

В ОС Linux, как уже было сказано выше, команда ping без дополнительных параметров будет пинговать заданный хост бесконечно. Чтобы отправить, например, 10 запросов, необходимо добавить ключ -с:

В итоге, мы видим, что было отпралено 10 запросов и выведен результат.

Другие примеры задействования разын ключей:

Не резолвить имена адресов, выводить только ip-адреса

Завершение работы ping по заданному времени (тут 5 секунд)

Установить размер отправляемых пакетов в 1000 байт

Увеличить интервал времени пинга на 3 секунды

Команда ping

Первая команда, с которой нужно познакомиться — это ping, проверяющую доступность заданного адреса. Введите команду ping 127.0.0.1. Должно получиться что-то такое (если команда не ping не работает, то, возможно, решить проблему поможет инструкция по исправлению ошибки cmd no command):

C:\Documents and Settings\Администратор>ping 127.0.0.1

Обмен пакетами с 127.0.0.1 по 32 байт:

Ответ от 127.0.0.1: число байт=32 время

Ответ от 127.0.0.1: число байт=32 время

Ответ от 127.0.0.1: число байт=32 время

Ответ от 127.0.0.1: число байт=32 время

Статистика Ping для 127.0.0.1:

            Пакетов: отправлено = 4, получено = 4, потеряно = 0 (0% потерь),

Приблизительное время приема-передачи в мс:

            Минимальное = 0мсек, Максимальное = 0 мсек, Среднее = 0 мсек

C:\Documents and Settings\Администратор>

Как мы видим, на адрес 127.0.0.1 было отправлено 4 пакета, и они все достигли цели. Что же это был за адрес и почему я был уверен, что пакеты дойдут? Ответ прост — пакеты никуда не отправлялись, а оставались на вашем компьютере. Этот адрес специфичен и используется для loopback — пакетов, не уходящих никуда вовне. Отлично, можем теперь «пропинговать» адрес этого сайта: 212.193.236.38

C:\Documents and Settings\Администратор>ping 212.193.236.38

Обмен пакетами с 212.193.236.38 по 32 байт:

Ответ от 212.193.236.38: число байт=32 время=3мс TTL=55

Ответ от 212.193.236.38: число байт=32 время=3мс TTL=55

Ответ от 212.193.236.38: число байт=32 время=3мс TTL=55

Ответ от 212.193.236.38: число байт=32 время=3мс TTL=55

Статистика Ping для 212.193.236.38:

            Пакетов: отправлено = 4, получено = 4, потеряно = 0 (0% потерь),

Приблизительное время приема-передачи в мс:

            Минимальное = 3мсек, Максимальное = 3 мсек, Среднее = 3 мсек

C:\Documents and Settings\Администратор>

Можно заметить только одно отличие — пакеты доходили не мгновенно, а за 3 миллисекунды. Надеюсь, у вас тоже не было никакой задержки при доставке пакетов, а главное — вы не увидели строчки типа

Превышен интервал ожидания для запроса.

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

Как уменьшить пинг?

От людей, играющих в сетевые игры, часто можно слышать об их желании уменьшить пинг.
Это достаточно
логично, так как маленькое время пинга означает меньшие задержки при игре. Соответственно, игрок с
минимальным временем пинга может получить преимущество в игре. Наиболее популярная игра, для которой
пользователи любят померить пинг — Counter Strike или сокращенно CS.

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

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

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

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

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

Утилита Traceroute

Перед тем как перейти к примерам работы с утилитой давайте рассмотрим ее синтаксис и основные опции. Синтаксис вызова очень прост:

$ traceroute опции адрес_узла

В качестве адреса может использоваться ip адрес или доменное имя. Рассмотрим основные опции:

  • -4 или -6 — использовать ipv4 или ipv6 протокол;
  • -I — использовать ICMP пакеты вместо UDP;
  • -T — использовать TCP пакеты вместо UDP;
  • -F — не фрагментировать пакеты;
  • -f — указать TTL с которого нужно начать;
  • -g — передавать пакет через указанный шлюз;
  • -i — передавать пакет через указанный интерфейс;
  • -m — максимальное количество узлов, через которые пройдет пакет;
  • -q — количество пакетов, отправляемых за раз, по умолчанию три;
  • -n — не узнавать доменные имена;
  • -p — указать порт вместо порта по умолчанию;
  • -w — установить время ожидания ответа от узла, по умолчанию полсекунды;
  • -r — использовать другой роутер вместо того, что указанный в таблице маршрутизации;
  • -z — минимальный интервал между пакетами;
  • -U — использовать UDP с увеличением номера порта;
  • -UL — использовать протокол UDPLITE;
  • -D — использовать протокол DCCP;
  • —mtu — указать размер пакета;
  • -P — протокол, доступны такие значения: raw, dccp, udplite, udp, tcpconn, tcp, icmp.

Это не все опции утилиты, но все основные, которыми вы будете пользоваться. Дальше перейдем практике того, как выполняется трассировка сети Linux.

Tips

General Tracert Tips

  • If pinging a host fails, try using the tracert utility to identify where the data packet is failing along its route.
  • RTT of over 150ms, within the United States, is considered high. If your remote host is on another continent, RTT of over 150ms may be normal.
  • A network device must be configured to response to ping or tracert packets (ICMP echo requests), otherwise you will see asterisks for RTTs.
  • Use the switch to skip reverse IP lookup to speed up tracert.

Example of a Good Tracert Result

The following is an example of a good tracert result. On hop 9, the device did not respond, as indicated with the asterisks.. However, because hop 10 responded, we know hop 9 was able to handle the packet to move to forward to the next hop. In this scenario, the router on hop 9 is likely configured to not response to ICMP packets, but it is functioning properly to in routing data packets. A tracert result with no asterisks is also a good result.

Example Tracert Result of a Failed Hop

The following is an example of a tracert result.showing a failed hop.Starting with hop 9, we see all hops from that point forward are not responding. This indicates hop 9 is faulty or mis-configured and not forwarding traffic to the next hop. Hop 9 is where you want to start your troubleshooting.

Example Tracert Result of a Routing Loop Problem

The following is an example of a tracert result showing a routing problem. Starting with hop 8 and hop 9, our packet is bouncing back and forth between these two routers (routing loop). The packet will continued to be passed between 64.125.31.49 and 216.200.159.42 until the maximum hop count is reached (30 is this example) or until the session times out. With a routing loop problem, data will not reach the intend destination.

Redirect Output to Text File

Instead of displaying the results on the screen, you can have the results saved automatically to a text file on your computer. To do this, simply use the «>» symbol followed by the folder path and file name of your choice. For example, to redirect the output of tracert 72.47.244.140, type the following in the command window then press Enter: tracert 72.47.244.140 > c:\temp\tracert.txt
This will create a file named tracert.txt in the folder path c:\temp that will have your result. You can then open this file with any text editor, such as Notepad on a Windows computer, as illustrated below.

Как читать результат трассировки

Вернемся к анализу вывода Tracert. Мой запрос к сайту Yandex.ru совершил 16 прыжков – прошел через 15 «перевалочных пунктов» и шестнадцатым шагом достиг конечной цели. Порядковые номера прыжков отображены в столбце, обведенном красной рамкой. По умолчанию их максимальное число составляет 30.

Второй, третий и четвертый столбцы содержат значения RTT – времени, прошедшего от момента отправки запроса до получения ответа (как вы помните, партия состоит из трех пакетов). Чем оно меньше, тем быстрее осуществляется передача. Если оно больше 4 секунд, интервал ожидания считается превышенным.

Последний столбец – это имена и адреса промежуточных и конечного узлов.

Звездочки вместо значений не всегда указывают на недоступность или неисправность сетевого устройства (как пишут в некоторых источниках). Чаще всего это просто настройка, не позволяющая отправлять ответные ICMP-сообщения (меры по защите веб-узла от DDoS-атак). Если ваш запрос благополучно достиг конечной точки за приемлемое время, беспокоиться не о чем.

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

Пример в Linux

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

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

  $ traceroute www.ru
  traceroute to www.ru (194.87.0.50), 30 hops max, 38 byte packets 
   1    mygateway.ar7                       (192.168.1.1)       0.777 ms    0.664 ms   0.506 ms
   2    L0.ghsdr04                          (213.227.224.91)   15.661 ms   15.867 ms  31.426 ms
   3    213.227.224.1                       (213.227.224.1)    16.797 ms   18.221 ms  16.756 ms
   4    dg                                  (213.186.216.161)  53.068 ms   39.163 ms  38.283 ms
   5    br13                                (213.186.193.43)   40.156 ms   39.768 ms  42.803 ms
   6    aggr                                (62.221.40.169)    37.884 ms   38.712 ms  37.207 ms
   7    edge-3GE-216dot1q.kiev.ucomline.net (213.130.30.182)   39.723 ms   38.039 ms  41.261 ms
   8    ae0-202.RT771-001.kiv.retn.net      (81.222.15.1)      40.029 ms   37.088 ms  40.039 ms
   9    ae0-3.RT502-001.msk.retn.net        (81.222.15.1)     128.932 ms  122.043 ms 121.612 ms
  10    GW-Demos.retn.net                   (81.222.8.46)     120.023 ms  121.135 ms 119.493 ms
  11    iki-1-vl10.demos.net                (194.87.0.83)     119.074 ms  119.784 ms 123.607 ms
  12    www.ru                              (194.87.0.50)     120.358 ms  122.545 ms 119.399 ms

Проверка пинга

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

Windows:

1) Пуск -> Все программы -> Стандартные -> Командная строка

2) Пуск -> Выполнить -> cmd

Linux:

В данной ОС существует множество терминалов, поэтому для этих целей можно использовать любой из установленных на ПК. Обычно стандартный терминал можно запустить сочетанием клавиш CTRL+ALT+T.

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

ping <IP или домен>

Например, для пинга адреса 11.222.33.44 необходимо выполнить команду:

ping 11.222.33.44

Ниже приведён пример результатов выполнения пинга одного из IP адресов.

Как видно из результатов, было передано и получено 4 пакета размером 32 байта. Время обмена одним пакетом составило 47 милисекунд.

Стоит отметить, что в Windows по умолчанию выполняется отправка только 4 пакетов. В Linux обмен пакетами продолжается до тех пор, пока пользователь самостоятельно не остановит процесс сочетанием клавиш CTRL+C. Чтобы запустить ping аналогичным образом в Windows, необходимо использовать параметр -t. Например:

ping -t 11.222.33.44

Остановка обмена пакетами выполняется тем же сочетанием клавиш – CTRL+C.

Установка количества отправляемых пакетов

Чтобы задать максимальное количество отправляемых пакетов, необходимо использовать команду следующего вида:

Windows:

ping -n <число_пакетов> <IP или домен>

например:

ping -n 5 11.22.33.44

Linux:

ping -c <число_пакетов> <IP или домен>

например:

ping -c 5 11.22.33.44

Изменение размера отправляемых пакетов

Чтобы выполнить ping с использованием пакетов определенного размера (в байтах), необходимо использовать следующую команду:

Windows:

ping -l <размер_пакетов> <IP или домен>

например:

ping -l 64 11.22.33.44

Linux:

ping -s <размер_пакетов> <IP или домен>

например:

ping -s 64 11.22.33.44

В данном случае производилась отправка пакетов размером в 64 байта.

Prerequisites

Requirements

Readers of this document should have basic knowledge of one of these operating systems:

  • Cisco IOS Software

  • Linux

  • Microsoft Windows

Components Used

The information in this document applies to these software and hardware versions:

  • Cisco Router that runs Cisco IOS Software Release 12.2(27)

  • PC that runs Red Hat Linux version 9

  • PC that runs MS Windows 2000

The information in this document was created from the devices in a specific lab environment. All of the devices used in this document started with a cleared (default) configuration. If your network is live, make sure that you understand the potential impact of any command.

Команда tracert.

ноября 8, 2009 P.Borvickiy

Tracert – определяет путь до точки назначения с помощью посылки в точку назначения эхо-сообщений протокола Control Message Protocol (ICMP) с постоянным увеличением значений срока жизни (Time to Live, TTL).

Выведенный путь — это список ближайших интерфейсов маршрутизаторов, находящихся на пути между узлом источника и точкой назначения. Ближний интерфейс представляют собой интерфейс маршрутизатора, который является ближайшим к узлу отправителя на пути. Запущенная без параметров, команда tracert выводит справку.

Параметры

-d

Предотвращает попытки команды tracert разрешения IP-адресов промежуточных маршрутизаторов в имена. Увеличивает скорость вывода результатов команды tracert.

-h максимальное_число_переходов

Задает максимальное количество переходов на пути при поиске конечного объекта. Значение по умолчанию равно 30.

-j список_узов

Указывает для сообщений с эхо-запросом использование параметра свободной маршрутизации в заголовке IP с набором промежуточных мест назначения, указанных в списке_узлов. При свободной маршрутизации успешные промежуточные места назначения могут быть разделены одним или несколькими маршрутизаторами. Максимальное число адресов или имен в списке — 9. Список_адресов представляет набор IP-адресов (в точечно-десятичной нотации), разделенных пробелами.

-w интервал

Определяет в миллисекундах время ожидания для получения эхо-ответов протокола ICMP или ICMP-сообщений об истечении времени, соответствующих данному сообщению эхо-запроса. Если сообщение не получено в течение заданного времени, выводится звездочка (*). Таймаут по умолчанию 4000 (4 секунды).

имя_конечного_компьютера

Задает точку назначения, указанную IP-адресом или именем узла.

-?

Отображает справку в командной строке.

Примечания

Диагностическое средство, предназначенное для определения маршрута до точки назначения с помощью посылки в точку назначения эхо-запросов протокола Internet Control Message Protocol (ICMP) с различными значениями срока жизни (TTL, Time-To-Live). Каждый маршрутизатор, через который проходит путь, обязан перед дальнейшей пересылкой пакета уменьшить значение его поля TTL по меньшей мере на 1.

Фактически, TTL — счетчик узлов. Предполагается, что когда параметр TTL становится равен 0, маршрутизатор посылает системе-источнику сообщение ICMP об истечении времени. Команда tracert определяет маршрут, посылая первый эхо-запрос с полем TTL, равным 1, и увеличивая значение этого поля на единицу для каждого последующего отправляемого эхо-пакета до тех пор, пока конечный узел не ответит или пока не будет достигнуто максимальное значение поля TTL.

Максимальное количество переходов по умолчанию равно 30 и может быть изменено с помощью параметра -h. Путь определяется из анализа сообщений ICMP об истечении времени, полученных от промежуточных маршрутизаторов, и это-ответов точки назначения. Однако некоторые маршрутизаторы не посылают сообщений об истечении времени для пакетов с нулевыми значениями TTL и не видны для команды tracert. В этом случае для перехода отображается ряд звездочек (*).

  • Чтобы выполнить трассировку маршрута, вывести значение задержки распространения по сети и потерь пакета на каждом маршрутизаторе и узле в пути, используйте команду pathping.
  • Эта команда доступна, только если в свойствах сетевого адаптера в объекте Сетевые подключения в качестве компонента установлен протокол Интернета (TCP/IP).

Примеры

Чтобы выполнить трассировку пути к узлу corp7.microsoft.com, введите команду:

tracert corp7.microsoft.com

Чтобы выполнить трассировку пути к узлу corp7.microsoft.com и предотвратить разрешение каждого IP-адреса в имя, введите:

tracert -d corp7.microsoft.com

Чтобы выполнить трассировку пути к узлу corp7.microsoft.com и использовать узлы 10.12.0.1-10.29.3.1-10.1.44.1 для свободной маршрутизации, введите следующую команду:

tracert -j 10.12.0.1 10.29.3.1 10.1.44.1 corp7.microsoft.com

Условные обозначения форматирования

Формат

Значение

Курсив Сведения, вводимые пользователем
Полужирный Элементы, вводимые без изменений
Многоточие (…) Параметр может быть введен в командной строке несколько раз
В квадратных скобках ([]) Необязательные элементы
В фигурых скобках ({}); варианты, разделенные вертикальной линией (|), пример: {even|odd} Набор вариантов, из которых необходимо выбрать один
Выходные данные программы

Раздел сайта Командная строка Теги: Командная строка

Traceroute Command Syntax and Options (for Linux)

The traceroute command syntax for Linux can be written as:

traceroute      
      host 

Below is a brief description with each traceroute option in Linux systems.

Option Description
–help Used to Display a help message, and exit.
-4, -6 Explicitly force IPv4 or IPv6 tracerouting.
-f Sets the initial TTL on the first outgoing packet.
-F Sets the “don’t fragment” bit.
-d Enables debugging.
-g Specifies a loose source route gateway (8 maximum).
-i Set a network interface to obtain the source IP address.
-I Use ICMP ECHO.
-m Set the maximum TTL used in outgoing packets. The default is set at 30 hops.
-n Print hop addresses numerically.
-p For UDP tracing, it specifies the destination port base. This option can be used to find unsued ports.
-r Avoid the normal routing tables and send directly to a host on a specific network.
-s Chooses an alternative source address. Note that you must select the address of one of the interfaces.
-t Type of service. The value must be a decimal integer in the range from 0 to 255. You can use it to check if different type-of-service results in different paths.
-v The verbose output.
-w Sets the time to wait for a response. The default is 5 seconds.
-z Set the time in milliseconds to pause between tests.

Применение программ трассировки маршрута

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

Обычно, операционная система включает консольный вариант такой программы в стандартный пакет системы. Например, Windows имеет специальную утилиту tracert. Чтобы ее запустить, вам надо открыть консоль и ввести команду «tracert». При запуске без указания параметров, на экран выведется небольшой мануал по работе с программой. Но, функциональность таких утилит, обычно, близка к базовой, и не предусматривает дополнительных полезных возможностей, которые могут сильно сэкономить время при частом построении маршрутов.

Traceroute Example

Traceroute starts its journey towards its destination differently. It begins with a TTL=1 (instead of the default 51) and adds one until it reaches its final destination.

When beginning the Traceroute test, the next hop that receives the packet with a TTL=1, which in my case, is the gateway, will execute the TTL-1 by protocol, which will result in TTL=0. That means there will be no further forwarding and the packet will be discarded.

The next-hop (my gateway) will notify the source that the TTL exceeded with the “ICMP TTL exceeded” message, containing valuable information such as IP, hostname, and delay.

As mentioned in the previous section, the main job of the Traceroute command is to +1 to the TTL until the packet reaches the final destination.

So, back to our example, let’s traceroute 8.8.8.8.

The Traceroute example shows that the packet took 13 hops from the source (192.168.0.1) to reach its destination (8.8.8.8), along with all information from the hops in between.

From the same screenshot, you can see that the hop number 10 is “72.14.219.20” the same IP that we got from command “ping 8.8.8.8 -10”.

Reading The “tracert” Output.

Now that we know how traceroute works and its syntax, let’s find out how to read the output.

With the tracert example shown below, we’re requesting the command to display the path from the local computer to the network device with the hostname “www.google.com” (with additional requests)

If you noticed Windows tracert output is different than Linux or macOS. There are five columns, the first is the number of hops, the next three columns are three ICMP (pings) with the delay, and finally the IP or hostname.

In the example shown above, we didn’t reach our final destination (google.com). The last hop that sent us the “ICMP TTL Time Exceeded” message was number 13 or (public IP 74.125.242.179). This was because we limited the number of hops to 13, with (-h 13). Probably Google was at hop 14, or more.

The other option we tested was timeout (-w 200). This is the maximum waiting time in milliseconds for each packet before it is considered lost. To read the delay columns, you can start with 1 ms, which is the hop to the gateway.

The largest delay we can see here was on hop 5, which took 209 ms (from source 1 to hop 5). In other words, it took (209 – 8) 201 ms from hop 4 to 5.

What is the Difference between Tracert vs Traceroute?

Tracert and Traceroute have different syntax but both of these commands do the basic same thing.

What makes them different is the Operating System where they are executed, Tracert for Windows and Traceroute for Linux.

The other thing is how each command is implemented in the background.

On the foreground, you see the same kind of information for both cases. As a result of running tracert or traceroute, you will see the same route and transit delays of packets across the entire path.

The command is available in Unix-based, Linux, and MacOS as ‘traceroute’, while it is available as ‘tracert’ in Windows.

What is Traceroute?

Traceroute is a monitoring command commonly used by network and system administrators in their day-to-day operations.

This basic network diagnostic tool has three primary objectives, which give you an accurate and complete understanding of a network problem.

With Traceroute, you can?

  1. Get the complete path that a packet uses to reach its destination.
  2. Discover the names and identity of routers and devices within the path.
  3. Find the time it took to send and receive data to each device on the path.

Traceroute gives you complete information about the path that your data will take to reach its destination, without actually sending data (other than ICMP).

For example, if the source of the path (your computer) is in Boston, Massachusetts and the destination in San Jose, California (a Server), Traceroute will identify the complete path, each hop (the computers, routers, or any devices that comes in between the source and the destination) on the path, and the time it takes to go and come back.

СинтаксисSyntax

ПараметрыParameters

ПараметрParameter ОписаниеDescription
/d/d Останавливает попытки разрешения IP-адресов промежуточных маршрутизаторов в имена.Stops attempts to resolve the IP addresses of intermediate routers to their names. Это может ускорить возврат результатов.This can speed up the return of results.
/h /h Указывает максимальное число прыжков в пути для поиска целевого объекта (назначение).Specifies the maximum number of hops in the path to search for the target (destination). Значение по умолчанию — 30 прыжков.The default is 30 hops.
/j /j Указывает, что сообщения эхо-запроса используют параметр свободного исходного маршрута в заголовке IP с набором промежуточных назначений, указанных в .Specifies that echo Request messages use the Loose Source Route option in the IP header with the set of intermediate destinations specified in . При свободной маршрутизации последовательные промежуточные назначения могут быть разделены одним или несколькими маршрутизаторами.With loose source routing, successive intermediate destinations can be separated by one or multiple routers. Максимальное число адресов или имен в списке — 9.The maximum number of addresses or names in the list is 9. Представляет собой последовательность IP-адресов (в точечно-десятичной нотации), разделенных пробелами.The is a series of IP addresses (in dotted decimal notation) separated by spaces. Используйте этот параметр только при трассировке IPv4-адресов.Use this parameter only when tracing IPv4 addresses.
/w /w Указывает время в миллисекундах, в течение которого должно ожидаться получение сообщения о превышении времени ICMP или эхо-ответа, соответствующего заданному сообщению запроса эха.Specifies the amount of time in milliseconds to wait for the ICMP time Exceeded or echo Reply message corresponding to a given echo Request message to be received. Если оно не получено в течение времени ожидания, отображается звездочка ( ).If not received within the time-out, an asterisk () is displayed. Время ожидания по умолчанию — 4000 (4 секунды).The default time-out is 4000 (4 seconds).
/R/R Указывает, что заголовок расширения маршрутизации IPv6 используется для отправки сообщения эхо-запроса на локальный узел с использованием назначения в качестве промежуточного назначения и проверки обратного маршрута.Specifies that the IPv6 Routing extension header be used to send an echo Request message to the local host, using the destination as an intermediate destination and testing the reverse route.
Ключ /S Указывает исходный адрес, используемый в сообщениях эхо-запроса.Specifies the source address to use in the echo Request messages. Используйте этот параметр только при трассировке IPv6-адресов.Use this parameter only when tracing IPv6 addresses.
/4/4 Указывает, что для этой трассировки tracert.exe может использовать только IPv4.Specifies that tracert.exe can use only IPv4 for this trace.
/6/6 Указывает, что для этой трассировки tracert.exe может использовать только IPv6.Specifies that tracert.exe can use only IPv6 for this trace.
Указывает назначение, определенное IP-адресом или именем узла.Specifies the destination, identified either by IP address or host name.
/?/? Отображение справки в командной строке.Displays help at the command prompt.
Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Adblock
detector