+ Responder ao Tópico



  1. #1

    Unhappy Script para enviar o ip para o DynDns no mikrotik

    Olá amigos, olhando alguns tópicos e tutoriais encontrei alguns que consegue pegar o ip que o mikrotik obtem da prestadora quando ele disca atraves da configuração de "ppp" e envia este ip para o DynDns para podermos acessar ele remotamente atraves do dominio, porém eu adicionei o script no mikrotik ele executa mas o ip no dyndns que faz o redirecionamento do dominio nao é alterado, será que alguem já teve este problema ?

    segue o script que estou usando que pegei aqui mesmo no forum:

    :log info "DDNS: Begin"
    :global ddns-user "meu usuario"
    :global ddns-pass "minha senha"
    :global ddns-host "meu domínio"
    :global ddns-interface "pppoe-out"
    :global ddns-ip [/ip address get [/ip address find interface=$ddns-interface] address ]
    :if ([ :typeof $ddns-lastip ] = nil ) do={ :global ddns-lastip 0.0.0.0/0 }
    :if ([ :typeof $ddns-ip ] = nil ) do={
    :log info ("DDNS: No ip address present on " . $ddns-interface . ", please check.")
    } else={
    :if ($ddns-ip != $ddns-lastip) do={
    :log info "DDNS: Sending UPDATE!"
    :log info [/tool dns-update name=$ddns-host address=[ick $ddns-ip 0 [:find $ddns-ip "/"] ] key-name=$ddns-user key=$ddns-pass ]
    :global ddns-lastip $ddns-ip
    } else={
    :log info "DDNS: No change"
    }
    }
    :log info "DDNS: End"



    Obrigado

    André.
    Última edição por milhardes; 26-03-2008 às 09:04.

  2. #2

    Padrão

    Amigo uso o mesmo script a abaixo e nao vi nada de diferente do seu , so que uso ele com o Enhanced Dynamic DNS Solutions e funciona blz , espero te ajudado

    :log info "DDNS: Begin"
    :global ddns-user "usuario"
    :global ddns-pass "senha"
    :global ddns-host "www.****.dnset.com"
    :global ddns-interface "pppoe-out"
    :global ddns-ip [ /ip address get [/ip address find interface=$ddns-interface] address ]
    :if ([ :typeof $ddns-lastip ] = nil ) do={ :global ddns-lastip 0.0.0.0/0 }
    :if ([ :typeof $ddns-ip ] = nil ) do={
    :log info ("DDNS: No ip address present on " . $ddns-interface . ", please check.")
    } else={
    :if ($ddns-ip != $ddns-lastip) do={
    :log info "DDNS: Sending UPDATE!"
    :log info [ /tool dns-update name=$ddns-host address=[ick $ddns-ip 0 [:find $ddns-ip "/"] ] key-name=$ddns-user key=$ddns-pass ]
    :global ddns-lastip $ddns-ip
    } else={
    :log info "DDNS: No change"
    }
    }
    :log info "DDNS: End"



  3. #3

    Padrão

    Obrigado pela ajuda,

    mas agora só da ddns error: Authentication Failure

    tem alguma ideia sobre isso, o usuario e senha estao certos eu entro com eles pelo site.

    Obrigado

  4. #4
    Patrocinador Avatar de edcomrocha
    Ingresso
    Aug 2007
    Localização
    São Paulo, Brazil, Brazil
    Posts
    840

    Padrão ve se assim da

    Citação Postado originalmente por milhardes Ver Post
    Obrigado pela ajuda,

    mas agora só da ddns error: Authentication Failure

    tem alguma ideia sobre isso, o usuario e senha estao certos eu entro com eles pelo site.

    Obrigado
    faiz uma conta no Enhanced Dynamic DNS Solutions e usa esse scripit
    :global ddns-user "NOME_USUARIO"
    :global ddns-pass "SENHA"
    :global ddns-host "NOME DO HOST CRIADO NO CHANGEIP"
    :global ddns-interface "pppoe-out1"
    :global ddns-ip [ /ip address get [/ip address find interface=$ddns-interface] address ]
    :if ([ :typeof $ddns-lastip ] = nil ) do={ :global ddns-lastip 0.0.0.0/0 }
    :if ([ :typeof $ddns-ip ] = nil ) do={
    :log info ("DDNS: No ip address present on " . $ddns-interface . ", please check.")
    } else={
    :if ($ddns-ip != $ddns-lastip) do={
    :log info [ /tool dns-update name=$ddns-host address=[:pick $ddns-ip 0 [:find $ddns-ip "/"] ] key-name=$ddns-user key=$ddns-pass ]
    :global ddns-lastip $ddns-ip
    } else={

    }
    }


    depois adiciona essa regra no pra executar no scheduler
    aki estou usando faz tempo e roda blz
    espero ter ajudado
    Última edição por edcomrocha; 26-03-2008 às 20:34.



  5. #5

    Unhappy

    Obrigado,

    mas continua dando a mesma mensagem Authentication Failure.


    não acredito que num ta funcionando já coloquei tudo certo e eu consigo logar com o usuario e senha no change-ip ou no dyndns, o que será que pode estar acontecendo.?

  6. #6

    Padrão

    Citação Postado originalmente por milhardes Ver Post
    Obrigado,

    mas continua dando a mesma mensagem Authentication Failure.


    não acredito que num ta funcionando já coloquei tudo certo e eu consigo logar com o usuario e senha no change-ip ou no dyndns, o que será que pode estar acontecendo.?

    Amigo
    primeiro que versao do MK vc usa
    na v3 o scipt tem algumas diferencas da v2



  7. #7

    Padrão

    Uso essa script na v3 do MK
    e funciona redondo



    :global ddnsuser "USER"
    :global ddnspass "PWD"
    :global ddnshost "my.dyn.ip"
    :global ddnsip
    :global ddnslastip [:tostr [:resolve $ddnshost] ]
    :if ([ :typeof $ddnslastip ] = nil ) do={ :global ddnslastip "0" }
    :global ddnsinterface "SUA PPOE"
    :global ddnssystem ("mt-" . [/system package get system version] )

    :local int

    :local ddnsipfn [ /ip address get [/ip address find interface=$ddnsinterface ] address ]
    :global ddnsip [ick $ddnsipfn 0 [:find $ddnsipfn "/"]]

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

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

    :log info "DDNS: Sending UPDATE!"
    :log info [ ut [/tool dns-update name=$ddnshost address=$ddnsip key-name=$ddnsuser key=$ddnspass ] ]
    :global ddnslastip $ddnsip

    } else={
    :log info "DDNS: No update required."
    }

    }



    cola ele num novo terminal e ve se da algum erro
    aqui ta 100%


    Abraços

  8. #8

    Unhappy

    uso a versão 2.9.27

    esse que vc me passou fiz um teste mas nao roda não....

    tem alguma outra ideia


    obrigado



  9. #9
    Moderador Avatar de minelli
    Ingresso
    Aug 2006
    Localização
    Pres. Venceslau - SP | Pres. Prudente - SP
    Posts
    1.409
    Posts de Blog
    10

    Padrão Erro

    Milhardes esse erro Authentication Failure, só existe 3 motivos para aparecer ele:
    1 - Usuario e Senha podem estar errado.
    2 - Dominio DDNS errado
    3 - Interface Name errado

    Por poste o script que está usando e verei o que hà de errado, mas pra te ajudar ai vai o meu:

    Código :
    :log info "DDNS Begin"
    :global ddns-user "[COLOR=red]usuario[/COLOR]"
    :global ddns-pass "[COLOR=red]senha[/COLOR]"
    :global ddns-interface "[COLOR=red]Interface do Link exatamente como está o nome em interface tipo: Router[/COLOR]"
    :global ddns-host "[COLOR=red]dominio DDNS completo tipo: xxxxxx.changeip.org[/COLOR]"
    :global ddns-ip [/ip address get [/ip address find interface=$ddns-interface] address]
    :if {[ :typeof $ddns-lastip] = nil } do={ :global ddns-lastip 0.0.0.0/0 }
    :if {[ :typeof $ddns-ip] = nil} do={ 
    :log info "DDNS: No addres present on your interface, plesae check."
    } else={
    # :if ($ddns-ip != $ddns-lastip) do={
    :log info "DDNS: Sending update!"
    :log info [/tool dns-update name=$ddns-host address=[:pick $ddns-ip 0 [:find $ddns-ip "/"] ] key-name=$ddns-user key=$ddns-pass ]
    # :global ddns-lastip $ddns-ip
    # } else={
    # :log info ("DDNS: No change.")
    # }
    }
    :log info ("DDNS: End.")

    Altere os Itens em vermelho do meu script para seus dados e faça um teste.

  10. #10

    Unhappy Meu Script

    Amigo, segue abaixo meu script porém o nome da interface que é "pppoe-out" eu obtive no menu inteface no campo name tambem fiz um teste com o campo type que é "PPPoE out" mas nao deu certo este ultimo ele so inicia o script e nao retorna msg de erro algum mas tb não altera o ip, estou usando o dyndns e no site consigo entrar com esse dominio abaixo sem problema.

    Script:

    :log info "DDNS: Begin"
    :global ddns-user "****"
    :global ddns-pass "*****"
    :global ddns-host "netplus.homeunix.net"
    :global ddns-interface "pppoe-out"
    :global ddns-ip [/ip address get [/ip address find interface=$ddns-interface] address ]
    :if ([ :typeof $ddns-lastip ] = nil ) do={ :global ddns-lastip 0.0.0.0/0 }
    :if ([ :typeof $ddns-ip ] = nil ) do={
    :log info ("DDNS: No ip address present on " . $ddns-interface . ", please check.")
    } else={
    :if ($ddns-ip != $ddns-lastip) do={
    :log info "DDNS: Sending UPDATE!"
    :log info [/tool dns-update name=$ddns-host address=[ick $ddns-ip 0 [:find $ddns-ip "/"] ] key-name=$ddns-user key=$ddns-pass ]
    :global ddns-lastip $ddns-ip
    } else={
    :log info "DDNS: No change"
    }
    }
    :log info "DDNS: End"


    Obrigado
    André.



  11. #11

    Padrão

    Citação Postado originalmente por milhardes Ver Post
    Amigo, segue abaixo meu script porém o nome da interface que é "pppoe-out" eu obtive no menu inteface no campo name tambem fiz um teste com o campo type que é "PPPoE out" mas nao deu certo este ultimo ele so inicia o script e nao retorna msg de erro algum mas tb não altera o ip, estou usando o dyndns e no site consigo entrar com esse dominio abaixo sem problema.

    Script:

    :log info "DDNS: Begin"
    :global ddns-user "****"
    :global ddns-pass "*****"
    :global ddns-host "netplus.homeunix.net"
    :global ddns-interface "pppoe-out"
    :global ddns-ip [/ip address get [/ip address find interface=$ddns-interface] address ]
    :if ([ :typeof $ddns-lastip ] = nil ) do={ :global ddns-lastip 0.0.0.0/0 }
    :if ([ :typeof $ddns-ip ] = nil ) do={
    :log info ("DDNS: No ip address present on " . $ddns-interface . ", please check.")
    } else={
    :if ($ddns-ip != $ddns-lastip) do={
    :log info "DDNS: Sending UPDATE!"
    :log info [/tool dns-update name=$ddns-host address=[ick $ddns-ip 0 [:find $ddns-ip "/"] ] key-name=$ddns-user key=$ddns-pass ]
    :global ddns-lastip $ddns-ip
    } else={
    :log info "DDNS: No change"
    }
    }
    :log info "DDNS: End"


    Obrigado
    André.

    Esse script que o amigo milhardes
    é o que deve ser usado na v2 do MK
    roda redondo


    o meu script é para a v3 do MK
    tb roda redondo

    de uma revisada nos seu script
    algum promenor que esta lhe escapandoo

  12. #12
    Patrocinador Avatar de edcomrocha
    Ingresso
    Aug 2007
    Localização
    São Paulo, Brazil, Brazil
    Posts
    840

    Padrão

    Citação Postado originalmente por milhardes Ver Post
    Script:

    :global ddns-host "netplus.homeunix.net"
    Amigo usa o changeip que da certo, esse homeunix é do dyndns
    falow

    CRIA A CONTA AKI------> Enhanced Dynamic DNS Solutions



  13. #13
    Moderador Avatar de minelli
    Ingresso
    Aug 2006
    Localização
    Pres. Venceslau - SP | Pres. Prudente - SP
    Posts
    1.409
    Posts de Blog
    10

    Padrão altera

    altera o pppout para a interface que esta direta no modem.

  14. #14

    Padrão

    Amigo,

    a interface que esta direta ao modem agora só inicializa o script ou seja no log do mkt ele só inicializa o "BEGIN" e nao traz nenhum retorno de confirmação ou se deu erro.
    Somente quendo eu coloco pppoe-out é que ele retorna a msg de erro "Authentication Failure" porém eu entro pelo site normalmente tanto no dyndns como no change ip.

    O que será q pode estar acontecendo.

    Obrigado
    Andre



  15. #15

    Padrão

    Citação Postado originalmente por milhardes Ver Post
    Amigo,

    a interface que esta direta ao modem agora só inicializa o script ou seja no log do mkt ele só inicializa o "BEGIN" e nao traz nenhum retorno de confirmação ou se deu erro.
    Somente quendo eu coloco pppoe-out é que ele retorna a msg de erro "Authentication Failure" porém eu entro pelo site normalmente tanto no dyndns como no change ip.

    O que será q pode estar acontecendo.

    Obrigado
    Andre

    amigo o codigo aqui citato esta correto, funciona 100% pra resolver seu problema de autenticacao eh necessario que dentro do changeip o seu Account Status: Active so isso. abraços