Script no-ip nao atualiza

eu  tenho um script para atualizar no-ip automatico mas não funciona eu tenho quer ir roda ele todas as veis manual ... como eu faço para ajeita isso vc tem ums script para manda se vc te ver eu agradeço   olhai meu script

se vcs pode ser ver oq ta de errado no meu script eu fico muito grato 

:global resolvedIP [:resolve "xxxxxxx"];
:global radiusID [/radius find comment="xxxx"];
:global currentIP [/radius get $radiusID address];
/radius set $radiusID address=$resolvedIP;
:log info "radius ip updated

 

Para adicionar comentários, você deve ser membro de MK-AUTH.

Join MK-AUTH

Votos 0
Enviar-me um email quando as pessoas responderem –

Respostas

  • Obg :D

    Michel Rodrigues disse:

    Se o modem for Bridge, use a interface pppoe-out1. Se for roteado use ether1, no caso a ethernet onde esteja entrando o link roteado.

    Em System->Scheduler, adicione um novo evento com o nome DDNS
    O start time, você seleciona: startup e o intervalo aqui uso em 00:30:00
    Após criado o evento, vamos a criação do script.

    Em system->Script, adicione um novo script com o nome de DDNS e insira os dados abaixo.

    :global ddnsuser "seuusuario"
    :global ddnspass "suasenha"
    :global ddnshost "seudominio.changeip.org"
    :global ddnsinterface "pppoe-out1"
    :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: Enviando novo IP!"
    :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: Não houve mudança de ip."

    }

    }

    # END OF SCRIPT

  • Se o modem for Bridge, use a interface pppoe-out1. Se for roteado use ether1, no caso a ethernet onde esteja entrando o link roteado.

    Em System->Scheduler, adicione um novo evento com o nome DDNS
    O start time, você seleciona: startup e o intervalo aqui uso em 00:30:00
    Após criado o evento, vamos a criação do script.

    Em system->Script, adicione um novo script com o nome de DDNS e insira os dados abaixo.

    :global ddnsuser "seuusuario"
    :global ddnspass "suasenha"
    :global ddnshost "seudominio.changeip.org"
    :global ddnsinterface "pppoe-out1"
    :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: Enviando novo IP!"
    :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: Não houve mudança de ip."

    }

    }

    # END OF SCRIPT

  • Boa noite, amigo.

    Funciona com modem roteado ou bridge?
    Michel Rodrigues disse:

    Uso esse em meu servidor mikrotik, é do change ip...dá uma analisada e vê se você aproveita alguma coisa.

    :local ddnsuser "URUARIO"
    :local ddnspass "SENHA"
    :local theinterface "LINK1"
    :local ddnshost "USUARIO.changeip.org"
    :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";
        }
    }

  • Uso esse em meu servidor mikrotik, é do change ip...dá uma analisada e vê se você aproveita alguma coisa.

    :local ddnsuser "URUARIO"
    :local ddnspass "SENHA"
    :local theinterface "LINK1"
    :local ddnshost "USUARIO.changeip.org"
    :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";
        }
    }

  • Tópico editado: 09/07/2013
    Motivo: Organização do fórum

This reply was deleted.