IP-маршрут с двумя шлюзами по умолчанию

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

У меня есть два шлюза, по разным причинам, и я пытаюсь заставить эти два NIC вести себя. Моя проблема связана со вторичным шлюзом (Gateway2), поскольку все работает со шлюзом 1 и eth0, маршрутом по умолчанию и всем.

Итак, во-первых, моя установка выглядит примерно так:

NAT (вход) = Cisco ASA NAT (выход) = Zyxel независимо от

WAN-IP

NAT (вход) - - - - - - - - - - Ubuntu Box 12.04 - - - - - - - - - - - - NAT (выход)

Gateway1
10.0.0.1 < -> 10.0.0.50 (eth0) || (eth1) 192.168.0.50 -> 192.168.0.1

. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Gateway2


Итак, я пошел:

1. Создайте новую таблицу: «1 zyxelwan»

в «/ etc / iproute2 / rt_tables»

2. Создать политику маршрутизации для таблицы (zyxelwan)

 ip route add 192.168.0.0/24 dev eth1 src 192.168.0.50 table zyxelwan

 ip route add default via 192.168.0.1 dev eth1 table zyxelwan

3. Задайте правила IP, которые используют только что созданную таблицу маршрутизации:

 ip rule add from 192.168.0.50 table zyxelwan

 ip rule add to 192.168.0.50 table zyxelwan

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

 route -n

 Kernel IP routing table

 Destination    Gateway         Genmask        Flag Metric  Ref     Use Iface

 0.0.0.0        10.0.0.1        0.0.0.0         UG  100      0        0 eth0

 10.0.0.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 eth1

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

Но когда я пытаюсь отследить путь, то есть 8.8.8.8, я получаю такой результат:

 tracepath 8.8.8.8

 1:  10.0.0.50                                            0.161ms pmtu 1500

Поэтому я попытался удалить шлюз, с которого он пытался отправить трафик (10.0.0.1) - с таким результатом (это должно быть независимо от моих правил и таблицы ip).:

 tracepath 8.8.8.8

 1:  send failed

 Resume: pmtu 65535

И если я напишу маршрут, пропустив таблицу, и заменим предыдущий маршрут по умолчанию на:

 route add default via 192.168.0.1 dev eth1

Это будет работать нормально, но мне действительно нравится иметь возможность подключаться по SSH / VPN к Ubuntubox через мой шлюз Cisco и затем получать доступ к сети на моем шлюзе Zyxel - я что-то упускаю из виду, или вы умный человек в состоянии указать мне правильное направление?

Я думал в соответствии с моими правилами ip, это может быть так, как будто он только «слушает» трафик и направит его на тот же интерфейс - в соответствии с правила таблицы / ip - и решением могло быть просто «переключение кабелей»?

В любом случае, заранее спасибо за любые предложения :)

2
задан 7 June 2013 в 21:36

2 ответа

Я решил эту проблему, установив привязку к локальному IP-адресу eth0 для OpenVPN - после этого я создал еще одну таблицу маршрутизации для eth0. Затем я добавил шлюз по умолчанию для eth1, обычным способом - без таблицы:)

Спасибо, что нашли время взглянуть на мой оригинальный пост:)

0
ответ дан 7 June 2013 в 21:36

Старая команда route не может должным образом представить какие-либо необычные вещи, которые вы делаете с новой командой ip route. Чтобы показать конфигурацию маршрутизации, используйте ip route list table [xx|all] вместо route.

0
ответ дан 7 June 2013 в 21:36

Другие вопросы по тегам:

Похожие вопросы: