2 белых IP у разных провайдеров

Материал из RSU WiKi
Перейти к: навигация, поиск

Содержание

Policy-based routing в SuSE

Маршрутизация и policy-based routing в Linux при помощи iproute2[1]

Определите новые таблицы маршрутизации в файле /etc/iproute2/rt_tables

#
# reserved values
#
255     local
254     main
253     default
0       unspec
#
# local
#
#1      inr.ruhep

9       table1
10      table2

Создайте файл iproute2_custom в каталоге /etc/sysconfig/network/if-up.d/

cd /etc/sysconfig/network/if-up.d/
> iproute2_custom
chown +x iproute2_custom

Дано: адрес1 192.0.2.10/24, шлюз1 192.0.2.1, адрес2 198.51.100.10/24, шлюз2 198.51.100.1, шлюз по умолчанию такой же как шлюз1 192.0.2.1

IP1=192.0.2.10  # ip 1
IP2=198.51.100.10    # ip 2

GW1=192.0.2.1        # шлюз 1
GW2=198.51.100.1     # шлюз 2

GWDEFAULT=192.0.2.1  # шлюз по-умолчанию

ip route replace default via $GW1 table white
ip route replace default via $GW2 table srv

ip rule add from $IP1 table white
ip rule add from $IP2 table srv

ip route add default via $GWDEFAULT

Вариант для хоста (2 сети)

Настраиваем в SLES 9 SP3:

Добавляем 2 строчки в файл /etc/iproute2/rt_tables

9       viainet1
10      viainet2

Создаем в /etc/sysconfig/network каталог iproute2, в него кладем файл iproute2_custom (chmod +x):

#!/bin/bash

IP2=192.0.2.91           # ip от провайдера 1
IP3=198.51.100.242  # ip от провайдера 2

P1=192.0.2.1              # дефолтный шлюз
P2=192.0.2.1              # шлюз провайдера 1
P3=198.51.100.2       # шлюз провайдера 2

ip route replace default via $P2 table viainet1
ip route replace default via $P3 table viainet2

ip rule add from $IP2 table viainet1
ip rule add from $IP3 table viainet2

#ну и дефолтный маршрут:
ip route add default via $P1

Делаем символическую ссылку на этот файл в каталоге /etc/sysconfig/network/if-up.d:

ln -s /etc/sysconfig/network/iproute2/iproute2_custom /etc/sysconfig/network/if-up.d/iproute2_custom

Теперь машина отвечает на пинги по на оба внешних ip.

Вариант для шлюза (2 сети провайдера, 2 DMZ)

Роутинг

#!/bin/bash

IP2=192.0.2.3             # ip от провайдера 1
IP3=198.51.100.3      # ip от провайдера 2

ID2=192.0.2.33         # ip в DMZ от провайдера 1
ID3=198.51.100.33  # ip в DMZ от провайдера 2

P1=192.0.2.2             # дефолтный шлюз
P2=192.0.2.2             # шлюз провайдера 1
P3=198.51.100.2      # шлюз провайдера 2

N2="192.0.2.33/27"         # DMZ провайдера 1
N3="198.51.100.33/29"  # DMZ провайдера 2

ip route replace default via $P2 table viainet1
ip route replace default via $P3 table viainet2

ip rule add from $IP2 table viainet1
ip rule add from $IP3 table viainet2

ip route add $N2 dev eth1 src $ID2 table viainet1
ip route add $N3 dev eth2 src $ID3 table viainet2

ip rule add from $N2 table viainet1
ip rule add from $N3 table viainet2

#ну и дефолтный маршрут:
ip route add default via $P1

Firewall

At work clipart.pngЭто незавершённая статья, требующая доработки.
Написать пример конф. файла /etc/sysconfig/SuSEfirewall2 для двух сетей.


Примечания

  1. http://habrahabr.ru/post/108690/

См. также

Личные инструменты
Пространства имён

Варианты
Действия
Навигация
Инструменты