Gasoid
@Gasoid

Как настроить openvpn для работы на 2х ip адресах?

есть шлюз на debian
есть 2 провайдера
один ip на eth0:3
другой на eth1

по умолчанию настраиваем чтобы шлюз был на eth0:3
#!/bin/sh
IP1=88.140.167.214
IP2=217.230.75.242
P1=88.140.167.213
P2=217.230.75.241

P1_NET=88.140.167.212/30
P2_NET=217.230.75.240/30

IF1=eth0:3
IF2=eth1

ip route flush table prov214
ip route add default via $P1 dev eth0:3 table prov214

ip route flush table prov242
ip route add default via $P2 dev eth1 table prov242


# Говорим, что по дефолту будем ходить через первого провайдера.
ip route del 0/0
ip route add default via $P1


ip rule del table prov214
ip rule del table prov242
ip rule add from $IP1 table prov214
ip rule add from $IP2 table prov242

ip rule add fwmark 0x1/0x1 lookup prov214


#!/bin/bash
iptables -A PREROUTING -i eth1  -j MARK --set-mark 0x1 -t mangle 
iptables -A PREROUTING -j CONNMARK --save-mark -t mangle -m mark --mark 0x1
iptables -A PREROUTING -j CONNMARK -t mangle  --set-mark 0x1 -i eth1
iptables -A PREROUTING -j CONNMARK -t mangle --set-mark 0x1 -s 10.0.1.73 -d ! 10.0.0.0/16


в конфиге openvpn указываю
local 217.230.75.241

такая схема работает, но почему не работает если убрать опцию local? Пакеты идут через шлюз по умолчанию если приходят на 217.230.75.241

При том, что если убираем маркировку, то и с local не работает.
  • Вопрос задан
  • 860 просмотров
Решения вопроса 1
Gasoid
@Gasoid Автор вопроса
в итоге поставили сетевуху eth3

#!/bin/sh
IP1=88.140.167.214
IP2=217.230.75.242
P1=88.140.167.213
P2=217.230.75.241

P1_NET=88.140.167.212/30
P2_NET=217.230.75.240/30

IF1=eth3
IF2=eth1

ip route flush table prov214
ip route add default via $P1 dev eth3 table prov214

ip route flush table prov242
ip route add default via $P2 dev eth1 table prov242


# Говорим, что по дефолту будем ходить через первого провайдера.
ip route del 0/0
ip route add default via $P1


ip rule del table prov214
ip rule del table prov242
ip rule add from $IP1 table prov214
ip rule add from $IP2 table prov242

ip rule add fwmark 0x1/0x1 lookup prov242


в openvpn убираем параметр local и добавляем опцию multihome
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
@mureevms
Зачем вообще маркируете трафик? Разве пакеты не ходят нормально без него?
Не совсем понятно что Вы хотите сделать при помощи правил фаера. Пустить трафик с интерфейса eth1 в таблицу prov214, он же должен уходить в prov242. Т.е. Вы сначала говорите, если пакет пришел с $IP1, то иди в таблицу prov214 и тут же его маркируете, направляя в prov214. Где логика?

И еще, переделайте IP с интерфейса с eth0:3 на eth0. Была у меня проблема связанная с iproute и алиасом на интерфейсе.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы