Автоматическое переключение между резервными линиями на Mikrotik

Допустим имеется два интернет канала, от разных или одного провайдера, шлюз может быть одинаковым, это не имеет значения. Включены они в первый и второй порты.

Добавим скрипты с именами «ISP1DOWN» и «ISP2DOWN», которые будут пинговать какой нибудь хост, на примере используется адрес Google DNS 8.8.4.4, если он станет недоступен, то порт с активным каналом будет выключатся, а с вторичным включатся.
Пример добавления скрипта через терминал:

system script add name=ISP1DOWN policy=ftp,reboot,read,write,policy,test,winbox,password,sniff,sensitive,api source="тескт скрипта"

Скрипт ISP1DOWN:

:if ([/ping 8.8.4.4 count=5] = 0) do={/interface disable ether1 ;/interface enable ether2 ;/system scheduler disable ISP1 ;/system scheduler enable ISP2}

Скрипт ISP2DOWN:

:if ([/ping 8.8.4.4 count=5] = 0) do={/interface disable ether2 ;/interface enable ether1 ;/system scheduler disable ISP2 ;/system scheduler enable ISP1}

Добавляем в планировщик задания:

system scheduler add comment="" disabled=no interval=25s name=ISP1 on-event="ISP1DOWN" policy=reboot,read,write,policy,test,password,sniff,sensitive start-date=jan/01/1970 start-time=00:00:00
system scheduler add comment="" disabled=no interval=25s name=ISP2 on-event="ISP2DOWN" policy=reboot,read,write,policy,test,password,sniff,sensitive start-date=jan/01/1970 start-time=00:00:00

Естественно порт 1 и 2 исключены из стандартного бриджа, на них если требуется включен DHCP клиент.
А также настроен маскарадинг:

ip firewall nat add chain=srcnat action=masquerade out-interface=ether2

Все.

Добавить комментарий