Назад | Перейти на главную страницу

Как изменить dst ip после роутинга

Как изменить IP-адрес назначения после принятия решения о маршрутизации, то есть в цепочке POSTROUTING iptables?

д ... как следует из названия - уже слишком поздно делать это в таблице POSTROUTING.

этот и этот очень полезны, чтобы увидеть, что и когда произойдет. если действительно нужно перезаписать dst-адрес - может быть, поставить другую машину в строку [virtual? ] или даже лучше - подумайте еще раз, зачем вам это нужно.

Я не думаю, что на это есть хороший ответ. Я не думаю, что iptables позволяет вам изменить IP-адрес назначения после маршрутизации. Что я хочу сделать:

iptables -t nat -A POSTROUTING -o eth0 -p udp -d 10.0.0.0/8 --dport 53 -m comment --comment "Redirect DNS when VPN is down" -j DNAT --to-destination 8.8.8.8

Но это незаконно. Я хочу изменить адрес назначения на основе интерфейса вывода, который неизвестен до момента маршрутизации.

Если бы вы могли изменить IP-адрес назначения, было бы слишком поздно менять маршрутизацию (что было бы хорошо для моего примера использования). Вы можете маршрутизировать пакеты только один раз.

Единственное известное мне решение - это иметь виртуальную машину, которая находится между eth0 и реальной сетью, которая затем может выполнять DNAT.

Для моих целей я могу динамически добавлять или удалять правило предварительной маршрутизации, когда интерфейс VPN выходит из строя или срабатывает, но это кажется неуклюжим решением.

Если вы действительно хотите изменить место назначения в POSTROUTING, возможно, вы можете попробовать злоупотребить целью NETMAP? Я не уверен, работает ли это, но попробуйте что-нибудь вроде:

iptables -t nat -A POSTROUTING -d 1.2.2.2/32 -j NETMAP --to=1.3.3.3/32

Невозможно изменить IP-адрес назначения в POSTROUTING стол.

С помощью NETMAP в POSTROUTING цепь будет действовать как SNAT для всей картографической сети.


НАПРИМЕР.

iptables -t nat -A POSTROUTING -s 1.2.3.4/24 -d 5.6.7.8/24 -j NETMAP --to 11.22.33.44/24


Приведенное выше правило произведет замену исходных IP-адресов 1.2.3.4 к 11.22.33.44 в 24 сеть.