DynDNS Mikrotik Script

Pada tutorial penggunaan Dynamic DNS sebelumnya, saya menggunakan binary ddclient yang dapat di unduh langsung. Namun, karena satu dan lain hal saya harus mengorbankan Linux BOX saya, sehingga setelah itu saya menggunakan fitur DynDNS client dari modem TP-Link. Nah, sejak kemarin (14/6) saya mengganti posisi modem menjadi bridged mode untuk sambungan mikrotik ke ISP.

Tanpa panjang lebar, dikarenakan bridged mode itu lah, untuk fitur vNAT dan DDNS nya pasti amburadul. Berikut di bawah ini script asli dari wiki mikrotik yang saya tulis ulang dan saya sesuaikan dengan mikrotik saya (RB750 OS 3.30) :

:local ddnsuser "<username di sini>"
:local ddnspass "<passwordnya di sini>"
:local theinterface "pppoe-speedy"
:local ddnshost "inmy.mine.nu"
:local ipddns [:resolve $ddnshost];
:local ipfresh [ /ip address get [/ip address find interface=$theinterface ] address ]
:if ([ :typeof $ipfresh ] = nil ) do={
 :log info ("DynDNS: No ip address on $theinterface .")
} else={
 :for i from=( [:len $ipfresh] - 1) to=0 do={
 :if ( [:pick $ipfresh $i] = "/") do={
 :set ipfresh [:pick $ipfresh 0 $i];
 }
}

:if ($ipddns != $ipfresh) do={
 :log info ("DynDNS: IP-DynDNS = $ipddns")
 :log info ("DynDNS: IP-Fresh = $ipfresh")
 :log info "DynDNS: Update IP needed, Sending UPDATE...!"
 :local str "/nic/update?hostname=$ddnshost&myip=$ipfresh&wildcard=NOCHG&mx=NOCHG&backmx=NOCHG"
 /tool fetch address=members.dyndns.org src-path=$str mode=http user=$ddnsuser password=$ddnspass dst-path=("/DynDNS.".$ddnshost)
 :delay 1
 :local str [/file find name="DynDNS.$ddnshost"];
 /file remove $str
 :global ipddns $ipfresh
 :log info "DynDNS: IP alterado para $ipfresh!"
 } else={
 :log info "DynDNS: Nao Necessita Ser Alterado";
 }
}

Untuk memasukkan script di atas, cukup login ke Winbox, kemudian ke /system/scripts :

Mikrotik DDNS Script

Mikrotik DDNS Script

Kemudian, supaya script ini berjalan secara continue untuk ke depannya, maka perlu ditambahkan schedule :D Berikut script tinggal copas ke terminal :D

/system scheduler add name=dynDns interval=00:01 on-event="/system  script run dynDNS\r\n"

Voila! \:D/

, ,

2 Responses to DynDNS Mikrotik Script

  1. LucuBRB June 16, 2010 at 8:08 #

    PANTATTT~!!! eh salah… MANTAP~!!!!

  2. c1p1 October 11, 2010 at 12:22 #

    mantap gan…ijin simak dan nyobain ya…:)

Leave a Reply