Работа модуля IP в условиях необходимости учитывать наличие масок

Приведем возможный вариант таблицы маршрутизации маршрутизатора «M2» для рассматриваемого примера (предыдущий параграф) составной сети:

IP-адрес подсети назначения Маска подсети IP-адрес порта следующего маршрутизатора IP-адрес выходного порта маршрутизатора «M2» Расстояние (в хопах)
129.44.0.0 255.255.192.0 129.44.0.1 129.44.192.2 0
129.44.64.0 255.255.192.0 129.44.64.7 129.44.64.7 0
129.44.128.0 255.255.192.0 129.44.128.5 129.44.128.5 0
129.44.129.0 255.255.192.0 129.44.192.1 129.44.192.1 0
0.0.0.0 0.0.0.0 129.44.192.2 129.44.192.1 -
129.44.128.15 255.255.255.255 129.44.64.8 129.44.64.7 -

 

В первом столбце «IP-адрес подсети назначения» размещены записи двух типов:

1. IP-адреса подсетей, в которых для всех узлов данной IP-подсети определен один и тот же маршрут.

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

Например, для IP-адреса «129.44.128.15» определен специфический маршрут через порт «129.44.64.8» маршрутизатора «M3». Для таких IP-адресов (указан полный IP-адрес узла назначения) маска всегда имеет значение «255.255.255.255».

После того, как IP адрес назначения извлекается из заголовка очередного полученного IP-пакета (это делает IP-протокол маршрутизатора) необходимо определить IP-адрес порта следующего маршрутизатора, на который необходимо передать этот IP-пакет с этим IP-адресом назначения. Приоритет здесь за специфическим маршрутом для этого адресата. В этом случае, первоначально, просматриваются записи первого столбца таблицы маршрутизации, в которых маска второго столбца имеет значение «255.255.255.255». Значение IP-адреса первого столбца в этих строках сравнивается с IP-адресом назначения из заголовка пакета. Если произошло совпадение, то IP-адрес порта следующего маршрутизатора для данного пакета берется из данной строки. Если не произошло ни одного полного совпадения IP-адресов, то начинается поиск неспецифического маршрута общего для группы узлов, принадлежащих одной IP-подсети. Протокол IP выполняет при этом следующие действия:

1. Двоичное представление маски, которое содержится в данной записи таблицы, накладывается на IP-адрес узла назначения, который извлечен из пришедшего пакета. Полученное в результате число является IP-адресом подсети назначения обрабатываемого пакета.

2. Полученный IP-адрес подсети назначения пакета сравнивается со значениями IP-подсетей, которые находятся в первом столбце таблицы маршрутизации.

3. Если IP-адреса подсетей совпадают, то пакет передается маршрутизатору, IP-адрес порта которого помещен в соответствующее поле данной записи.

Все маршрутизаторы внешней сети, встретив пакеты, в заголовках которых встречаются IP-адреса назначения, которые начинаются с «129.44», интерпретируют их как адреса класса «B». Далее пакеты направляют по маршрутам, ведущим к маршрутизатору «M1», который в свою очередь направляет весь входной трафик составной сети «129.44.0.0» на порт «129.44.192.1» маршрутизатора «M2».

Маршрутизатор «M2» обрабатывает все поступившие на его порты пакеты в соответствии с основной таблицей маршрутизации. Первые четыре записи в этой таблице соответствуют внутренним подсетям, полученным в результате структуризации и, которые непосредственно подключены к его портам. Запись первого столбца этой таблицы со значением «0.0.0.0» с маской «0.0.0.0» соответствует маршруту по умолчанию. Действительно, любой IP-адрес назначения в заголовке пришедшего пакета после наложения на него маски «0.0.0.0» даст в результате IP-адрес подсети назначения «0.0.0.0», что совпадает с адресом IP-подсети назначения, указанным в этой записи первого столбца таблицы маршрутизации. Маршрутизатор выполняет сравнения с адресом IP-подсети назначения «0.0.0.0» в последнюю очередь. Точнее в случае, когда IP-адрес узла назначения в заголовке пришедшего пакета не дал совпадения ни с одной записью в таблице отличной от «0.0.0.0». Записей в таблице со значением первого столбца «0.0.0.0» может быть несколько, в этом случае маршрутизатор передает дальше пакет в составе поля данных сформированного кадра (точнее сформированных кадров) по всем таким маршрутам.

Последняя запись в этой таблице определяет специфический маршрут к узлу с IP-адресом «129.44.128.15». В отличие от всех других узлов IP-подсети «129.44.128.0», к которым пакеты поступают с интерфейса «129.44.128.5» маршрутизатора «M2» к данному узлу, они будут приходить через маршрутизатор «M3».

Пусть, например, с маршрутизатора «M1» на порт «129.44.192.1» маршрутизатора «M2» поступает пакет, в заголовке которого представлен IP-адрес узла назначения «129.44.78.200». Протокол IP сравнит целиком этот адрес со специфическим адресом первого столбца таблицы «129.44.128.15». Поскольку совпадения не произошло, то дальнейшие действия протокола IP сводятся к выделению в IP-адресе узла назначения «129.44.78.200», используя маску первой строки таблицы маршрутизации «255.255.192.0», IP-подсети назначения, которая в данном случае имеет следующий IP-адрес «129.44.64.0». Полученный адрес сравнивается с IP-адресом сети назначения первой записи первого столбца – «129.44.0.0». Поскольку значение этих подсетей не совпадает, то естественный образом происходит переход к следующей записи этой таблицы. А вот значение второй записи в первом столбце с выделенным IP-адресом подсети назначения дает совпадение. Это означает, что пакет в составе поля данных кадра, сформированного на маршрутизаторе «M2», дальше будет отправлен через порт маршрутизатора «M2» с IP-адресом «129.44.64.7» в IP-подсеть, непосредственно подключенную к указанному порту маршрутизатора «M2».


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



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