неділю, 27 липня 2014 р.

Скрипт для роботм MikroTik с сервисом No-IP

# Параметры подключения к NO-IP.com
:local ddnsuser "логин на NO-IP.com"
:local ddnspass "пароль на NO-IP.com"
:local ddnshostname "ИМЯ.no-ip.org" 
:local ddnsinterface "ИМЯ ИНТЕРФЕЙСА на Mikrotik"

# Описание глобальных переменных
:global ddnslastip
:local str
:local ddnsip
:local ip



:if ([ :typeof $ddnslastip ] = nil ) do={ :global ddnslastip "0" }

:local ddnsip [ /ip address get [/ip address find interface=$ddnsinterface ] address ]

:if ([ :typeof $ddnsip ] = nil ) do={
:log info ("ServiceDNS: No ip address on $ddnsinterface .")
} else={

# Из полученного на интерфейсе IP адреса исключаем маску
:for i from=( [:len $ddnsip] - 1) to=0 do={ 
:if ( [:pick $ddnsip $i] = "/") do={ 
:set ddnsip [:pick $ddnsip 0 $i];

}

:if ($ddnsip != $ddnslastip) do={

:log info ("ServiceDNS: $ddnshostname -> $ddnsip")

# Отправляем новый IP адрес на сервис No-IP с помощью HTTP запроса
:local str "/nic/update?hostname=$ddnshostname&myip=$ddnsip"
/tool fetch url="http://dynupdate.no-ip.com/$str" mode=http user=$ddnsuser password=$ddnspass \ dst-path=("/ServiceDNS.".$ddnshostname)
:delay 1 

# Сохраняем результаты в лог файлах
:local str [/file find name="ServiceDNS.$ddnshostname"];
:log info [/file get $str contents];
/file remove $str
:global ddnslastip $ddnsip



}

1 коментар:

  1. в настройке микротик мне очень помогли вот эти ребята http://juniper.io.ua/s749452/

    ВідповістиВидалити