Jump to content
Калькуляторы

Микротик, несколько PPTP серверов у провайдера

Добрый день

 

У моего провайдера несколько PPTP серверов, котовые резолвятся на одно DNS имя

Можно ли заставить микротик перебирать методом Round-robin адреса серверов?

Введеный в настройках соединения FQDN, автоматически преобразуется в IP аддресс (

Share this post


Link to post
Share on other sites

Добрый день

 

У моего провайдера несколько PPTP серверов, котовые резолвятся на одно DNS имя

Можно ли заставить микротик перебирать методом Round-robin адреса серверов?

Введеный в настройках соединения FQDN, автоматически преобразуется в IP аддресс (

 

Пробовал на 750 на v6rc11 таже фигня

Share this post


Link to post
Share on other sites

:global pptpinterface "pptp-PROV"

:global pptpconnecthost "vpn.prov.ru"

:global pptphostip [:resolve $pptpconnecthost]

:global pptpconnectto [/interface pptp-client get $pptpinterface connect-to]

:if ($pptphostip != $pptpconnectto) do={

:log info "Updating VPN server ip"

/interface pptp-client set $pptpinterface connect-to=$pptphostip}

Share this post


Link to post
Share on other sites

:global pptpinterface "pptp-PROV"

:global pptpconnecthost "vpn.prov.ru"

:global pptphostip [:resolve $pptpconnecthost]

:global pptpconnectto [/interface pptp-client get $pptpinterface connect-to]

:if ($pptphostip != $pptpconnectto) do={

:log info "Updating VPN server ip"

/interface pptp-client set $pptpinterface connect-to=$pptphostip}

спасибо, скрипт работает

 

а нет ли у вас заготовки скрипта, который бы проверял доступность списка хостов?

чтобы в случае, если не один их хостов в списке не был доступен, запускался скрипт, который вы написали постом выше

Share this post


Link to post
Share on other sites

скриптами наверное было бы более гибко

но я остановился на такой штуке как /tool netwatch

тупо, пингую ip address в интернете и по его недоступности запускаю скрипт

правда, напрягает то, что по недоступности хоста он, почему-то, только один раз выполняет команду для состояния Down...

Share this post


Link to post
Share on other sites

:local interface "corbina-l2tp"

:local vpnserver "tp.internet.beeline.ru"

#:log debug message="Soft resolv script run"

:if ([/interface l2tp-client get $interface running] = false) do={

:log info message="VPN down. Refreshing"

/ip dns cache flush

:local "current-ip" [:resolve $vpnserver]

:local "old-ip" [/interface l2tp-client get [/interface l2tp-client find name=$interface] connect-to]

:if ($"current-ip" != $"old-ip") do= {

:log info "VPN Server changed IP address from $"old-ip" to $"current-ip""

/interface l2tp-client set [/interface l2tp-client find name=$interface] connect-to=$"current-ip"

}

}

И в scheduler чтоб каждую секунду выполнялся. Такая связка в работе с ноября 2012 без проблем.

Share this post


Link to post
Share on other sites

:local interface "corbina-l2tp"

:local vpnserver "tp.internet.beeline.ru"

#:log debug message="Soft resolv script run"

:if ([/interface l2tp-client get $interface running] = false) do={

:log info message="VPN down. Refreshing"

/ip dns cache flush

:local "current-ip" [:resolve $vpnserver]

:local "old-ip" [/interface l2tp-client get [/interface l2tp-client find name=$interface] connect-to]

:if ($"current-ip" != $"old-ip") do= {

:log info "VPN Server changed IP address from $"old-ip" to $"current-ip""

/interface l2tp-client set [/interface l2tp-client find name=$interface] connect-to=$"current-ip"

}

}

И в scheduler чтоб каждую секунду выполнялся. Такая связка в работе с ноября 2012 без проблем.

спасибо, попробую переписать его на проверку нескольких условий

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this