Почему подставляет неправильный source ip при использовании policy-routing? Пытаюсь пустить трафик конкретного пользователя мимо VPN таким способом:Помечаюiptables -t mangle -A OUTPUT -m owner --uid-owner 1001 -j MARK --set-xmark 0xaaaСоздаю правилоip rule add fwmark 0xaaa table torrentНаполняю таблицу маршрутизацииip route add default via 192.168.0.1 dev enp2s0 src 192.168.0.125 table torrent
ip route add 192.168.0.0/24 dev enp2s0 table torrent
И всё вроде должно работать, трафик не уходит в tun0, но пакеты почему-то идут с src ip от VPN.
Где я ошибся, что не учёл, подскажите, пожалуйста?

21 Авг 2019 в 06:46
165 +1
0
Ответы
1

Когда вы используете policy-routing в Linux, то пакеты уходят с IP-адресом интерфейса, который указан в таблице маршрутизации. В вашем случае, пакеты уходят с IP-адресом, который привязан к интерфейсу tun0, который является VPN интерфейсом.

Чтобы пакеты уходили с нужным вам IP-адресом (192.168.0.125), вам нужно использовать параметр "src" при добавлении правила маршрутизации:

ip route add default via 192.168.0.1 dev enp2s0 src 192.168.0.125 table torrent

Таким образом, пакеты будут уходить с IP-адресом 192.168.0.125, как вы указали в вашем вопросе.

20 Апр 2024 в 13:13
Не можешь разобраться в этой теме?
Обратись за помощью к экспертам
Гарантированные бесплатные доработки в течение 1 года
Быстрое выполнение от 2 часов
Проверка работы на плагиат
Поможем написать учебную работу
Прямой эфир