Маршрутизация

Как было сказано выше, IP-адрес включает две части: адрес подсети и адрес конкретного узла в рамках этой подсети. Маска подсети показывает, сколько бит в IP-адресе содержат адрес подсети (остальные — это адрес узла). Таким образом, располагая IP-адресом узла назначения и маской подсети всегда позволяет определить, относится ли узел назначения к той же подсети. В этом случае пакеты к ним будет доставляться напрямую через канальный уровень.

Более сложный вопрос встает, если IP-адрес узла-адресата не входит в локальную сеть узла-отправителя. Ведь и в этом случае пакет необходимо отослать какому-то абоненту локальной сети, с тем, чтобы тот перенаправил его дальше. Этот абонент, маршрутизатор, подключен к нескольким сетям, и ему вменяется в обязанность пересылать пакеты между ними по определенным правилам. В самом простом случае таких сетей две: «внутренняя», к которой подключены компьютеры, и «внешняя», соединяющая маршрутизатор со всей глобальной сетью. Таблицу, управляющую маршрутизацией пакетов, можно просмотреть с помощью утилиты netstat -r или route (обе утилиты имеют ключ -n, заставляющий их использовать в выдаче IP-адреса, а не имена компьютеров):

Пример 2.6. Вывод таблицы маршрутизации (route)

desktop ~ # route -nKernel IP routing tableDestination Gateway Genmask Flags Metric Ref Use Iface192.168.1.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0127.0.0.0 0.0.0.0 255.0.0.0 U 0 0 0 lo0.0.0.0 192.168.1.1 0.0.0.0 UG 0 0 0 eth0

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

Для изменения таблицы маршрутизации используется та же утилита route. Утилита ip объединяет возможности как по настройке сетевых интерфейсов, так и таблицы маршрутизации.

Служебный протокол ICMP

Есть такие протоколы уровня IP, действие которых этим уровнем и ограничивается. Например, служебный протокол ICMP (Internet Control Message Protocol), предназначенный для передачи служебных сообщений.

Примером применения ICMP является утилита ping, которая позволяет проверить работоспособность узлов в сети. Другое применение ICMP — сообщать отправителю, почему его пакет невозможно доставить адресату, или передавать информацию об изменении маршрута, о возможности фрагментации и т. п.

Ещё одна задача, которую можно решить использованием протокола ICMP, является определение маршрута следования пакета. В UNIX существует ряд альтернативных команд для определения приблизительного маршрута прохождения пакета по сети: traceroute, tracepath и т. п.


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: