Apa itu DNS?? silahkan googleing aja. Langsung aja, setelah kemaren membahas mengenai update NAT di router ketika ada perubahan IP Public dynamic, Sekarang bahas Dynamic dns. Disebut dynamic dns karena ip public dns ini selalu berubah2. Banyak penyedia jasa dns dengan menggunakan dns dengan IP Public dynamic. Salah satunya adalah changeip.com .

Sebelum menjalankan script dibawah ini di router, silahkan bikin dns dulu di changeip.com. Setelah itu catat user dan password serta nama dsnnya, kemudian masukan ke script dibawah ini.

# Dynamic DNS Update / Simple Edition
# Written by Sam Norris, ChangeIP.com
# Copyright ChangeIP.com 2009-2010
# For support send mail to Support@ChangeIP.com
#
# 2009-06-22 RouterOS 3.25 Tested
# 2009-10-05 RouterOS 4.01rc1 Tested
#
# OVERVIEW:         %
#  This script will update a ChangeIP.com dynamic dns hostname
#  with an ip address located directly on an interface.
#                   %
# NOTES:            %
#  IF THIS SCRIPT DOES NOT PRODUCE ANY OUTPUT PLEASE COPY AND PASTE IT
#  AGAIN.  THERE PROBABLY IS A LINE BREAK IN THE WRONG PLACE! Once you
#  have created this script and tested that it works by running it
#  manually you can schedule it to run every few minutes.
#                   %
# CONFIGURATION FIELD DEFINITIONS:
#  ddnsuser:  Enter your ChangeIP.com user id.
#  ddnspass:  Enter your ChangeIP.com password.
#  ddnshost:  Enter the hostname (www.example.com) to update.
#  ddnsinterface:  Enter an interface name – case sensative.
#                   %
#                   %
#                   %
#                   %
#               %   %   %
#                %  %  %
#                 % % %
#                   %
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# EDIT YOUR DETAILS / CONFIGURATION HERE
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
:global ddnsuser “user id”
:global ddnspass “password”
:global ddnshost “xxx.ddns.info”
:global ddnsinterface “name-eth-ip-public”
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# END OF USER DEFINED CONFIGURATION
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

:global ddnssystem (“mt-” . [/system package get [/system package find name=system] version] )
:global ddnsip [ /ip address get [/ip address find interface=$ddnsinterface] address ]
:global ddnslastip

:if ([:len [/interface find name=$ddnsinterface]] = 0 ) do={ :log info “DDNS: No interface named $ddnsinterface, please check configuration.” }

:if ([ :typeof $ddnslastip ] = “nothing” ) do={ :global ddnslastip 0.0.0.0/0 }

:if ([ :typeof $ddnsip ] = “nothing” ) do={

:log info (“DDNS: No ip address present on ” . $ddnsinterface . “, please check.”)

} else={

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

:log info “DDNS: Sending UPDATE!”
:log info [ :put [/tool dns-update name=$ddnshost address=[:pick $ddnsip 0 [:find $ddnsip “/”] ] key-name=$ddnsuser key=$ddnspass ] ]
:global ddnslastip $ddnsip

} else={

:log info “DDNS: No changes necessary.”

}

}

# END OF SCRIPT

 

Oke.. Script beres, silahkan di run..

Lupa script ini darimana.. soalnya kemaren pas nyoba jalan, trus lupa nyatet sumbernya.