MikroTik - DynDNS

Este artículo muestra como se agrega una cuenta DynDNS, para que este resolviendo una IP pública dinámica.

Víctor Villarreal avatar
Escrito por Víctor Villarreal
Actualizado hace más de una semana

Esta configuración se realiza cuando no se tiene una IP pública fija, y necesitas acceder al dispositivo remotamente, podemos ligar nuestro dispositivo a una cuenta DynDNS previamente configurada.

1. Comenzamos entramos a configurar el Script para que se conecte con el servidor de dominios.

2. Agregamos un nuevo Script, en donde se colocara la función que se desea realizar, en este caso que se resuelva la IP publica con el dominio generado previamente

3. Primero nombramos el nuevo Script que se esta generando para su identificación, en la parte de Source es donde vamos a copiar el código que necesitamos.

:global ddnsuser "Usuario DynDNS"
:global ddnspass "Contraseña de la cuenta"
:global theinterface "Puerto en el que esta conectado el proveedor de servicios (ether1)"
:global ddnshost Dominio al cual nos comunicaremos
:global ipddns [:resolve $ddnshost];
:global 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...!"
:global 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
:global str [/file find name="DynDNS.$ddnshost"];
/file remove $str
:global ipddns $ipfresh
:log info "DynDNS: IP updated to $ipfresh!"
} else={
:log info "DynDNS: dont need changes";
}
}

Nota: Cambiar los primeros cuatro global, respecto a la información necesaria.

4. Para hacer que nuestro Script corra automáticamente se configura en la parte de Scheduler, agregando un intervalo de tiempo para se active dependiendo el tiempo configurado.

5. Se tiene que agregar un nombre para la identificación, fecha y hora de inicio y es importante en la parte posterior en On Evente, colocar el mismo nombre al que se le asigno al Script, de esta forma es el que estará actualizando.

6. Probamos que funcione la nuestra configuración.

Como se puede observar, entramos a nuestro dispositivo por medio de nuestro DynDNS

¿Ha quedado contestada tu pregunta?