Таблица маршрутизации
Материал из Xgu.ru
Таблица маршрутизации — таблица, состоящая из сетевых маршрутов и предназначенная для определения
наилучшего пути передачи сетевого пакета.
Каждая запись в таблице маршрутизации состоит, как правило, из таких полей:
- адрес сети назначения (destination);
- маска сети назначения (netmask, genmask);
- адрес шлюза (gateway), за исключением тех случаев, когда описывается в маршрут непосредственно доступную (directly connected) сеть, в этом случае вместо адреса шлюза обычно указываются 0.0.0.0;
- метрика маршрута (не всегда).
Пример таблицы маршрутизации (ОС Linux):
%# route -n
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
192.168.0.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0
0.0.0.0 192.168.0.1 0.0.0.0 UG 0 0 0 eth0
При отправке сетевого пакета, операционная система смотрит, по какому именно маршруту он должен быть отправлен, основываясь на таблице маршрутизации. Как правило, выбирается наиболее конкретный (то есть, с наболее длинной сетевой маской) маршрут из тех, которые соответствуют адресу отправителя. Если ни один из маршрутов не подходит, пакет уничтожается, а его отправителю возвращается ICMP-сообщение No route to host.
[править] Просмотр таблицы маршрутизации
Таблица маршрутизации в UNIX просматривается командой
netstat -rn
В Linux это можно сделать также при помощи команд route и ip.
route -n ip route или ip r s
А также напрямую просмотрев файл /proc/net/route:
cat /proc/net/route
Таблица маршрутизации в маршрутизаторах Cisco:
router# show ip route
Таблица маршрутизации в устройствах Cisco ASA:
ciscoasa# show route
В Windows:
C:\> route print
В Android (как и в любом Linux):
cat /proc/net/route
[править] Модификация таблицы маршрутизации
Изменение записей в таблице маршрутизации может выполняться администратором системы вручную или специальным программным обеспечением, известным как демон маршрутизации.
В момент начальной загрузки системы таблица маршрутизации пуста, и пополняется потом, по мере загрузки системы и её дальнейшей работы.
[править] В маршрутизаторах Cisco
По умолчанию (пока маршрутизатор не настроен) таблица маршрутизации пуста. Источников заполнения её может быть несколько:
- непосредственно присоединенные сети — появляются в таблице маршрутизации после того как на интерфейсах маршрутизатора назначаются адреса и интерфейс находится в состоянии up;
- статические маршруты — создаются вручную администратором;
- маршруты протоколов динамической маршрутизации — с помощью этих протоколов маршрутизаторы сообщают друг другу об известных им маршрутах и заполняют таблицу.
Для того чтобы сравнить различные маршруты в одну и ту же сеть назначения полученные из одного источника, используется метрика маршрута. Маршрут с лучшей метрикой помещается в таблицу.
Если маршрутизатор получает информацию об одном и том же получателе или сети получателя из разных источников, то ему необходимо каким-то образом выбрать какой именно маршрут поместить в таблицу. Для этого используется administrative distance.
Administrative distance (AD) — это число, присвоенное каждому из возможных источников маршрутов, которое является некой степенью доверия к источнику. В таблицу маршрутизации попадет маршрут от того источника у которого меньше значение AD. AD имеет только локальное значение и никак не влияет на принятие решения на других маршрутизаторах.
Например, у непосредственно присоединенных сетей значение AD — 0, у статических — 1, OSPF — 110.
Это значит, что если маршрутизатор получит информацию об одной и той же сети от всех трех источников, то выберет он непосредственно присоединенный маршрут. По умолчанию статические маршруты всегда выигрывают у маршрутов протоколов динамической маршрутизации.
Значения AD для маршрутизаторов Cisco указаны на странице Маршрутизация в Cisco.
|
---|