MiktoTik - Два провайдера - балансировка нагрузки
В последнее время ситуация, когда доступны несколько
провайдеров не нова, MikroTik Router OS позволяет настроить доступ сразу
по нескольким сетевым интерфейсам, а так же настроить балансировку нагрузки
в зависимости от ограничений, которые выставляет провайдер.
Первым шагом настроим дополнительный интерфейс.
Инициализируем сам интерфейс.
[mkt@MikroTik] /interface> print
Flags: D - dynamic, X - disabled, R - running, S - slave
# NAME TYPE MTU
0 R ether1 ether 1500
1 R ether2 ether 1500
2 X ether3 ether 1500
[mkt@MikroTik] /interface> enable 2
[mkt@MikroTik] /interface> print
Flags: D - dynamic, X - disabled, R - running, S - slave
# NAME TYPE MTU
0 R ether1 ether 1500
1 R ether2 ether 1500
2 R ether3 ether 1500
|
Для удобства все же пора дать более понятные имена
интерфейсам.
[mkt@MikroTik] /interface> set ether1 name="ISP1"
[mkt@MikroTik] /interface> set ether2 name="LOCAL"
[mkt@MikroTik] /interface> set ether3 name="ISP2"
[mkt@MikroTik] /interface> print
Flags: D - dynamic, X - disabled, R - running, S - slave
# NAME TYPE MTU
0 R ISP1 ether 1500
1 R LOCAL ether 1500
2 R ISP2 ether 1500
|
Теперь назначим IP адрес новому интерфейсу.
[mkt@MikroTik] > ip address add address=192.168.222.100/24
interface=ISP2
[mkt@MikroTik] > ip address print
Flags: X - disabled, I - invalid, D - dynamic
# ADDRESS NETWORK BROADCAST INTERFACE
0 192.168.1.116/24 192.168.1.0 192.168.1.255 ISP1
1 192.168.0.1/24 192.168.0.0 192.168.0.255 LOCAL
2 192.168.222.100/24 192.168.222.0 192.168.222.255 ISP2
|
Настало время изменить маршрутизацию по умолчанию.
Для начала допустим, что оба провайдера предоставляют одинаковую скорость
доступа к сети Internet, значит настроим балансировку (это когда для
исходящих соединений каналы чередуются), так что бы запросы распеределялись
равномерно, т.е. 50/50. Прежде всего удалим старый шлюз по умолчанию.
[mkt@MikroTik] > ip route print
Flags: X - disabled, A - active, D - dynamic,
C - connect, S - static, r - rip, b - bgp, o - ospf, m - mme,
B - blackhole, U - unreachable, P - prohibit
# DST-ADDRESS PREF-SRC GATEWAY DISTANCE
0 A S 0.0.0.0/0 192.168.1.249 r... 1
1 ADC 192.168.0.0/24 192.168.0.1 LOCAL 0
2 ADC 192.168.1.0/24 192.168.1.116 ISP1 0
3 ADC 192.168.222.0/24 192.168.222.100 ISP2 0
[mkt@MikroTik] > ip route remove 0
[mkt@MikroTik] > ip route print
Flags: X - disabled, A - active, D - dynamic,
C - connect, S - static, r - rip, b - bgp, o - ospf, m - mme,
B - blackhole, U - unreachable, P - prohibit
# DST-ADDRESS PREF-SRC GATEWAY DISTANCE
0 ADC 192.168.0.0/24 192.168.0.1 LOCAL 0
1 ADC 192.168.1.0/24 192.168.1.116 ISP1 0
2 ADC 192.168.222.0/24 192.168.222.100 ISP2 0
|
И добавим новый, точнее новые.
[mkt@MikroTik] > ip route add dst-address=0.0.0.0/0
gateway=192.168.1.249,192.168.222.1
[mkt@MikroTik] > ip route print
Flags: X - disabled, A - active, D - dynamic,
C - connect, S - static, r - rip, b - bgp, o - ospf, m - mme,
B - blackhole, U - unreachable, P - prohibit
# DST-ADDRESS PREF-SRC GATEWAY DISTANCE
0 A S 0.0.0.0/0 192.168.1.249 r... 1
192.168.222.1 r...
1 ADC 192.168.0.0/24 192.168.0.1 LOCAL 0
2 ADC 192.168.1.0/24 192.168.1.116 ISP1 0
3 ADC 192.168.222.0/24 192.168.222.100 ISP2 0
|
Предположим, что у первого провайдера скорость доступа
в два раза выше чем у второго, тогда 2/3 исходящих запросов надо направить
на первого, а оставшиеся 1/3 на второго.
[mkt@MikroTik] > ip route add dst-address=0.0.0.0/0
gateway=192.168.1.249,192.168.1.249,192.168.222.1
[mkt@MikroTik] > ip route print
Flags: X - disabled, A - active, D - dynamic,
C - connect, S - static, r - rip, b - bgp, o - ospf, m - mme,
B - blackhole, U - unreachable, P - prohibit
# DST-ADDRESS PREF-SRC GATEWAY DISTANCE
0 A S 0.0.0.0/0 192.168.222.1 r... 1
192.168.1.249 r...
192.168.1.249 r...
1 ADC 192.168.0.0/24 192.168.0.1 LOCAL 0
2 ADC 192.168.1.0/24 192.168.1.116 ISP1 0
3 ADC 192.168.222.0/24 192.168.222.100 ISP2 0
|
Это простейший вариант настройки, при котором получаем выход в интернет
с балансировкой нагрузки, но у такого подхода есть ряд недостатков,
на пример не будет работать доступ через на NAT к локальному серверу
(сервисы web, smtp, pop, которые были настроены ранее), но не такая
большая проблема, но об этом в следующий раз.
Автор: Sergey Lagovskiy
|