Перейти к содержимому
Калькуляторы

Маршрутизация на основании ip источника (Linux)

Требуется разлить исходящий трафик в пару аплинков, жёстко основываясь только на ip источника.

Никто не подскажет наиболее красивое решение?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Добавить строчки в файл /etc/iproute2/rt_tables, чтобы задать читаемые имена таблицам маршрутизации

...
# Custom Tables
10    UPLINK_1_DEFAULT_GATEWAY
20    UPLINK_2_DEFAULT_GATEWAY
...

 

# Input interface
ip addr add 192.168.1.1/30 dev eth0
ip link set eth0 up

# Uplink 1 interface
ip addr add 10.10.10.1/30 dev eth1
ip link set eth1 up

# Uplink 2 interface
ip addr add 10.10.20.1/30 dev eth2
ip link set eth2 up

ip rule add from 172.27.18.0/24 iif eth0 lookup UPLINK_1_DEFAULT_GATEWAY
ip route add default via 10.10.10.2 table UPLINK_1_DEFAULT_GATEWAY

ip rule add from 172.27.19.0/24 iif eth0 lookup UPLINK_2_DEFAULT_GATEWAY
ip route add default via 10.10.20.2 table UPLINK_2_DEFAULT_GATEWAY

 

Пакеты с адресами источников 172.27.18.0/24 и 172.27.19.0/24 будут уходить в соответсвующий основной шлюз у аплинков

 

"iif eth0" можно опустить, это проверка на входящий интерфейс

Изменено пользователем Painter

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Гость
Ответить в тему...

×   Вставлено в виде отформатированного текста.   Вставить в виде обычного текста

  Разрешено не более 75 смайлов.

×   Ваша ссылка была автоматически встроена.   Отобразить как ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.