Участник:Shovkoplyas Grigory
Содержание
Определения
Определение: |
Таблица маршрутизации — таблица, состоящая из сетевых маршрутов и предназначенная для определения наилучшего пути передачи сетевого пакета. |
Определение: |
Сетевой маршрут — запись таблицы маршрутизации, содержащая в себе адрес сети назначения (destination), маску сети назначения (netmask), шлюз (gateway), интерфейс (interface) и метрику (metric). |
Пример таблицы маршрутизации
Destination | Netmask | Gateway | Interface | Metric |
---|---|---|---|---|
0.0.0.0 | 0.0.0.0 | 192.168.0.1 | 192.168.0.100 | 10 |
127.0.0.0 | 255.0.0.0 | 127.0.0.1 | 127.0.0.1 | 1 |
192.168.0.0 | 255.255.255.0 | 192.168.0.100 | 192.168.0.100 | 10 |
192.168.0.100 | 255.255.255.255 | 127.0.0.1 | 127.0.0.1 | 10 |
192.168.0.1 | 255.255.255.255 | 192.168.0.100 | 192.168.0.100 | 10 |
Описание компонентов
Определение: |
Адрес сети назначения (Destination) — собственно, адрес конечного узла пути передачи сетевого пакета. |
Определение: |
Маска сети назначения (Netmask) — битовая маска, определяющая, какая часть IP-адреса узла сети относится к адресу сети, а какая — к адресу самого узла в этой сети. В двоичной записи всегда выглядит как множество единиц в начале и нулей в конце. |
Пример получения адреса сети
Двоичная запись | Десятичная запись | |
---|---|---|
IP-адрес | 11000000 10101000 00000001 00000010 | 192.168.1.2 |
Маска | 11111111 11111111 11111110 00000000 | 255.255.254.0 |
Адрес сети | 11000000 10101000 00000000 00000000 | 192.168.0.0 |
Чтобы вычислить адрес сети, нужно применить логическое и к адресу и маске.
Определение: |
Шлюз (Gateaway) — адрес узла в сети, на который необходимо отправить пакет, следующий до указанного адреса назначения. Шлюзы бывают по умолчанию, тогда значения адреса назначения и маски указываются как 0.0.0.0. |
Определение: |
Интерфейс (Interface) указывает, какой локальный интерфейс отвечает за достижение шлюза. Например, шлюз 192.168.0.1 (интернет-маршрутизатор) может быть достижим через локальную сетевую карту, адрес которой 192.168.0.100. |
Определение: |
Метрика (Metric) — числовой показатель, задающий предпочтительность маршрута. Чем меньше число, тем более предпочтителен маршрут. Интуитивно представляется как расстояние (необязательный параметр). |
Принцип действия
При отправке сетевого пакета, операционная система смотрит, по какому именно маршруту он должен быть отправлен, основываясь на таблице маршрутизации. Как правило, выбирается наиболее конкретный (т.е. с наиболее длинной сетевой маской) маршрут из тех, которые соответствуют адресу отправителя и имеют наименьшую метрику. Если ни один из маршрутов не подходит, пакет уничтожается, а его отправителю возвращается ICMP-сообщение No route to host.
Внутри каждого пакета есть поле TTL (Time to live) при каждой пересылке значение уменьшается на единицу, и если оно становится нулем, то пакет выбрасывается. ICMP-сообщение в данном случае TTL expired in transit.
Просмотр таблицы маршрутизации
Ниже приведены команды в разных операционных системах, с помощью которых можно посмотреть таблицу маршрутизации
Windows: route print
Linux: route -n
Источники информации
- Алексей Сорокин — Алгоритм Эрли
- Ахо А., Ульман Д.— Теория синтакcического анализа, перевода и компиляции. Том 1. Синтаксический анализ. Пер. с англ. — М.:«Мир», 1978. С. 358 — 364.