On-Line Библиотека www.XServer.ru - учебники, книги, статьи, документация, нормативная литература.
       Главная         В избранное         Контакты        Карта сайта   
    Навигация XServer.ru








 

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

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

          cat /proc/ksyms | grep ip_forward

Вы должны получить в ответ что-то вроде...

  00141364 ip_forward_Rf71ac834

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

Ради этого примера, давайте предположим, что вы должны разбить вашу IP сеть класса C с адресом 192.168.1.0 на 4 подсети (по 62 IP адреса интерфейса/хоста каждая). Причем две из этих подсетей образуют вместе большую единую сеть, что дает три сети. Тогда:-

  Сеть            Широковещательный  Сетевая маска       Хосты
  192.168.1.0     192.168.1.63       255.255.255.192     62
  192.168.1.64    192.168.1.127      255.255.255.192     62
  182.168.1.128   192.168.1.255      255.255.255.126     124 (см. прим.)
Примечание: причина, по которой последняя сеть имеет только 124 используемых сетевых адреса (а не 126 как следует из задания сетевой маски) в том, что она в действительности 'суперсеть' из двух подсетей. Хосты двух других сетей будут интерпретировать 192.168.1.192 как сетевой адрес 'несуществующей' подсети. Также они будут считать 192.168.1.191 широковещательным адресом из 'несуществующей' подсети.

Итак, если вы используете 192.168.1.191 или 192 как адреса хостов в третьей сети, тогда машины в двух меньших сетях не смогут взаимодействовать с ними.

Этот пример демонстрирует важный принцип в подсетях - используемые адреса определяются НАИМЕНЬШЕЙ подсетью в том же адресном пространстве.

7.1 Таблицы маршрутизации

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

Давайте предположим, что компьютер с Linux использует наименьший доступный IP адрес в каждой подсети на его интерфейсе в этой подсети. Надо настроить эти сетевые интерфейсы так:

  Интерфейс       IP адрес        Сетевая маска
  eth0            192.168.1.1     255.255.255.192
  eth1            192.168.1.65    255.255.255.192
  eth2            192.168.1.129   255.255.255.128

Должна быть установлена такая маршрутизация:

  Destination     Gateway         Genmask         Iface
  192.168.1.0     0.0.0.0         255.255.255.192 eth0
  192.168.1.64    0.0.0.0         255.255.255.192 eth1
  192.168.1.128   0.0.0.0         255.255.255.128 eth2

В каждой из подсетей хосты должны быть настроены с их собственным IP адресом и сетевой маской (соответственно своей сети). Каждый хост должен считать Linux PC шлюзом/маршрутизатором, указав тот IP адрес компьютера с Linux, который смотрит в его подсеть.

Robert Hart Melbourne, Australia March 1997.

Назад       Содержание