Таблица IP-маршрутизации

17.12.2019

Теги: LinuxWindowsКомандаЛокальнаяСетьТаблица

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

  • адрес сети или узла назначения, либо указание, что маршрут является маршрутом по умолчанию
  • маску сети назначения (маска 255.255.255.255 позволяет указать единичный узел сети)
  • шлюз, обозначающий адрес маршрутизатора в сети, на который необходимо отправить пакет, следующий до указанного адреса
  • интерфейс, через который доступен шлюз (это может быть порядковый номер, GUID или символьное имя устройства)
  • метрику — числовой показатель, задающий предпочтительность маршрута; чем меньше, тем предпочтительнее маршрут

Шлюз по умолчанию (default gateway) — адрес маршрутизатора, на который отправляется трафик, для которого невозможно определить маршрут, исходя из таблиц маршрутизации. Шлюз по умолчанию задаётся записью в таблице маршрутизации вида «сеть 0.0.0.0 с маской сети 0.0.0.0».

Просмотр маршрутов в Windows

Команда route выводит на экран все содержимое таблицы IP-маршрутизации и позволяет изменять записи. Запущенная без параметров, команда route выводит справку:

> route

Обработка таблиц сетевых маршрутов.

ROUTE [-f] [-p] [-4|-6] <команда> [<назначение>]
                  [MASK <маска_сети>]  [<шлюз>] [METRIC <метрика>]
                  [IF <интерфейс>]

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

  -p           При использовании с командой ADD маршрут
               сохраняется после перезагрузок системы. По умолчанию маршруты
               не сохраняются при перезагрузке. Пропускается для остальных
               команд, всегда изменяющих соответствующие постоянные маршруты.

  -4           Принудительное использование протокола IPv4.

  -6           Принудительное использование протокола IPv6.

   <команда>   Одна из следующих команд:
                 PRINT     Печать маршрута
                 ADD       Добавление маршрута
                 DELETE    Удаление маршрута
                 CHANGE    Изменение существующего маршрута
  <назначение> Задает узел.
  MASK         Далее следует значение параметра "маска_сети".
  <маска_сети> Значение маски подсети для записи данного маршрута.
               Если этот параметр не задан, по умолчанию используется
               значение 255.255.255.255.
  <шлюз>       Шлюз.
  <интерфейс>  Номер интерфейса для указанного маршрута.
  METRIC       Определение метрики, т. е. затрат для узла назначения.

Проводится поиск всех символических имен узлов в файле сетевой базы данных
NETWORKS. Проводится поиск символических имен шлюзов в файле базы данных имен
узлов HOSTS.

Для команд PRINT и DELETE можно указать узел или шлюз с помощью подстановочного
знака либо опустить параметр "шлюз".

Если узел содержит подстановочный знак "*" или "?", он используется
в качестве шаблона и печатаются только соответствующие ему маршруты. Знак "*"
соответствует любой строке, а "?" - любому знаку.
Примеры: 157.*.1, 157.*, 127.*, *224*.

Соответствие шаблону поддерживает только команда PRINT.
Диагностические сообщения:
    Недопустимое значение MASK вызывает ошибку, если (УЗЕЛ МАСКА) != УЗЕЛ.
    Например> route ADD 157.0.0.0 MASK 155.0.0.0 157.55.80.1 IF 1
             Добавление маршрута завершится ошибкой, так как указан
             недопустимый параметр маски. (Узел & Маска) != Узел.

Примеры:

    > route PRINT
    > route PRINT -4
    > route PRINT -6
    > route PRINT 157*          .... Печать только узлов, начинающихся со 157

    > route ADD 157.0.0.0 MASK 255.0.0.0  157.55.80.1 METRIC 3 IF 2
             узел^      ^маска      ^шлюз     метрика^    ^
                                                         интерфейс^
      Если IF не задан, то производится попытка найти лучший интерфейс для
      указанного шлюза.
    > route ADD 3ffe::/32 3ffe::1

    > route CHANGE 157.0.0.0 MASK 255.0.0.0 157.55.80.5 METRIC 2 IF 2

      Параметр CHANGE используется только для изменения шлюза или метрики.

    > route DELETE 157.0.0.0
    > route DELETE 3ffe::/32

Просмотр таблицы маршрутизации:

> route print
===========================================================================
Список интерфейсов
 21...0a 00 27 00 00 15 ......VirtualBox Host-Only Ethernet Adapter
  5...0a 00 27 00 00 05 ......VirtualBox Host-Only Ethernet Adapter #2
 20...1c 1b 0d e6 14 bd ......Realtek PCIe GbE Family Controller
  1...........................Software Loopback Interface 1
===========================================================================

IPv4 таблица маршрута
===========================================================================
Активные маршруты:
Сетевой адрес           Маска сети      Адрес шлюза       Интерфейс  Метрика
          0.0.0.0          0.0.0.0    192.168.110.1    192.168.110.2     35
        127.0.0.0        255.0.0.0         On-link         127.0.0.1    331
        127.0.0.1  255.255.255.255         On-link         127.0.0.1    331
  127.255.255.255  255.255.255.255         On-link         127.0.0.1    331
     172.28.128.0    255.255.255.0         On-link      172.28.128.1    281
     172.28.128.1  255.255.255.255         On-link      172.28.128.1    281
   172.28.128.255  255.255.255.255         On-link      172.28.128.1    281
     192.168.53.0    255.255.255.0         On-link      192.168.53.1    281
     192.168.53.1  255.255.255.255         On-link      192.168.53.1    281
   192.168.53.255  255.255.255.255         On-link      192.168.53.1    281
    192.168.110.0    255.255.255.0         On-link     192.168.110.2    291
    192.168.110.2  255.255.255.255         On-link     192.168.110.2    291
  192.168.110.255  255.255.255.255         On-link     192.168.110.2    291
        224.0.0.0        240.0.0.0         On-link         127.0.0.1    331
        224.0.0.0        240.0.0.0         On-link      172.28.128.1    281
        224.0.0.0        240.0.0.0         On-link      192.168.53.1    281
        224.0.0.0        240.0.0.0         On-link     192.168.110.2    291
  255.255.255.255  255.255.255.255         On-link         127.0.0.1    331
  255.255.255.255  255.255.255.255         On-link      172.28.128.1    281
  255.255.255.255  255.255.255.255         On-link      192.168.53.1    281
  255.255.255.255  255.255.255.255         On-link     192.168.110.2    291
===========================================================================
Постоянные маршруты:
  Отсутствует

IPv6 таблица маршрута
===========================================================================
Активные маршруты:
 Метрика   Сетевой адрес            Шлюз
  1    331 ::1/128                  On-link
 20    291 fe80::/64                On-link
  5    281 fe80::/64                On-link
 21    281 fe80::/64                On-link
 21    281 fe80::14e:9612:aea9:b378/128
                                    On-link
  5    281 fe80::61bb:3768:1294:4dc0/128
                                    On-link
 20    291 fe80::a872:bd46:b87d:7fac/128
                                    On-link
  1    331 ff00::/8                 On-link
 21    281 ff00::/8                 On-link
  5    281 ff00::/8                 On-link
 20    291 ff00::/8                 On-link
===========================================================================
Постоянные маршруты:
  Отсутствует

Команда tracert предоставляет возможность определить маршрут, по которому проходит пакет до заданного узла:

> tracert ya.ru

Трассировка маршрута к ya.ru [87.250.250.242]
с максимальным числом прыжков 30:

  1    <1 мс    <1 мс    <1 мс  192.168.110.1
  2     1 ms    <1 мс    <1 мс  78.107.125.69
  3     1 ms     1 ms     1 ms  stpert-bng1-local.msk.corbina.net [85.21.0.172]
  4     1 ms     1 ms     1 ms  10.2.254.10
  5     3 ms     3 ms     3 ms  korova-bb-be5.corbina.net [195.14.54.195]
  6     2 ms     2 ms     2 ms  85.21.224.96
  7     2 ms     2 ms     2 ms  85.21.224.54
  8     3 ms     2 ms     3 ms  m9-br-be1.corbina.net [195.14.54.79]
  9     7 ms     7 ms    12 ms  corbina-gw.dante.yandex.net [83.102.145.178]
 10     5 ms     4 ms     4 ms  ya.ru [87.250.250.242]

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

Просмотр маршрутов в Linux

Команда route выводит на экран все содержимое таблицы IP-маршрутизации и позволяет изменять записи.

$ $ route --help
Использование: route [-nNvee] [-FC] [<AF>] Отобразить таблицу маршрутизации ядра
       route [-v] [-FC] {add|del|flush} ... Изменить таблицу маршрутизации для AF.

       route {-h|--help} [<AF>] Детальное описание использование указанной AF.
       route {-V|--version} Отобразить версию/автора и выйти.

        -v, --verbose более детальный вывод
        -n, --numeric не преобразовывать адреса в имена
        -e, --extend отображать другую/больше информации
        -F, -fib отобразить информацию форвардинга базы (по умолчанию)
        -C, --cache отобразить кэш маршрутизации вместо FIB

  <AF>=Use -4, -6, '-A <af>' or '--<af>'; default: inet
  Список возможный адресных семейств (которые поддерживают маршрутизацию):
    inet (DARPA Internet) inet6 (IPv6) ax25 (AMPR AX.25) 
    netrom (AMPR NET/ROM) ipx (Novell IPX) ddp (Appletalk DDP) 
    x25 (CCITT X.25)

Просмотр таблицы маршрутизации:

$ route
Таблица маршрутизации ядра протокола IP
Destination     Gateway    Genmask         Flags   Metric   Ref   Use   Iface
default         _gateway   0.0.0.0         UG      100      0     0     enp0s3
link-local      0.0.0.0    255.255.0.0     U       1000     0     0     enp0s3
192.168.110.0   0.0.0.0    255.255.255.0   U       100      0     0     enp0s3
$ route -n
Таблица маршрутизации ядра протокола IP
Destination     Gateway         Genmask         Flags   Metric   Ref   Use   Iface
0.0.0.0         192.168.110.1   0.0.0.0         UG      100      0     0     enp0s3
169.254.0.0     0.0.0.0         255.255.0.0     U       1000     0     0     enp0s3
192.168.110.0   0.0.0.0         255.255.255.0   U       100      0     0     enp0s3

Утилита traceroute предоставляет возможность определить маршрут, по которому проходит пакет до заданного узла:

$ sudo apt install traceroute
$ traceroute ya.ru
traceroute to ya.ru (87.250.250.242), 30 hops max, 60 byte packets
 1  _gateway (192.168.110.1)  0.697 ms  0.607 ms  0.584 ms
 2  78.107.125.69 (78.107.125.69)  2.050 ms  1.967 ms  1.777 ms
 3  stpert-bng1-local.msk.corbina.net (85.21.0.172)  1.679 ms  1.605 ms  1.499 ms
 4  10.2.254.10 (10.2.254.10)  2.215 ms  2.180 ms  2.167 ms
 5  korova-bb-be5.corbina.net (195.14.54.195)  3.577 ms  3.544 ms  3.824 ms
 6  85.21.224.96 (85.21.224.96)  2.645 ms  2.208 ms  2.149 ms
 7  m9-crs-be13.corbina.net (85.21.224.54)  3.762 ms  3.207 ms  3.794 ms
 8  m9-br-be3.corbina.net (195.14.62.85)  3.716 ms  3.639 ms m9-br-be1.corbina.net (195.14.54.79)  3.559 ms
 9  corbina-gw.dante.yandex.net (83.102.145.178)  6.750 ms  11.716 ms  16.226 ms
10  ya.ru (87.250.250.242)  5.330 ms  8.678 ms  8.628 ms

Поиск: Linux • Windows • Локальная сеть • route • Маска сети • Шлюз • Маршрут • Таблица • Адрес • Команда

Каталог оборудования
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.
Производители
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.
Функциональные группы
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.