Схема маршрутизации сети. Настройка статической маршрутизации. Статические и динамические маршрутизаторы

Маршрутизация (англ.Routing) - процесс определения маршрута следования информации в сетях связи.

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

Статическими маршрутами могут быть:

Маршруты, не изменяющиеся во времени;

Маршруты, изменяющиеся по расписанию.

Маршрутизация в компьютерных сетях типично выполняется специальными программно-аппаратными средствами - маршрутизаторами; в простых конфигурациях может выполняться и компьютерами общего назначения, соответственно настроенными.

В общедоступном значении слова маршрутизация означает передвижение информации от источника к пункту назначения через об"единенную сеть. При этом, как правило, на пути встречается по крайней мере один узел. Маршрутизация часто противопоставляется об"единению сетей с помощью моста, которое, в популярном понимании этого способа, выполняет точно такие же функции. Основное различие между ними заключается в том, что об"единение с помощью моста имеет место на Уровне 2 эталонной модели ISO, в то время как маршрутизация встречается на Уровне 3. Этой разницей об"ясняется то, что маршрутизация и об"единение по мостовой схеме используют различную информацию в процессе ее перемещения от источника к месту назначения. Результатом этого является то, что маршрутизация и об"единение с помощью моста выполняют свои задачи разными способами; фактически, имеется несколько различных видов маршрутизации и об"единения с помощью мостов.

Компоненты маршрутизации

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

Определение маршрута

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

Для облегчения процесса определения маршрута, алгоритмы маршрутизации инициализируют и поддерживают таблицы маршрутизации, в которых содержится маршрутная информация. Маршрутная информация изменяется в зависимости от используемого алгоритма маршрутизации.

Алгоритмы маршрутизации заполняют маршрутные таблицы неким множеством информации. Ассоциации "Пункт назначения/следующая пересылка" сообщают роутеру, что определенный пункт назначения может быть оптимально достигнут путем отправки пакета в определенный роутер, представляющий "следующую пересылку" на пути к конечному пункту назначения. При приеме поступающего пакета роутер проверяет адрес пункта назначения и пытается ассоциировать этот адрес со следующей пересылкой

В маршрутных таблицах может содержаться также и другая информация. "Показатели" обеспечивают информацию о желательности какого-либо канала или тракта. Роутеры сравнивают показатели, чтобы определить оптамальные маршруты. Показатели отличаются друг oт друга в зависимости от использованной схемы алгоритма маршрутизации. Далее в этой главе будет представлен и описан ряд общих показателей.

Роутеры сообщаются друг с другом (и поддерживают свои маршрутные таблицы) путем передачи различных сообщений. Одним из видов таких сообщений является сообщение об "обновлении маршрутизации". Обновления маршрутизации обычно включают всю маршрутную таблицу или ее часть. Анализируя информацию об обновлении маршрутизации, поступающую ото всех роутеров, любой из них может построить детальную картину топологии сети. Другим примером сообщений, которыми обмениваются роутеры, является "об"явление о состоянии канала". Об"явление о состоянии канала информирует другие роутеры о состоянии кааналов отправителя. Канальная информация также может быть использована для построения полной картины топологии сети. После того, как топология сети становится понятной, роутеры могут определить оптимальные маршруты к пунктам назначения.

Коммутация

Алгоритмы коммутации сравнительно просты и в основном одинаковы для большинства протоколов маршрутизации. В большинстве случаев главная вычислительная машина определяет необходимость отправки пакета в другую главную вычислительную машину. Получив определенным способом адрес роутера, главная вычислительная машина-источник отправляет пакет, адресованный специально в физический адрес роутера (уровень МАС), однако с адресом протокола (сетевой уровень) главной вычислительной машины пункта назначения.

После проверки адреса протокола пункта назначения пакета роутер определяет, знает он или нет, как передать этот пакет к следующему роутеру. Во втором случае (когда роутер не знает, как переслать пакет) пакет, как правило, игнорируется. В первом случае роутер отсылает пакет к следующей роутеру путем замены физического адреса пункта назначения на физический адрес следующего роутера и последующей передачи пакета.

Следующая пересылка может быть или не быть главной вычислительной машиной окончательного пункта назначения. Если нет,то следующей пересылкой, как правило, является другой роутер, который выполняет такой же процесс принятия решения о коммутации. По мере того, как пакет продвигается через об"единенную сеть, его физический адрес меняется, однако адрес протокола остается неизменным. Этот процесс иллюстрируется на рисунке.

В изложенном выше описании рассмотрена коммутация между источником и системой конечного пункта назначения. Международная Организация по Стандартизации (ISO) разработала иерархическую терминологию, которая может быть полезной при описании этого процесса. Если пользоваться этой терминологией, то устройства сети, не обладающие способностью пересылать пакеты между подсетями, называются конечными системами (ЕS), в то время как устройства сети, имеющие такую способность, называются промежуточными системами (IS). Промежуточные системы далее подразделяются на системы, которые могут сообщаться в пределах "доменов мааршрутизации" ("внутридоменные" IS), и системы, которые могут сообщаться как в пределах домена маршрутизации, так и с другими доменами маршрутизации ("междоменные IS"). Обычно считается, что "домен маршрутизации" - это часть об"единенной сети, находящейся под общим административным управлением и регулируемой пределенным набором административных руководящих принципов. Домены маршрутизации называются также "автономными системами" (AS). Для опрелеленных протоколов домены маршрутизации могут быть дополнительно подразделены на "участки маршрутизации", однако для коммутации как внутри участков, так и между ними также используются внутридоменные протоколы маршрутизации.

Алгоритмы маршрутизации

Алгоритмы маршрутизации можно дифференцировать, основываясь на нескольких ключевых характеристиках. Во-первых, на работу результирующего протокола маршрутизации влияют конкретные задачи, которые решает разработчик алгоритма. Во-вторых, существуют различные типы алгоритмов маршрутизации, и каждый из них по-разному влияет на сеть и ресурсы маршрутизации. И наконец, алгоритмы маршрутизации используют разнообразные показатели, которые влияют на расчет оптимальных маршрутов. В следующих разделах анализируются эти атрибуты алгоритмов маршрутизации.

Цели разработки алгоритмов маршрутизации

При разработке алгоритмов маршрутизации часто преследуют одну или несколько из перечисленных ниже целей:

1. Оптимальность

2. Простота и низкие непроизводительные затраты

3. Живучесть и стабильность

4. Быстрая сходимость

5. Гибкость

Оптимальность

Оптимальность, вероятно, является самой общей целью разработки. Она характеризует способность алгоритма маршрутизации выбирать "наилучший" маршрут. Наилучший маршрут зависит от показателей и от "веса" этих показателей, используемых при проведении расчета. Например, алгоритм маршрутизации мог бы использовать несколько пересылок с определенной задержкой, но при расчете "вес" задержки может быть им оценен как очень значительный. Естественно, что протоколы маршрутизации дожны строгo определять свои алгоритмы расчета показателей.

Простота и низкие непроизводительные затраты

Алгоритмы маршрутизации разрабатываются как можно более простыми. Другими словами, алгоритм маршрутизации должен эффективно обеспечивать свои функциональные возможности, с мимимальными затратами программного обеспечения и коэффициентом использования. Особенно важна эффективность в том случае, когда программа, реализующая алгоритм маршрутизации, должна работать в компьютере с ограниченными физическими ресурсами.

Живучесть и стабильность

Алгоритмы маршрутизации должны обладать живучестью. Другими словми, они должны четко функционировать в случае неординарных или непредвиденных обстоятельств, таких как отказы аппаратуры, условия высокой нагрузки и некорректные реализации. Т.к. роутеры расположены в узловых точках сети, их отказ может вызвать значительные проблемы.

Часто наилучшими алгоритмами маршрутизации оказываются те, которые выдержали испытание временем и доказали свою надежность в различных условиях работы сети.

Быстрая сходимость

Алгоритмы маршрутизации должны быстро сходиться. Сходимость - это процесс соглашения между всеми роутерами по оптимальным маршрутам. Когда какое-нибудь событие в сети приводит к тому, что маршруты или отвергаются, или ставновятся доступными, роутеры рассылают сообщения об обновлении маршрутизации. Сообщения об обновлении маршрутизации пронизывают сети, стимулируя пересчет оптимальных маршрутов и, в конечном итоге, вынуждая все роутеры придти к соглашению по этим маршрутам. Алгоритмы мааршрутизации, которые сходятся медленно, могут привести к образованию петель маршрутизации или выходам из строя сети.

Гибкость

Алгоритмы маршрутизации должны быть также гибкими. Другими словами, алгоритмы маршрутизации должны быстро и точно адаптироваться к разнообразным обстоятельствам в сети. Например, предположим, что сегмент сети отвергнут. Многие алгоритмы маршрутизации, после того как они узнают об этой проблеме, быстро выбирают следующий наилучший путь для всех маршрутов, которые обычно используют этот сегмент. Алгоритмы маршрутизации могут быть запрограммированы таким образом, чтобы они могли адаптироваться к изменениям полосы пропускания сети, размеров очереди к роутеру, величины задержки сети и других переменных.

Типы алгоритмов

Алгоритмы маршрутизации могут быть классифицированы по типам. Например, алгоритмы могут быть:

1. Статическими или динамическими

2. Одномаршрутными или многомаршрутными

3. Одноуровневыми или иерархическими

4. С интеллектом в главной вычислительной машине или в роутере

5. Внутридоменными и междоменными

6. Алгоритмами состояния канала или вектора расстояний

Статические или динамические алгоритмы

Статические алгоритмы маршрутизации вообще вряд ли являются алгоритмами. Распределение статических таблиц маршрутизации устанавливется администратором сети до начала маршрутизации. Оно не меняется, если только администратор сети не изменит его. Алгоритмы, использующие статические маршруты, просты для разработки и хорошо работают в окружениях, где трафик сети относительно предсказуем, а схема сети относительно проста.

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

Динамические алгоритмы маршрутизации подстраиваются к изменяющимся обстоятельствам сети в масштабе реального времени. Они выполняют это путем анализа поступающих сообщений об обновлении маршрутизации. Если в сообщении указывается, что имело место изменение сети, программы маршрутизации пересчитывают маршруты и рассылают новые сообщения о корректировке маршрутизации. Такие сообщения пронизывают сеть, стимулируя роутеры заново прогонять свои алгоритмы и соответствующим образом изменять таблицы маршрутизации. Динамические алгоритмы маршрутизации могут дополнять статические маршруты там, где это уместно. Например, можно разработать "роутер последнего обращения" (т.е. роутер, в который отсылаются все неотправленные по определенному маршруту пакеты). Такой роутер выполняет роль хранилища неотправленных пакетов, гарантируя, что все сообщения будут хотя бы определенным образом обработаны.

Одномаршрутные или многомаршрутные алгоритмы

Некоторые сложные протоколы маршрутизации обеспечивают множество маршрутов к одному и тому же пункту назначения. Такие многомаршрутные алгоритмы делают возможной мультиплексную передачу трафика по многочисленным линиям; одномаршрутные алгоритмы не могут делать этого. Преимущества многомаршрутных алгоритмов очевидны - они могут обеспечить заначительно большую пропускную способность и надежность.

Одноуровневые или иерархические алгоритмы

Некоторые алгоритмы маршрутизации оперируют в плоском пространстве, в то время как другие используют иерархиии маршрутизации. В одноуровневой системе маршрутизации все роутеры равны по отношению друг к другу. В иерархической системе маршрутизации некоторые роутеры формируют то, что составляет основу (backbone - базу) маршрутизации. Пакеты из небазовых роутеров перемещаются к базовыи роутерам и пропускаются через них до тех пор, пока не достигнут общей области пункта назначения. Начиная с этого момента, они перемещаются от последнего базового роутера через один или несколько небазовых роутеров до конечного пункта назначения.

Системы маршрутизации часто устанавливают логические группы узлов, называемых доменами, или автономными системами (AS), или областями. В иерархических системах одни роутеры какого-либо домена могут сообщаться с роутерами других доменов, в то время как другие роутеры этого домена могут поддерживать связь с роутеры только в пределах своего домена. В очень крупных сетях могут существовать дополнительные иерархические уровни. Роутеры наивысшего иерархического уровня образуют базу маршрутизации.

Основным преимуществом иерархической маршрутизации является то, что она имитирует организацию большинства компаний и следовательно, очень хорошо поддерживает их схемы трафика. Большая часть сетевой связи имеет место в пределах групп небольших компаний (доменов). Внутридоменным роутерам необходимо знать только о других роутерах в пределах своего домена, поэтому их алгоритмы маршрутизации могут быть упрощенными. Соответственно может быть уменьшен и трафик обновления маршрутизации, зависящий от используемого алгоритма маршрутизации.

Алгоритмы с игнтеллектом в главной вычислительной машине или в роутере

Некоторые алгоритмы маршрутизации предполагают, что конечный узел источника определяет весь маршрут. Обычно это называют маршрутизацией от источника. В системах маршрутизации от источника роутеры действуют просто как устойства хранения и пересылки пакета, без всякий раздумий отсылая его к следующей остановке.

Другие алгоритмы предполагают, что главные вычислительные машины ничего не знают о маршрутах. При использовании этих алгоритмов роутеры определяют маршрут через об"единенную сеть, базируясь на своих собственных расчетах. В первой системе, рассмотренной выше, интеллект маршрутизации находится в главной вычислительной машине. В системе, рассмотренной во втором случае, интеллектом маршрутизации наделены роутеры.

Компромисс между маршрутизацией с интеллектом в главной вычислительной машине и маршрутизацией с интеллектом в роутере достигается путем сопоставления оптимальности маршрута с непроизводительными затратами трафика. Системы с интеллектом в главной вычислительной машине чаще выбирают наилучшие маршруты, т.к. они, как правило, находят все возможные маршруты к пункту назначения, прежде чем пакет будет действительно отослан. Затем они выбирают наилучший мааршрут, основываясь на определении оптимальности данной конкретной системы. Однако акт определения всех маршрутов часто требует значительного трафика поиска и большого об"ема времени.

Внутридоменные или междоменные алгоритмы

Некоторые алгоритмы маршрутизации действуют только в пределах доменов; другие - как в пределах доменов, так и между ними. Природа этих двух типов алгоритмов различная. Поэтому понятно, что оптимальный алгоритм внутридоменной маршрутизации не обязательно будет оптимальным алгоритмом междоменной маршрутизации.

Алгоритмы состояния канала или вектора расстояния

Алгоритмы состояния канала (известные также как алгоритмы "первоочередности наикратчайшего маршрута") направляют потоки маршрутной информации во все узлы об"единенной сети. Однако каждый роутер посылает только ту часть маршрутной таблицы, которая описывает состояние его собственных каналов. Алгоритмы вектора расстояния (известные также как алгоритмы Бэлмана-Форда) требуют от каждогo роутера посылки всей или части своей маршрутной таблицы, но только своим соседям. Алгоритмы состояния каналов фактически направляют небольшие корректировки по всем направлениям, в то время как алгоритмы вектора расстояний отсылают более крупные корректировки только в соседние роутеры.

Отличаясь более быстрой сходимостью, алгоритмы состояния каналов несколько меньше склонны к образованию петель маршрутизации, чем алгоритмы вектора расстояния. С другой стороны, алгоритмы состояния канала характеризуются более сложными расчетами в сравнении с алгоритмами вектора расстояний, требуя большей процессорной мощности и памяти, чем алгоритмы вектора расстояний. Вследствие этого, реализация и поддержка алгоритмов состояния канала может быть более дорогостоящей. Несмотря на их различия, оба типа алгоритмов хорошо функционируют при самых различных обстоятельствах.

Показатели алгоритмов (метрики)

Маршрутные таблицы содержат информацию, которую используют программы коммутации для выбора наилучшего маршрута. Чем характеризуется построение маршрутных таблиц? Какова особенность природы информации, которую они содержат? В данном разделе, посвященном показателям алгоритмов, сделана попытка ответить на вопрос о том, каким образом алгоритм определяет предпочтительность одного маршрута по сравнению с другими.

В алгоритмах маршрутизации используется много различных показателей. Сложные алгоритмы маршрутизации при выборе маршрута могут базироваться на множестве показателей, комбинируя их таким образом, что в результате получается один отдельный (гибридный) показатель. Ниже перечислены показатели, которые используются в алгоритмах маршрутизации:

    Длина маршрута

    Надежность

    Задержка

    Ширина полосы пропускания

    Стоимость связи

Длина маршрута

Длина маршрута является наиболее общим показателем маршрутизации. Некоторые протоколы маршрутизации позволяют администраторам сети назначать произвольные цены на каждый канал сети. В этом случае длиной тракта является сумма расходов, связанных с каждым каналом, который был траверсирован. Другие протоколы маршрутизации определяют "количество пересылок", т.е. показатель, характеризующий число проходов, которые пакет должен совершить на пути от источника до пункта назначения через изделия об"единения сетей (такие как роутеры).

Надежность

Надежность, в контексте алгоритмов маршрутизации, относится к надежности каждого канала сети (обычно описываемой в терминах соотношения бит/ошибка). Некоторые каналы сети могут отказывать чаще, чем другие. Отказы одних каналов сети могут быть устранены легче или быстрее, чем отказы других каналов. При назначении оценок надежности могут быть приняты в расчет любые факторы надежности. Оценки надежности обычно назначаются каналам сети администраторами сети. Как правило, это произвольные цифровые величины.

Задержка

Под задержкой маршрутизации обычно понимают отрезок времени, необходимый для передвижения пакета от источника до пункта назначения через об"единенную сеть. Задержка зависит от многих факторов, включая полосу пропускания промежуточных каналов сети, очереди в порт каждого роутера на пути передвижения пакета, перегруженность сети на всех промежуточных каналах сети и физическое расстояние, на которое необходимо переместить пакет. Т.к. здесь имеет место конгломерация нескольких важных переменных, задержка является наиболее общим и полезным показателем.

Полоса пропускания

Полоса пропускания относится к имеющейся мощности трафика какого-либо канала. При прочих равных показателях, канал Ethernet 10 Mbps предпочтителен любой арендованной линии с полосой пропускания 64 Кбайт/сек. Хотя полоса пропускания является оценкой максимально достижимой пропускной способности канала, маршруты, проходящие через каналы с большей полосой пропускания, не обязательно будут лучше маршрутов, проходящих через менее быстродействующие каналы.

M еню «IP Interfase Settings»

Сегментация трафика

Сегментация трафика служит для разграничения доменов на уровне 2.Данная функция позволяет настраивать порты таким образом, чтобы они были изолированы друг от друга, но в то же время имели доступ к разделяемым портам, используемым для подключения серверов и магистрали сети провайдера. Данная функция может быть использована при построении сетей провайдеров.

Пример использования функции Traffic Segmentation.

Все компьютеры (PC2 - PC24) имеют доступ к порту uplink, но не имеют доступа друг к друг на канальном уровне. Это решение можно использовать:

1.В проектах ETTH для изоляции портов конечных пользователей.

2.Для предоставления доступа к общему серверу

Задание

1. Соберите топологию сети представленную на рисунке

2. Изучите разделы «Адресация в IP-сетях», «IP маршрутизация» и меню «IP Interfase Settings»

3. Создать IPподсети. Назначить каждому ПКIPадрес из собственной подсети

4. Изучить раздел «Сегментация трафика» и меню «Traffic Segmentation»

5. Организовать на каждом из коммутаторов DES-3010Gпринцип «расчески» - каждый компьютер, подключенный к коммутатору, может обмениваться информацией только с внешним миром, но не с другими компьютерами, подключенными к этому коммутатору.

6. Подтвердите правильность сделанных настроек.

Вопросы для самоконтроля.

1. Типы адресов.

2. Уровни IP адреса.

3. Классы IP адресов. Привести примеры.

4. Особенности протоколов ARP и RARP.

5. Служба DNS

6. Функции DHCP-сервера.

7. Виды маршрутизации.

8. Компоненты маршрутизации

9. Определение маршрута

10. Коммутация

11. Алгоритмы маршрутизации

12. Цели разработки алгоритмов маршрутизации

13. Типы алгоритмов

14. Показатели алгоритмов (метрики)

15. Какие настройки можно организовать с помощью меню «IP Interfase Settings»?

16. Для чего служит сегментация трафика? Покажимте на примере.

16. Какие настройки можно организовать с помощью меню «Traffic Segmentation»?

IP-адреса для локальных сетей

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

Для локальных сетей, не подключенных к Интернету, регистрация IP-адресов, естественно, не требуется, так что, в принципе, здесь можно использовать любые возможные адреса. Однако, чтобы не допускать возможных конфликтов при последующем подключении такой сети к Интернету, RFC 1918 рекомендует применять в локальных сетях только следующие диапазоны так называемых частных (private) IP-адресов (в Интернете эти адреса не существуют и использовать их там нет возможности):

□ 10.0.0.0–10.255.255.255;

□ 172.16.0.0–172.31.255.255;

□ 192.168.0.0–192.168.255.255.

Как уже говорилось, чтобы правильно взаимодействовать с другими компьютерами и сетями, каждый компьютер определяет, какие IP-адреса принадлежат его локальной сети, а какие – удаленным сетям. Если выясняется, что IP-адрес компьютера назначения принадлежит локальной сети, пакет посылается непосредственно компьютеру назначения, если же это адрес удаленной сети, то пакет посылается по адресу основного шлюза.

Рассмотрим этот процесс подробнее. Возьмем компьютер со следующими параметрами протокола IP:

□ IP-адрес – 192.168.5.200;

□ маска подсети – 255.255.255.0;

□ основной шлюз – 192.168.5.1.

При запуске протокола IP на компьютере выполняется операция логического «И» между его собственными IP-адресом и маской подсети, в результате которой все биты IP-адреса, соответствующие нулевым битам маски подсети, также становятся нулевыми:

□ IP-адрес в 32-разрядном виде –

11000000 10101000 00000101 11001000;

□ маска подсети –

11111111 11111111 11111111 00000000;

□ идентификатор сети –

11000000 10101000 00000101 00000000.

Эта простая операция позволяет компьютеру определить идентификатор собственной сети (в нашем примере – 192.168.5.0).

Теперь предположим, что компьютеру надо отправить IP-пакет по адресу 192.168.5.15. Чтобы решить, как это нужно сделать, компьютер выполняет операцию логического «И» с IP-адресом компьютера назначения и собственной маской подсети. Легко понять, что полученный в результате идентификатор сети назначения будет совпадать с идентификатором собственной сети компьютера-отправителя. Так наш компьютер определит, что компьютер назначения находится в одной с ним сети, и выполнит следующие операции:

□ с помощью протокола ARP будет определен физический MAC-адрес, соответствующий IP-адресу компьютера назначения;



□ с помощью протоколов канального и физического уровня по этому MAC-адресу будет послана нужная информация.

Теперь посмотрим, что изменится, если пакет надо отправить по адресу 192.168.10.20. Компьютер выполнит аналогичную процедуру определения идентификатора сети назначения. В результате будет получен адрес 192.168.10.0, не совпадающий с идентификатором сети компьютера-отправителя. Так будет установлено, что компьютер назначения находится в удаленной сети, и алгоритм действий компьютера-отправителя изменится:

□ будет определен MAC-адрес не компьютера назначения, а маршрутизатора;

□ с помощью протоколов канального и физического уровня по этому MAC-адресу на маршрутизатор будет послана нужная информация.

Несмотря на то, что IP-пакет в этом случае не доставляется непосредственно по назначению, протокол IP на компьютере-отправителе считает свою задачу выполненной (вспомните, что и мы при отправке письма всего лишь бросаем его в почтовый ящик). Дальнейшая судьба IP-пакета зависит от правильной настройки маршрутизаторов, объединяющих сети 192.168.5.0 и 192.168.10.0.

Кстати, в данном примере легко продемонстрировать, насколько важна правильная настройка маски подсети в параметрах IP-адресации. Пусть мы по ошибке указали для компьютера 192.168.5.200 маску подсети, равную 255.255.0.0. В этом случае при попытке послать пакет по адресу 192.168.10.20 наш компьютер посчитает, что компьютер назначения находится в его собственной сети (ведь идентификаторы сетей при такой маске совпадают!), и будет пытаться отправить пакет самостоятельно.

В итоге этот пакет не попадет в маршрутизатор и не будет доставлен по назначению.

Чтобы понять, как работают маршрутизаторы, давайте сначала проанализируем таблицу маршрутов, которую выстраивает при загрузке протокола IP обычный компьютер, например, с операционной системой Windows XP (рис. 8.1).

Рис. 8.1. Таблица маршрутов в ОС Windows XP

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

Чтобы доставить пакет в сеть с адресом из поля Сетевой адрес и маской из поля Маска сети, нужно с интерфейса с IP-адресом из поля Интерфейс послать пакет по IP-адресу из поля Адрес шлюза , а «стоимость» такой доставки будет равна числу из поля Метрика.

Отметим, что параметры Сетевой адрес и Маска сети вместе задают диапазон всех разрешенных в данной сети IP-адресов. Например, 127.0.0.0 и 255.0.0.0, как мы уже говорили, означают любой IP-адрес от 127.0.0.1 до 127.255.255.254. Вспомним также, что IP-адрес 127.0.0.1 называется «адресом заглушки» – посланные по этому адресу пакеты должны обрабатываться самим компьютером. Кроме того, маска 255.255.255.255 означает сеть из одного IP-адреса, а комбинация 0.0.0.0– любой неопределенный адрес или маску подсети.

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

Вторая строка таблицы заставляет компьютер посылать самому себе (и отвечать на них) все пакеты, отправленные по любому IP-адресу из диапазона 127.0.0.1 – 127.255.255.254.

В третьей строке определено, как посылать пакеты компьютерам локальной сети (по адресам из диапазона 192.168.5.1 – 192.168.5.254). Здесь четко видно, что делать это должен сам компьютер – адресом шлюза является его собственный IP-адрес 192.168.5.200.

Аналогично (пятая, шестая и седьмая строки таблицы) нужно поступать и в случае, когда пакеты направляются по адресу рассылки подсети (192.168.5.255), по адресам многоадресной рассылки (224.0.0.0) или по адресу локальной широковещательной рассылки (255.255.255.255).

Четвертая же строка означает, что пакеты, посланные по IP-адресу 192.168.5.200 (обратите внимание на маску!), должны обрабатываться самим компьютером.

Несколько сложнее будет выглядеть таблица маршрутизации компьютера с двумя сетевыми адаптерами, который мы будем использовать в качестве маршрутизатора для объединения двух сегментов небольшой сети (рис. 8.2).

Рис. 8.2. Объединение сети с помощью маршрутизатора (а) и таблица маршрутизации компьютера R 1 (б)

В этой таблице появилось несколько дополнительных строк, обозначающих маршруты в обе сети – 192.168.5.0 и 192.168.10.0. Заметим, что все такие маршруты будут выстроены компьютером автоматически.

Чтобы после этого наладить обмен IP-пакетами между сетями, нужно выполнить следующие действия:

□ включить маршрутизацию на компьютере R 1 – это можно сделать, например, настроив службу маршрутизации и удаленного доступа, входящую в состав операционной системы Windows Server 2003;

□ на всех компьютерах в сети N 1 параметр Основной шлюз нужно установить равным IP-адресу интерфейса маршрутизатора, подключенного к этой сети, т.е. равным 192.168.5.1, а на компьютерах в сети N 2 – равным 192.168.10.1.

Таким образом, маршрутизатор – это программно-аппаратное устройство с несколькими сетевыми интерфейсами, на котором работает служба маршрутизации.

Усложним нашу сеть, добавив в нее второй маршрутизатор и сеть N 3 с адресом 192.168.15.0 (рис. 8.3).

В такой сети настройка маршрутизации усложняется. Проблема в том, что, хотя маршрутизатор R 1 «знает», как посылать пакеты в сети N 1 и N 2 , маршрута в сеть N 3 у него нет. В свою очередь, у маршрутизатора R 2 отсутствует маршрут в сеть N 1 . Значит, обмен IP-пакетами между сетями N 1 и N 3 будет невозможен.

Решить эту проблему в такой небольшой сети довольно просто – надо добавить нужные записи в таблицы маршрутизаторов R 1 и R 2 . Для этого на маршрутизаторе R 1 достаточно выполнить команду, предписывающую направлять все пакеты, предназначенные для сети 192.168.15.0, по адресу 192.168.10.254 (т.е. второму маршрутизатору, который уже сможет доставить эти пакеты по назначению; ключ P здесь используется, чтобы сделать этот маршрут постоянным):

ROUTE -P ADD 192.168.15.0

MASK 255.255.255.0 192.168.10.254

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

Аналогичная команда на маршрутизаторе R 2 должна выглядеть так:

ROUTE -P ADD 192.168.5.0

MASK 255.255.255.0 192.168.10.1 После этого взаимодействие в нашей сети будет налажено.

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

Чтобы избежать этого, достаточно настроить маршрутизаторы так, чтобы они обменивались друг с другом информацией о маршрутах. Для этого в локальных сетях используют такие протоколы, как RIP (Routing Information Protocol) и OSPF (Open Shortest Path First). Протокол RIP проще в настройке, чем OSPF, однако для обмена информацией в нем применяются широковещательные сообщения, заметно нагружающие сеть. Поэтому RIP обычно используют в относительно небольших сетях. Протокол OSPF работает эффективнее, но сложнее настраивается, поэтому его использование рекомендуется для крупных корпоративных сетей.

В данный момент (вспомним ) у нас в Москве использованы адреса 172.16.0.0-172.16.6.255. Предположим, что сеть может ещё увеличиться здесь, допустим, появится офис на Воробьёвых горах и зарезервируем ещё подсети до 172.16.15.0/24 включительно.
Все эти адреса: 172.16.0.0-172.16.15.255 - можно описать так: 172.16.0.0/20. Эта сеть (с префиксом /20) будет так называемой суперсетью , а операция объединения подсетей в суперсети называется суммированием подсетей (суммированием маршрутов, если быть точным, route summarization)

Приносим извинения за гигантские простыни, видео тоже с каждым разом становится всё длиннее и невыносимее. Постараемся в следующий раз быть более компактными.

Все заинтересованные, но незарегистрированные приглашаются на беседу в ЖЖ .
За подготовку статьи большое спасибо моему соавтору и моей жене за львиное терпение.

Для очень недовольных: эта статья не абсолют, она не раскрывает теоретические аспекты в полной мере и, потому не претендует на роль полноценной документации. С точки зрения авторов это вспомогательной средство для новичков, волшебный стимул, если желаете. На хабре у вас есть возможность поставить минус, а не доказывать нашу неправоту. Прошу вас, поступите именно так, потому что ваши недовольства встретят лишь вышеприведённые аргументы.

  • intervlan routing
  • router on a stick
  • Добавить метки

    IP-маршрутизация

    IP-Маршрутизация – процесс выбора пути для передачи пакета в сети. Под путем (маршрутом) понимается последовательность маршрутизаторов, через которые проходит пакет по пути к узлу-назначению. IP-маршрутизатор – это специальное устройство, предназначенное для объединения сетей и обеспечивающее определение пути прохождения пакетов в составной сети. Маршрутизатор должен иметь несколько IP-адресов с номерами сетей, соответствующими номерам объединяемых сетей.

    Объединение сетей с помощью IP-маршрутизатора

    Маршрутизация осуществляется на узле-отправителе в момент отправки IP-пакета, а затем на IP-маршрутизаторах.

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

    Выбор пути на маршрутизаторе осуществляется на основе информации, представленной в таблице маршрутизации . Таблица маршрутизации – это специальная таблица, сопоставляющая IP-адресам сетей адреса следующих маршрутизаторов, на которые следует отправлять пакеты с целью их доставки в эти сети. Обязательной записью в таблице маршрутизации является так называемый маршрут по умолчанию , содержащий информацию о том, как направлять пакеты в сети, адреса которых не присутствуют в таблице, поэтому нет необходимости описывать в таблице маршруты для всех сетей. Таблицы маршрутизации могут строиться «вручную» администратором или динамически, на основе обмена информацией, который осуществляют маршрутизаторы с помощью специальных протоколов.

    Для начала уточним некоторые понятия:

    • сетевой узел (node) - любое сетевое устройство с протоколом TCP/IP;
    • хост (host) - сетевой узел, не обладающий возможностями маршрутизации пакетов;
    • маршрутизатор (router) - сетевой узел, обладающий возможностями маршрутизации пакетов

    IP-маршрутизация - это процесс пересылки unicast -трафика от узла-отправителя к узлу –получателю в IP-сети с произвольной топологией.

    Когда один узел IP-сети отправляет пакет другому узлу, в заголовке IP-пакета указываются IP-адрес узла отправителя и IP-адрес узла-получателя. Отправка пакета происходит следующим образом:

    1. Узел-отправитель определяет, находится ли узел-получатель в той же самой IP-сети, что и отправитель (в локальной сети), или в другой IP-сети (в удаленной сети). Для этого узел-отправитель производит поразрядное логическое умножение своего IP-адреса на маску подсети, затем поразрядное логическое умножение IP-адреса узла получателя также на свою маску подсети. Если результаты совпадают, значит, оба узла находятся в одной подсети. Если результаты различны, то узлы находятся в разных подсетях.
    2. Если оба сетевых узла расположены в одной IP-сети, то узел-отправитель сначала проверяет ARP-кэш на наличие в ARP-таблице MAC-адреса узла-получателя. Если нужная запись в таблице имеется, то дальше отправка пакетов производится напрямую узлу-получателю на канальном уровне. Если же в ARP-таблице нужной записи нет, то узел-отправитель посылает ARP-запрос для IP-адреса узла-получателя, ответ помещает в ARP-таблицу и после этого передача пакета также производится на канальном уровне (между сетевыми адаптерами компьютеров).
    3. Если узел-отправитель и узел-получатель расположены в разных IP-сетях, то узел-отправитель посылает данный пакет сетевому узлу, который в конфигурации отправителя указан как "Основной шлюз" ( default gateway ). Основной шлюз всегда находится в той же IP-сети, что и узел-отправитель, поэтому взаимодействие происходит на канальном уровне (после выполнения ARP-запроса). Основной шлюз - это маршрутизатор, который отвечает за отправку пакетов в другие подсети (либо напрямую, либо через другие маршрутизаторы).

    Рассмотрим пример, изображенный на рис. 4.5 .


    Рис. 4.5.

    В данном примере 2 подсети: 192.168.0.0/24 и 192.168.1.0/24 . Подсети объединены в одну сеть маршрутизатором. Интерфейс маршрутизатора в первой подсети имеет IP-адрес 192.168.0.1 , во второй подсети - 192.168.1.1 . В первой подсети имеются 2 узла: узел A (192.168.0.5 ) и узел B (192.168.0.7 ). Во второй подсети имеется узел C с IP-адресом 192.168.1.10 .

    Если узел A будет отправлять пакет узлу B, то сначала он вычислит, что узел B находится в той же подсети, что и узел A (т.е. в локальной подсети), затем узел A выполнит ARP-запрос для IP-адреса 192.168.0.7 . После этого содержимое IP-пакета будет передано на канальный уровень, и информация будет передана сетевым адаптером узла A сетевому адаптеру узла B. Это пример прямой доставки данных (или прямой маршрутизации, direct delivery).

    Если узел A будет отправлять пакет узлу C, то сначала он вычислит, что узел C находится в другой подсети (т.е. в удаленной подсети). После этого узел A отправит пакет узлу, который в его конфигурации указан в качестве основного шлюза (в данном случае это интерфейс маршрутизатора с IP-адресом 192.168.0.1 ). Затем маршрутизатор с интерфейса 192.168.1.1 выполнит прямую доставку узлу C. Это пример непрямой доставки (или косвенной маршрутизации, indirect delivery) пакета от узла A узлу C. В данном случае процесс косвенной маршрутизации состоит из двух операций прямой маршрутизации.

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

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

    • записи, созданные автоматически системой на основе конфигурации протокола TCP/IP на каждом из сетевых адаптеров;
    • статические записи, созданные командой route add или в консоли службы Routing and Remote Access Service ;
    • динамические записи, созданные различными протоколами маршрутизации (RIP или OSPF).

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

    Рабочая станция.

    В данном примере имеется рабочая станция с системой Windows XP, с одним сетевым адаптером и такими настройками протокола TCP/IP: IP-адрес - 192.168.1.10 , маска подсети - 255.255.255.0 , основной шлюз - 192.168.1.1 .

    Введем в командной строке системы Windows команду route print , результатом работы команды будет следующий экран (рис. 4.6 ; в скобках приведен текст для английской версии системы):


    Рис. 4.6.

    Список интерфейсов - список сетевых адаптеров, установленных в компьютере. Интерфейс MS TCP Loopback interface присутствует всегда и предназначен для обращения узла к самому себе. Интерфейс Realtek RTL8139 Family PCI Fast Ethernet NIC - сетевая карта.

    Сетевой адрес - диапазон IP-адресов, которые достижимы с помощью данного маршрута.

    Маска сети - маска подсети, в которую отправляется пакет с помощью данного маршрута.

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

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

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

    Проанализируем некоторые строки таблицы.

    Первая строка таблицы соответствует значению основного шлюза в конфигурации TCP/IP данной станции. Сеть с адресом "0.0.0.0" обозначает "все остальные сети, не соответствующие другим строкам данной таблицы маршрутизации".

    Вторая строка - маршрут для отправки пакетов от узла самому себе.

    Третья строка (сеть 192.168.1.0 с маской 255.255.255.0 ) - маршрут для отправки пакетов в локальной IP-сети (т.е. той сети, в которой расположена данная рабочая станция).

    Последняя строка - широковещательный адрес для всех узлов локальной IP-сети.

    Последняя строка на рис. 4.6 - список постоянных маршрутов рабочей станции. Это статические маршруты, которые созданы командой route add . В данном примере нет ни одного такого статического маршрута.

    Теперь рассмотрим сервер с системой Windows 2003 Server, с тремя сетевыми адаптерами:

    • Адаптер 1 - расположен во внутренней сети компании (IP-адрес - 192.168.1.10 , маска подсети - 255.255.255.0 );
    • Адаптер 2 - расположен во внешней сети Интернет-провайдера ISP-1 (IP-адрес - 213.10.11.2 , маска подсети - 255.255.255.248 , ближайший интерфейс в сети провайдера - 213.10.11.1 );
    • Адаптер 3 - расположен во внешней сети Интернет-провайдера ISP-2 (IP-адрес - 217.1.1.34 , маска подсети - 255.255.255.248 , ближайший интерфейс в сети провайдера - 217.1.1.33 ).

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

    Кроме того, на сервере установлена Служба маршрутизации и удаленного доступа для