LINUX.ORG.RU

Если я правильно понял, нужно обратиться на 192.168.0.1:3306 и подключиться к mysql, который на самом деле находится на 192.168.0.3:3306? Для этого на 192.168.0.1 нужно сделать:

iptables -t nat -A PREROUTING -p tcp -d 192.168.0.1 --dport 3306 -j DNAT --to-destination 192.168.0.3:3306
iptables -t nat -A POSTROUTING -p tcp -d 192.168.0.3 --dport 3306 -j SNAT --to-source 192.168.0.1

Deleted ()
Ответ на: комментарий от xorik

Это хорошо, учи сразу firewalld, а нам переучиваться :)

sysctl net.ipv4.ip_forward=1
iptables -t nat -A PREROUTING -p tcp --dport port -j DNAT --to-destination ip:port
iptables -t nat -A POSTROUTING -j MASQUERADE

Правда в последней строчке не уверен, во всех ли случаях она применима. 192.168.0.1 является шлюзом по умолчанию для 192.168.0.3? Если является, то строчка не нужна, по-идее вообще без неё должно работать.

Ttt ☆☆☆☆☆ ()
Ответ на: комментарий от xorik

Только там по идее не будет работать аутентификация по IP-адресу. Все запросы будут приходить как с адреса 0.1. Если 0.1 и так шлюз по умолчанию для 0.3, просто попробуй без последней строки.

Ttt ☆☆☆☆☆ ()
Ответ на: комментарий от Ttt

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

Deleted ()
Ответ на: комментарий от Ttt

firewalld

Оно же на iptables реализовано, не?

anonymous ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.