
Мне нужно использовать правила 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
Надеюсь это поможет!