IP-маршрутизация
Ниже разбираются таблицы маршрутов для компьютеров с несколькими интерфейсами.
Интерфейс
Интерфейс соответствует тем компонентам коммуникационного оборудования, которые поддерживают TCP/IP протокол. Такими компонентами являются модемы, сетевые карты, порты маршрутизаторов и т.п. ИНтерфейс всегда имеет связанный с ним IP-адрес. Этот адрес должен быть уникальным внутри любой сети.
Таблицы маршрутизации
Когда вы хотите сделать TCP/IP соединение или только послать несколько пакетов на другой компьютер, то должны сконфигурировать интерфейс, с помощь которого пакеты будут посланы. Очевидно, не очень хорошо посылать пакеты на ваш сетевой адаптер, если вы собираетесь соединиться с сайтом в Интернет. С другой стороны, не очень правильно посылать пакеты на ваш модем, если вы хотите обратиться к компьютеру в вашей сети.
По этой причине на каждом компьютере существуют таблицы маршрутов. Протокол TCP/IP просматривает таблицу маршрутов, когда вы хотите послать пакет куда-нибудь, которая говорит протоколу на какой интерфейс следует послать пакет для достижения цели.
Итак, записи таблицы мартрутов точно определяют:
- Место назначения (сетевой адрес/маска сети).
- Какой маршрутизатор (шлюз) использовать для посылки пакетов к месту назначения.
- Какой интерфейс использовать для посылки пакетов к месту назначения.
В Windows NT и Windows 95 команда добавления записи в таблицу маршрутизации имеет вид:
route ADD сетевой_адрес MASK сетевая_маска шлюз
Это пример таблицы маршрутов моего компьютера, когда он находится в режиме on-line с моим модемом.
Активные маршруты:
Network Address Netmask Gateway Address Interface Metric
Сетевой адрес Сетевая маска Адрес шлюза Интерфейс Метрика
0.0.0.0 0.0.0.0 203.96.10.254 03.96.10.51 1
127.0.0.0 255.0.0.0 127.0.0.1 127.0.0.1 1
192.168.0.0 255.255.0.0 192.168.0.4 192.168.0.4 2
192.168.0.4 255.255.255.255 127.0.0.1 127.0.0.1 1
192.168.0.255 255.255.255.255 192.168.0.4 192.168.0.4 1
203.96.10.0 255.255.255.0 203.96.10.51 203.96.10.51 1
203.96.10.51 255.255.255.255 127.0.0.1 127.0.0.1 1
203.96.10.255 255.255.255.255 203.96.10.51 203.96.10.51 1
224.0.0.0 224.0.0.0 203.96.10.51 203.96.10.5 1
224.0.0.0 224.0.0.0 192.168.0.4 192.168.0.4 1
255.255.255.255 255.255.255.255 192.168.0.4 192.168.0.4 1
У меня на компьютере 2 интерфейса:
- Сетевая карта с IP-адресом 192.168.0.4.
- Модем с интерфейсом PPP и IP-адресом 203.96.10.51.
В таблице маршрутизации вы можете увидеть записи о этих двух интерфейсах и еще о некоторых других.
Четвертая запись таблицы описывает сетевую карту. Она говорит, что если мы имеем пакет и желаем послать его по адресу 192.168.0.4 с маской 255.255.255.255 (последняя означает совпадение с любой маской), то он должен вернуть назад через сетевую карту. По соглашению об IP-адресах, когда данные посылаются по адресу с первым байтом равным 127, например, 127.0.0.1, то образуется как бы "петля". Данные не передаются по сети, а возвращаются модулям верхнего уровня протокола TCP/IP как только что принятые. Поэтому в IP-сети запрещается присваивать машинам IP-адреса, начинающиеся со 127.
Третья запись говорит, что если у нас есть пакет для сети 192.168.0.0 с маской 255.255.0.0 (что означает все адреса с 192.168.0.1 по 192.168.254.254, т.к. 255 и 0 зарезервированы), то мы должны послать его через интерфейс 192.168.0.4. Это значит, что весь наш снтевой график идет через сетевую карту.
Для сравнения, 7-ая запись - то же самое, что и 4-ая, но для PPP интерфейса (модем), а 6-ая запись - то же самое, что и 3-я, но относится к адресам с 203.96.10.1 по 203.96.10.254, относящимся к сети нашего провайдера. Это дает нам доступ к его маршрутизатору.
Другой очень содержательной записью является первая. IP-адрес 0.0.0.0 с маской 0.0.0.0 означает любой IP-адрес везде. Это называется Шлюз по умолчанию (default gateway). Шлюз по умолчанию является последним маршрутом, если использование других маршрутов не привело к успеху. Этот шлюз является проблемой в мультисегментной сети подключенной через модем, потому что он меняется интерфейсом PPP. Это означает, что если мы не имеем статических маршрутов (подобных другим записям) до места назначения, то мы посылаем пакеты на шлюз по умолчанию 203.96.10.254 (маршрутизатор нашего провайдера), который достигается через интерфейс 203.96.10.51 (наш модем).
Все сказанное означает, что все пакеты (по воле Шлюза по умолчанию) уходят через наш модем, кроме тех, что перенаправляются по статическим маршрутам.
Другие записи.
127.0.0.0 (localhost) - интерфейс обратной петли или внутренний интерфейс IP-стека. Этот интерфейс достижим только с локальной машины.
192.168.0.255 - широковещательный адрес для рассылки широковещательных пакетов по нашей сети. 203.96.10.255 - широковещательный адрес для рассылки широковещательных пакетов по сегменту сети вашего провайдера.
224.0.0.0 - другой широковещательный адрес и на вашу сеть, и на сеть провайдера. Результатом действия двух записей с сетевым адресом 224.0.0.0 будет широковещательная рассылка пакетов по вашей сети и сети провайдера.
255.255.255.255 - глобальный широковещательный адрес.
Пример таблицы маршрутов моего компьютера, когда он находится в режиме off-line с модемом.
Активные маршруты:
Network Address Netmask Gateway Address Interface Metric
Сетевой адрес Сетевая маска Адрес шлюза Интерфейс Метрика
127.0.0.0 255.0.0.0 127.0.0.1 127.0.0.1 1
192.168.0.0 255.255.0.0 192.168.0.4 192.168.0.4 1
192.168.0.4 255.255.255.255 127.0.0.1 127.0.0.1 1
192.168.0.255 255.255.255.255 192.168.0.4 192.168.0.4 1
224.0.0.0 224.0.0.0 192.168.0.4 192.168.0.4 1
255.255.255.255 255.255.255.255 192.168.0.4 192.168.0.4 1
Итак, здесь все, кроме того, что связано с PPP интерфейсом.
Маршруты автоматически создаваемые операционной системой
Некоторые маршруты автоматически создаются операционной системой. Всякий раз при добавлении интерфейса вы получаете маршрут: для самого интерфейса, для подсети, в которую интерфейс включен, и для широковещательного адреса этого интерфейса. Если вы посмотрите в приведенную выше таблицу маршрутов, то результатом установки интерфейса 192.168.0.4 будет добавление в таблицу маршрутов записей 2, 3, 4, 5 и 6.
Операционная система создает также и интерфейс localhost (первая запись).
Важно
Если вы определили Шлюз по умолчанию для вашей сетевой карты (т.е. вы имеете какой-то маршрутизатор в вашей сети), то в таблице маршрутов появится запись о Шлюзе по умолчанию. Эта запись используется для получения доступа к другим подсетям вашей сети.
Какое это имеет значение
Это имеет значение, когда ваш РРР-интерфейс изменяет определенный вами Шлюз по умолчанию - в этом случае все ваши пакеты направляются на маршрутизатор провайдера (это делается для возможности доступа сайтов Интернет). Остальные сегменты сети остаются недоступными вам до тех пор пока вы вручную не создадите статические маршруты них.
Итак, если у вас есть другие подсети, то вы должны добавить статические маршруты в вашу таблицу маршрутов с помощью команды ROUTE ADD.
Вы должны познакомиться с ней.
Допустим вы имеете сегменты (в сегменте А находится Wingate):
Сегмент A : 192.168.0.0 mask 255.255.255.0
Сегмент B : 192.168.1.0 mask 255.255.255.0
Сегмент C : 192.168.2.0 mask 255.255.255.0
Сегмент D : 192.168.3.0 mask 255.255.255.0
Сегмент E : 192.168.4.0 mask 255.255.255.0
Сегмент F : 192.168.5.0 mask 255.255.255.0
Сегмент G : 192.168.6.0 mask 255.255.255.0
и маршрутизатор 192.168.0.254.
Тогда вы должны добавить их маршруты:
route ADD 192.168.1.0 MASK 255.255.255.0 192.168.0.254
route ADD 192.168.2.0 MASK 255.255.255.0 192.168.0.254
route ADD 192.168.3.0 MASK 255.255.255.0 192.168.0.254
route ADD 192.168.4.0 MASK 255.255.255.0 192.168.0.254
route ADD 192.168.5.0 MASK 255.255.255.0 192.168.0.254
route ADD 192.168.6.0 MASK 255.255.255.0 192.168.0.254
Вы можете объединить это в одну запись установкой маски, игнорирующей два последних октета адреса, т.е.
route ADD 192.168.0.0 MASK 255.255.0.0 192.168.0.254
Это покроет сегменты с B по F.
Если некоторые из сегментов с B по F доступны еще и какой-нибудь другой маршрутизатор, вы должны либо добавить соответствующий маршрут в маршрутизаторе 192.168.0.254, либо в другой маршрутизатор.
Для посылки пакетов поиск адресата происходит в следующей последовательности.
- Поиск с учетом адреса интерфейса.
- Поиск с учетом подсетей.
- Использование Шлюза по умолчанию.
Назад |
Содержание |
Вперед