Правила iptable nat работают на ubuntu16.04, но не на redhat7.6

Правила iptable nat работают на ubuntu16.04, но не на redhat7.6

Мне нужно использовать правила iptable nat на виртуальной машине rhel7 для маршрутизации пакетов на определенный IP-адрес.

Для разработки я протестировал правила на виртуальной машине Ubuntu 16.04 с IP-адресом192.168.150.4:

sysctl net.ipv4.ip_forward=1

правила:

iptables -t nat -A PREROUTING -p tcp --dport 9000 -j DNAT --to-destination 192.168.150.35:6443
iptables -t nat -A POSTROUTING -j MASQUERADE

Я успешно протестировал это с удаленной виртуальной машины:

telnet 192.168.150.4 9000
curl https://192.168.150.4:9000 -kv

Аналогично, использовал те же правила для производства на виртуальной машине rhel7 (с другим набором IP-адресов, очевидно), но правила, похоже, не работают.

Работаем на OpenStack с соблюдением всех правил групп безопасности.

Помогите, пожалуйста. Заранее спасибо.

решение1

Если рекомендации JB не являются причиной, возможно, вам сначала придется перенаправить порт:

iptables -t nat -A PREROUTING -p tcp --dport 9000 -j REDIRECT --to-port 6443
iptables -t nat -A PREROUTING -p tcp --dport 6443 -j DNAT --to-destination 192.168.150.35

Надеюсь это поможет!

Связанный контент