Маршрутизация для двух провайдеров
- Автор: Silver
- Просмотров: 299
Для настройки маршрутизации для локальной сети с двумя провайдерами выполнить следующее:
1. Добавить свои таблицы маршрутизации для каждого провайдера в файл /etc/iproute2/rt_tables:
# cat /etc/iproute2/rt_tables # # reserved values # 255 local 254 main 253 default 0 unspec # # local # 1 prov1 2 prov2
2. Заполнить эти таблицы соответствующими маршрутами (или добавить в /etc/sysconfig/network-scripts/route-eth1 (eth2) соответсвенно):
# ip route add $NET1 dev eth1 src $IP1 table prov1 # ip route add $NET0 dev eth0 table prov1 # ip route add $NET2 dev eth2 table prov1 # ip route add 127.0.0.0/8 dev lo table prov1 # ip route add default via $G1 table prov1 # ip route add $NET2 dev eth2 src $IP2 table prov2 # ip route add $NET0 dev eth0 table prov2 # ip route add $NET1 dev eth1 table prov2 # ip route add 127.0.0.0/8 dev lo table prov2 # ip route add default via $G2 table prov2
где $IP1 - ip-адрес интерфейса сервера, подключенного к провайдеру prov1,
$IP2 - ip-адрес интерфейса сервера, подключенного к провайдеру prov2
$NET1 - адрес сети провайдера prov1,
$NET2 - адрес сети провайдера prov2,
$G1 - шлюз провайдера prov1.
$G2 - шлюз провайдера prov2.
3. Добавить маршруты в основную таблицу маршрутизации:
# ip route add $NET1 dev eth1 src $IP1 # ip route add $NET2 dev eth2 src $IP2 # ip route add default via $G1
4. Добавить правила для таблиц маршрутизации (или в файлы /etc/sysconfig/network-scripts/rule-eth1 (eth2)):
# ip rule add from $IP1 table prov1 # ip rule add from $IP2 table prov2
5. Уже можно работать. Маршрут по-умолчанию настроен на $G2, переключение на $G1 выполняется руками. Для настройки динамической маршрутизации выполнить:
# ip route add default scope global nexthop via $G2 dev eth2 weight 2 nexthop via $G1 dev eth1 weight 1
При этом трафика через $G2 будет ходить примерно в 2 раза больше, чем через $G1.