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

openVPN и несколько внешних IP-адресов

В настоящее время у меня есть сервер openVPN с несколькими внешними IP-адресами.

Я хотел бы, чтобы все VPN-соединения (интерфейс tun0 и / или диапазон IP-адресов 10.19.88.xx) принимали второй внешний IP-адрес как «общедоступный IP-адрес» вместо первого.

В качестве примера, используя фиктивные адреса:

Deault eth0 address: 11.12.13.1 (server.domain.tld)
eth0:0 address: 11.12.13.2 (vpn.domain.tld)

Все VPN-соединения в настоящее время используют 11.12.13.1 вместо 11.12.13.2.

Есть ли способ решить эту проблему (используя iptables?)

Спасибо

iptables -t nat -A POSTROUTING -i tun0 -j SNAT --to 11.12.13.2

Проблема с ответом rkthkr (помимо странного символа в интерфейсе) заключается в том, что он будет сопоставлять только пакеты, поступающие из подсети 10.19.88.0/24, которые УЖЕ выходят через eth0: 0 и SNAT'ы.

Используя -i tun0, вы идентифицируете пакеты только по тому интерфейсу, через который они поступают (я предполагаю, что это единственный трафик, поступающий от tun0), а затем отправляете его через SNAT на правильный исходящий IP.

Пытаться:

iptables -t nat -A POSTROUTING -s 10.19.88.0/24 -o eth0 -j SNAT --to 11.12.13.2

Или даже лучше;)

iptables -t nat -A POSTROUTING -s 10.19.88.0/24 -j SNAT --to 11.12.13.2

Не лучше ли использовать параметры openvpn вместо ввода iptables?

местный 11.12.13.2

связывать

Вы не можете использовать "-i interface_name" с POSTROUTING.

-i interface_name -> PREROUTING (откуда приходит пакет)

-o interface_name -> POSTROUTING (куда идет пакет)

те же проблемы, iptables -t nat -A POSTROUTING -i tun0 -j SNAT --to 11.12.13.2 не работает на debian 5