Рейтинг:0

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

флаг mx

У меня есть экземпляры Linux ec2 с двумя сетевыми картами (eth0 и eth2). Оба сетевых адаптера имеют общедоступные IP-адреса и могут выходить в Интернет. Этот экземпляр Linux действует для меня как узел шлюза, перенаправляя трафик из ec2 в частные подсети, у которых нет доступа в Интернет.

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

Выполнение этих шагов помогает мне достичь этого

ip route add 10.0.0.0/23 <subnet of gateway cidr> dev eth2 table 2
ip-правило добавляется из таблицы <IP-адрес частного экземпляра ec2> 2
ip route добавить по умолчанию через 10.0.0.1 dev eth2 table 2
сброс кэша IP-маршрута

iptables -A FORWARD --in-interface eth0 -j ACCEPT # принимает трафик на eth0
iptables --table nat -A POSTROUTING --out-interface eth2 -j MASQUERADE #перенаправляет трафик наружу через eth2

С этой настройкой, когда я скручиваюсь за пределами экземпляра ec2 в частной подсети (через узел шлюза), я вижу то, что я ожидаю увидеть (то есть внешний мир видит, что запрос исходит от IP-адреса eth1), но запросы на скручивание действительно занимают много времени. долгое время (а иногда даже тайм-аут). Я бы сказал, что около 5 из 10 запросов выполняются успешно.

Что мне здесь не хватает?

Спасибо Кей

Рейтинг:0
флаг mx

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

IP-правило добавить предпочтение 512 таблица 2

Как только я получил правильный заказ, я смог правильно выйти через определенный интерфейс.

Paul avatar
флаг cn
Рад это слышать! Кстати, если вы можете принять свой ответ, это было бы здорово.

Ответить или комментировать

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