Multiple wireguard tunnels to same server how to force different interfaces

У меня несколько wan-соединений на моем маршрутизаторе, и я хочу туннель wireguard на каждом wan-интерфейсе к одному и тому же серверу.

Я запустил разные рабочие туннели к серверу, используя разные порты назначения, но, конечно, они используют шлюз и интерфейс по умолчанию.

Как заставить каждое соединение использовать разные интерфейсы?

1
задан 12 March 2021 в 12:27
1 ответ

Вы можете добавить правила маршрутизации на основе порта назначения - если порт (удаленной) конечной точки первого Туннель WireGuard был 51821 , а второй был 51822 , вы можете добавить следующие правила маршрутизации, чтобы использовать таблицу маршрутизации 1 для первого и таблицу маршрутизации 2 для второго:

ip rule add dport 58121 table 1 priority 101
ip rule add dport 58122 table 2 priority 102

Тогда, если ваши интерфейсы WAN - eth1 и eth2 (а шлюз WAN, например, 203.0.113.1 ), вы можете установить маршрут по умолчанию для таблицы 1 для использования первого интерфейса и таблицы 2 для использования второго интерфейса:

ip route add default via 203.0.113.1 dev eth1 table 1
ip route add default via 203.0.113.1 dev eth2 table 2

В качестве альтернативы вы можете добавить правила маршрутизации на основе метки брандмауэра, что вы можете (или может не оказаться) более удобным в обслуживании, чем использование порта назначения. Если вы настроили один (локальный) интерфейс WireGuard с, скажем, FwMark = 11 , а второй с FwMark = 22 , вы можете вместо этого использовать эти правила маршрутизации:

ip rule add fwmark 11 table 1 priority 101
ip rule add fwmark 22 table 2 priority 102
0
ответ дан 24 April 2021 в 01:03

Теги

Похожие вопросы