7.3. Настройка статической маршрутизации
Необходимо настроить статическую маршрутизацию между подсетями с IP-адресами 10.10.10.0/24 и 10.0.0.0/24.
Для добавления статического маршрута перейдите в раздел Сеть —> Виртуальный маршрутизаторы. Далее можно создать виртуальный маршрутизатор или использовать маршрутизатор, созданный по умолчанию (виртуальный маршрутизатор по умолчанию).
Чтобы создать виртуальный маршрутизатор нажмите Добавить. Во вкладке Общие свойств виртуального маршрутизатора задайте:
- Название виртуального маршрутизатора.
- Описание (опционально).
- Имя узла: если узел входит в состав кластера, выберите узел, на котором будет создан виртуальный маршрутизатор.

Перейдите во вкладку Интерфейсы и выберите интерфейсы, которые необходимо добавить в виртуальный маршрутизатор (интерфейсы, добавленные в другие виртуальные маршрутизаторы, не могут быть добавлены; интерфейс может принадлежать только одному виртуальному маршрутизатору):

Дальнейшая настройка UserGate не зависит от того, какой виртуальный маршрутизатор используется (виртуальный маршрутизатор по умолчанию или созданный вами).
Откройте свойства маршрутизатора и выберите Статические маршруты.

Далее нажмите Добавить и заполните необходимы поля:
- Отметьте чекбокс Включено.
- Название статического маршрута.
- Описание (опционально).
- Тип маршрута: выберите необходимы тип маршрута:
- Unicast — стандартный тип маршрута. Пересылает трафик, адресованный на адреса назначения, через заданный шлюз.
- Blackhole — трафик отбрасывается (теряется), не сообщая источнику о том, что данные не достигли адресата.
- Unreachable — трафик отбрасывается. Источнику отправляется ICMP сообщение host unreachable (type 3 code 1).
- Prohibit — трафик отбрасывается. Источнику отправляется ICMP сообщение host unreachable (type 3 code 13).

Аналогично, добавьте маршрут на другом узле UserGate, изменив Адрес назначения (на 10.10.10.0/24) и Шлюз (на 1.1.1.1).

Просмотр добавленных маршрутов доступен во вкладке Диагностика и мониторинг в разделе Мониторинг —> Маршруты.
На первом узле (для настройки использовался виртуальный маршрутизатор по умолчанию):

На втором узле (для настройки использовался виртуальный маршрутизатор по умолчанию):

Как видно из рисунков, представленных выше, UserGate самостоятельно определил интерфейс, через который был добавлен маршрут.
Проверка корректности настройки статической маршрутизации между подсетями производилась с помощью утилиты ping (вкладка Диагностика и мониторинг раздел Сеть —> Ping):

Для прохождения трафика между локальными сетями необходимо настроить правило межсетевого экрана. Для этого перейдите в раздел Политики сети —> Межсетевой экран, нажмите Добавить и укажите во вкладке Общие:
- Название правила межсетевого экрана.
- Действие: Разрешить.
Во вкладке Источник укажите зону источника Trusted; во вкладке Назначение — зону Untrusted.
Можно использовать правило, созданное по умолчанию, Allow trusted to Untrusted.



Если необходимо разрешить прохождение трафика между виртуальными маршрутизаторами, то необходимо в статических маршрутах виртуального маршрутизатора добавить маршрут, указав сеть назначения и интерфейс устройства UserGate, через который данная сеть доступна.
Для примера создадим виртуальный маршрутизатор test и добавим интерфейс port3, к которому подключена LAN с IP-адресом 10.10.0.0/24.

Чтобы разрешить трафик между двумя виртуальными маршрутизаторами, необходимо создать маршруты со следующими параметрами.
В виртуальном маршрутизаторе по умолчанию:
- Адрес назначения: укажите IP-адрес сети назначения (в примере 10.10.0.0/24).
- Шлюз: шлюз не указывается.
- Интерфейс: укажите интерфейс, через который будет добавлен маршрут (в примере port3).

В виртуальном маршрутизаторе test:
- Адрес назначения: укажите IP-адрес сети назначения (в примере 10.10.10.0/24).
- Шлюз: шлюз не указывается.
- Интерфейс укажите интерфейс, через который будет добавлен маршрут (в примере port1).

В разделе Политики сети —> Межсетевой экран необходимо настроить правило, разрешающее трафик из зоны интерфейса port1 в зону интерфейса port3 (в примере из зоны Trusted в зону Trusted).
Проверка прохождения трафика между устройствами локальных сетей 10.10.10.0/24 и 10.10.0.0/24:
Маршрутизация между двумя сетями
Здравствуйте! Дело обстоит так: есть одна сеть, адресация вида 192.168.0.X, в ней интернет-шлюз с адресом 192.168.0.1. В этой сети есть подсеть с адресацией типа 192.168.2.Х. Сети соединяются машиной с двумя сетевыми картами, с адресами 192.168.0.50 для первой сети, и 192.168.2.1 из второй. Задача — настроить маршрутизацию для подсети, так, чтобы эта подсеть могла ходить в интернет через шлюз первой сети, но не имела доступа к другим машинам той же сети. На текущий момент, все, что мне удалось — настроить прохождение ICMP пакетов при помощи iptables (PREROUTING), но для других протоколов аналогично сделать не получается:( Кто сможет помочь? Просто уже мозг кипит.
NikitoZ
17.04.08 19:34:23 MSDunixforum.org
Решено:Маршрутизация между двумя сетями (пакеты не маршрутизируются)
12 сообщений • Страница 1 из 1
Vehn Сообщения: 33Решено:Маршрутизация между двумя сетями
Сообщение Vehn » 23.11.2006 21:02
Есть две карточки на одном компе: eth0 (192.168.1.1/24) и wlan0 (192.168.0.1/24). Также есть отдельный роутер 192.168.1.2 через который машинки ходят в инет. Как настроить маршрутизацию между двумя этими картами (подсетями) посредством routed? И куда добавить эти правила, чтобы не терялись при следующей перезагрузке? Пробывал делать:
debian:/home/vehn# route add -net 192.168.1.0 netmask 255.255.255.0 dev eth0
debian:/home/vehn# route add -net 192.168.0.0 netmask 255.255.255.0 dev wlan0Судя по ману этого должно быть достаточно, но видимо я чего-то не понимаю. Помиогите! Спасибо.
Спасибо сказали:
Unicorn Сообщения: 689 Статус: Бригадир мучеников Аль-Аксы ОС: Gentoo 100% fresh, ArchlinuxRe: Решено:Маршрутизация между двумя сетями
Сообщение Unicorn » 23.11.2006 21:42
# echo "1" > /proc/sys/net/ipv4/ip_forwardGentoo, Archlinux / Athlon2600+ / SATA RAID 0 LVM / GNOME
Спасибо сказали:
Vehn Сообщения: 33Re: Решено:Маршрутизация между двумя сетями
Сообщение Vehn » 24.11.2006 18:34
Спасибо за статью, но что-то не помогла она мне.. толи я такой тупой, толи как..
Ладно начну с начала. Есть два интерфейса на одном компе: wlan0 (192.168.0.1/24 — беспроводная сеть) и eth0 (192.168.1.2/24 — обычная сетка). Необходимо получить доступ из одной подсети к другой. При загрузке имеем следующее:
debian:/home/vehn# netstat -nr
Kernel IP routing table
Destination Gateway Genmask Flags MSS Window irtt Iface
192.168.1.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0
192.168.0.0 0.0.0.0 255.255.255.0 U 0 0 0 wlan0
0.0.0.0 192.168.1.1 0.0.0.0 UG 0 0 0 eth0
В /etc/network/interfaces прописано следуюющее:auto eth0
iface eth0 inet static
address 192.168.1.2
netmask 255.255.255.0
network 192.168.1.0
broadcast 192.168.1.255
gateway 192.168.1.1
# dns-* options are implemented by the resolvconf package, if installed
dns-nameservers 83.174.193.227
dns-search studyauto wlan0
iface wlan0 inet static
address 192.168.0.1
netmask 255.255.255.0
network 192.168.0.0
broadcast 192.168.0.255
gateway 192.168.1.1 (здесь пробывал ставить 192.168.1.2)
wireless_essid testy
wireless_mode master
wireless_key s:123456789Разрешаю маршрутизацию между моими фэйсами:
# echo «1» > /proc/sys/net/ipv4/ip_forward
Вношу маршруты для них обоих:
# route add -net 192.168.1.0 netmask 255.255.255.0 dev eth0
# route add -net 192.168.0.0 netmask 255.255.255.0 dev wlan0Всё это действо должно было (cудя по ману и статьям) дать маршрутизацию между моими двумя картами — но нифига! Есть какие-нибудь идеи, предложения?
Статическая маршрутизация на Cisco

Итак, имеется следующая схема из двух роутеров с сетями за ними:
Объединение сетей с помощью маршрутизаторов

В итоге левый маршрутизатор видит сети напрямую подключенные к нему (directly connected) — 192.168.1.0/24, 172.20.0.0/16 и 192.168.100.0/30, с правым та же история. Но что делать если мы хотим из сети 192.168.1.0/24 видеть хосты в сети 10.0.0.0/8?
Текущий принцип функционирования нашей сети представлен на изображении:Карта доступности сетей

Всё дело в том, что один маршрутизатор попросту не содержит в своей таблице маршрутов (routing table) информации о сетях, подключенных только к другому роутеру. Таким образом левый маршрутизатор не знает, например, про сеть 10.0.0.0/8, подключенную к правому.
Воспроизведем в Cisco Packet Tracer нашу ситуацию:Начинаем собирать нашу сеть

Дадим IP адреса нашим компьютерам.
PC0 – 192.168.1.100
PC1 – 172.20.20.100
PC2 – 192.168.2.100
PC3 – 10.10.10.100
Соответствующие интерфейсы маршрутизаторов будут иметь такие же IP адреса, только с 1 в четвертом октете. Например ПК 192.168.1.100 будет смотреть в интерфейс с IP 192.168.1.1. Данный IP будет также являться шлюзом по-умолчанию (default gateway).
Сохраним предварительный конфиг — wr mem
Ах да, на наших роутерах изначально только два Ethernet-интерфейса, поэтому нужно добавить плату расширения NM-1FE-TX (NM – Network module, 1FE – содержит один порт FastEthernet, TX – поддерживает 10/100MBase-TX). Только сначала выключим свич, чтобы система дала нам добавить интерфейс.Кнопка выключения маршрутизатора в Packet Tracer

Втыкаем дополнительную интерфейсную плату.
Вставляем интерфейсную плату в маршрутизатор

Включаем маршрутизатор. Должен добавиться новый интерфейс — FastEthernet1/0, и теперь аналогичные действия по инсталляции дополнительного модуля произведем на втором роутере.
Интерфейсу FastEthernet1/0 левого роутера назначим IP 192.168.100.1 и маску 255.255.255.252 (/30), правый же будет 192.168.100.2 с такой же маской.
И линкуем эти маршрутизаторы между собой.Маршрутизаторы, соединенные между собой

Итогом наших мучений будет то, что представлено на втором рисунке в статье. Заметьте, что не все стрелки на нем двунаправленные, почему так? Дело вот в чем, допустим мы шлём ICMP-пакет от хоста в одной подсети до хоста в другой, и возникает ситуация, что ответ попросту не находит маршрута. Давайте сразу пример. Допустим, мы пингуем с ПК 172.20.20.100 интерфейс правого маршрутизатора — 192.168.100.2. Видим следующее:
Интерфейс «правого» маршрутизатора не отвечает
Давайте продебажим это дело, отследив путь пакетов.
debug ip packet — служит для активации дебаг-лога
Запускаем её на обоих маршрутизаторах и снова запустим пинги с 172.20.20.100 до 192.168.100.2.
Сначала левый.IP: tableid=0, s=172.20.20.100 (FastEthernet0/1), d=192.168.100.2 (FastEthernet1/0), routed via RIB IP: s=172.20.20.100 (FastEthernet0/1), d=192.168.100.2 (FastEthernet1/0), g=192.168.100.2, len 128, forwardВ первой строчке видим, что на него пришел пакет от 172.20.20.100, направляемый на адрес 192.168.100.2. А слово forward во второй строчке означает, что этот пакет был передан дальше.
Теперь взглянем на правый роутер.IP: tableid=0, s=172.20.20.100 (FastEthernet1/0), d=192.168.100.2 (FastEthernet1/0), routed via RIB IP: s=172.20.20.100 (FastEthernet1/0), d=192.168.100.2 (FastEthernet1/0), len 128, rcvd 3 IP: s=192.168.100.2 (local), d=172.20.20.100 len 128, unroutableПакет сюда всё же добрался, но дальше целевой хост должен отправить ответ с интерфейса 192.168.100.2 на 172.20.20.100, вот только наш маршрутизатор понятия не имеет о сети 172.20.20.0/16 и как в неё стучаться. Мы пока не задавали шлюз по-умолчанию (default gateway), поэтому видим в логе слово unroutable.
Вырубаем дебаг-режим командой no debug ip packet, а если хотите их посмотреть, то скажите show debugging.
Сеть у нас маленькая, поэтому самым простым и логичным способом настроить маршрутизацию будет добавление так называемого маршрута по-умолчанию (default route). Для этого левому маршрутизатору скажем следующее:ip route 0.0.0.0 0.0.0.0 192.168.100.2А правому вот:
ip route 0.0.0.0 0.0.0.0 192.168.100.1
Синтаксис здесь такой:
ip route [IP сети назначения] [её маска] [IP интерфейса, на которые надо перенаправить пакеты, чтобы попасть в данную сеть]
Маршрут с IP 0.0.0.0 и маской 0.0.0.0 становится маршрутом по-умолчанию, на который уйдут все пакеты адреса назначения которых прямо отсутствуют в таблице маршрутизации (routing table).
Давайте пример. Вот хотим мы пингануть с ПК 192.168.1.100 хост с IP адресом 10.10.10.100. Шлюз по-умолчанию (default gateway) у нашего ПК с IP 192.168.1.100 — 192.168.1.1. ПК попробует найти в своей таблице маршрутизации IP 10.10.10.100, зафейлит и решит поискать маршрут до сети 10.0.0.0/8 в целом. Это ему также не удастся и он отправит пакет на шлюз по-умолчанию, тот самый 192.168.1.1. Роутер также сначала поищет путь до 10.10.10.100, потом будет рыскать в своей таблице маршрутизации в поисках маршрута до подсети 10.0.0.0/8, но и тут ничего не отыщет. Зато обнаружит прописанный маршрут по-умолчанию, и с радостью отправит пакет на 192.168.100.2, переложив поиск маршрута на другой маршрутизатор. Прямой путь до 10.10.10.100 он, конечно, не найдет, зато увидит информацию по сети 10.0.0.0/8, оказывается адресованные туда пакеты следует слать на интерфейс FastEthernet0/1, именно к которому эта сеть и подключена (directly connected). У нас для простоты роль подсети играет единственный хость 10.10.10.100 и пакет попадет к нему. Дальше всё пойдет в обратном порядке, только с назначением на 192.168.1.100/24.
Маршрутом по-умолчанию удается отделаться далеко не всегда. Чаще приходится прописывать маршруты для каждой сети в отдельности. Разберемся как это делается, но сначала выпилим то, что уже имеется в таблице маршрутизации:
no ip route xxxx(адрес сети) yyyy(маска) zzzz(адрес интерфейса)
В итоге таблица должна содержать только информацию о непосредственно подключенных к маршрутизатору сетях. Левый роутер будет выглядеть так:Содержимое таблицы маршрутизации
Теперь просто добавим на каждый из маршрутизаторов рауты к сетям, которые им неизвестны.
Левому:ip route 192.168.2.0 255.255.255.0 192.168.100.2 ip route 10.0.0.0 255.0.0.0 192.168.100.2ip route 192.168.1.0 255.255.255.0 192.168.100.1 ip route 172.20.0.0 255.255.0.0 192.168.100.1
В итоге всё будет работать в соответствии с данной схемой:
Карта сети
Даже в такой сети пришлось добавить довольно много информации по маршрутам, а что делать, когда маршрутизаторов три/пять/десять? Тогда на помощь нам придет динамическая маршрутизация, но об этом в другой раз.