+ Responder ao Tópico



  1. #1

    Padrão DDNS com modem routeado no MK

    bom pessoal ja andei lendo vairios tuturuas no forum e na web mais ainda não conseguia fazer na minha rede. to querendo acessar meu mk de uma rede externa. gostaria q vc mim passe o passo a passo.

    modem: DLINK 500b - Software Version: BCM-1.1.TM.20060205
    mk: rb750g versao: 3.31.

  2. #2

    Padrão

    So modem está como roteador, o IP público está nele, consequentemente vc tem que ver se ele tem suporte àlgum serviço de DNS dinâmico e criar a porta de redirecionamento para o seu mikrotik.

    Do contrário vc pode usar o modem como bridge e fazer o seu mikrotik conectar (pppoe ou pppoa) e receber o IP público e assim, usar o serviço de DDNS direto pelo mikrotik.



  3. #3

  4. #4

    Padrão

    Podes usar o codigo abaixo e colar em System - scripts com todos os "policy" ativados, e depois vá a System - Scheduler e adicione uma marcação para execução do script por exemplo de 5 em 5 minutos ou o tempo que vc achar necessário!!, é necessário antes que vc cadastre-se no CHANGEIP.ORG (que é a mesma coisa do dyndns) e utilize os dados, tipo Username , senha e host seuhost.changeip.org para ajustar o script!, este script só funcionou para o CHANGEIP.ORG, mas se alguem conseguir fazer funcionar no dyndns por favor me repasse!!!!

    segue código..

    #script testado para o CHANGEIP.ORG, não funcionou com dyndns....
    # Define User Variables
    :log info ("Inicio DDNS...")
    :global ddnsuser "seu login"
    :global ddnspass "sua senha"
    :global ddnshost "seuhost.changeip.org"

    # Define Global Variables
    #:log info ("Variaveis...")
    :global ddnsip
    :global ddnslastip
    :if ([ :typeof $ddnslastip ] = nil ) do={ :global ddnslastip "0" }
    #:log info ("Obtendo versão...")
    :global ddnsinterface
    :global ddnssystem ("mt-4.2")
    #aparentemente a linha abaixo deixou de funcionar nas versões do MK acima de 4.0, por isso fixei a versão na linha acima...
    #[/system package get system version] )
    # Define Local Variables
    :local int

    #defina a interface por onde entra o link do seu modem roteado, neste caso aqui a ether1...
    :global ddnsinterface "ether1"

    # Grab the current IP address on that interface.
    #:log info ("Endereço IP atual...")
    :global ddnsip [ /ip address get [/ip address find interface=ether1 ] address ]
    :log info ("DDNS: IP Atual na interface " . $ddnsinterface . " é: " . $ddnsip)
    #coloque na linha abaixo o nome do seu HOST no changeip..
    :log info ("Endereço atual do IP dinamico: " . ut [:resolve seuhost.changeip.org])

    #:log info ("Compara endereços...")
    :global ddnslastip "0"
    # Did we get an IP address to compare?
    :if ([ :typeof $ddnsip ] = nil ) do={
    :log info ("DDNS: Não há endereço IP na interface: " . $ddnsinterface . ", verifique.")
    } else={
    :if ($ddnsip != $ddnslastip) do={
    :log info "DDNS: ATUALIZANDO..."
    :log info [ ut [/tool dns-update name=$ddnshost address=[ick $ddnsip 0 [:find $ddnsip "/"] ] key-name=$ddnsuser key=$ddnspass ] ]
    :global ddnslastip $ddnsip
    } else={
    :log info "DDNS: Atualização não necessária."
    }
    }
    #:log info ("Fim script...")
    # End of script



  5. #5

    Padrão

    não sei o que houve com esses emoticons, não era pra estarem aí, onde há ut e ick os comandos são ": put" e ": pick" mas juntos os ":" e o comando, favor corrigir... a propósito como envio arquivos para o forum?

    Cordiais saudações
    Última edição por marcelodm; 05-03-2010 às 10:14. Razão: caracteres não desejados no post

  6. #6



  7. #7

    Padrão

    mais isso e com o modem routeado ou em mk discando?

  8. #8

    Padrão

    Modem roteado! (mas deve funcionar igualmente com o MK fazendo PPPoE, pois o processo de captura do ip é o mesmo), justamente para que o proprio mk atualize o endereço do seu host dinamicamente, no tempo programado no scheduler... funciona perfeitamente para mim, mas apenas no CHANGEIP.ORG...

    Saudações



  9. #9
    Avatar de angelangra
    Ingresso
    Jul 2007
    Localização
    Angra dos Reis, Rio de Janeiro, Brazil, Brazil
    Posts
    368

    Padrão Re: DDNS com modem routeado no MK

    Como tenho que fazer no meu caso.

    tenho um PC-MK + RB. O PC-MK está fazendo o ppoe o ddns nele funciona normal, só que queria colocar um ddns para a RB. como tenho que fazer?

  10. #10

    Padrão Re: DDNS com modem routeado no MK

    Citação Postado originalmente por marcelodm Ver Post
    Podes usar o codigo abaixo e colar em System - scripts com todos os "policy" ativados, e depois vá a System - Scheduler e adicione uma marcação para execução do script por exemplo de 5 em 5 minutos ou o tempo que vc achar necessário!!, é necessário antes que vc cadastre-se no CHANGEIP.ORG (que é a mesma coisa do dyndns) e utilize os dados, tipo Username , senha e host seuhost.changeip.org para ajustar o script!, este script só funcionou para o CHANGEIP.ORG, mas se alguem conseguir fazer funcionar no dyndns por favor me repasse!!!!

    segue código..

    #script testado para o CHANGEIP.ORG, não funcionou com dyndns....
    # Define User Variables
    :log info ("Inicio DDNS...")
    :global ddnsuser "seu login"
    :global ddnspass "sua senha"
    :global ddnshost "seuhost.changeip.org"

    # Define Global Variables
    #:log info ("Variaveis...")
    :global ddnsip
    :global ddnslastip
    :if ([ :typeof $ddnslastip ] = nil ) do={ :global ddnslastip "0" }
    #:log info ("Obtendo versão...")
    :global ddnsinterface
    :global ddnssystem ("mt-4.2")
    #aparentemente a linha abaixo deixou de funcionar nas versões do MK acima de 4.0, por isso fixei a versão na linha acima...
    #[/system package get system version] )
    # Define Local Variables
    :local int

    #defina a interface por onde entra o link do seu modem roteado, neste caso aqui a ether1...
    :global ddnsinterface "ether1"

    # Grab the current IP address on that interface.
    #:log info ("Endereço IP atual...")
    :global ddnsip [ /ip address get [/ip address find interface=ether1 ] address ]
    :log info ("DDNS: IP Atual na interface " . $ddnsinterface . " é: " . $ddnsip)
    #coloque na linha abaixo o nome do seu HOST no changeip..
    :log info ("Endereço atual do IP dinamico: " . ut [:resolve seuhost.changeip.org])

    #:log info ("Compara endereços...")
    :global ddnslastip "0"
    # Did we get an IP address to compare?
    :if ([ :typeof $ddnsip ] = nil ) do={
    :log info ("DDNS: Não há endereço IP na interface: " . $ddnsinterface . ", verifique.")
    } else={
    :if ($ddnsip != $ddnslastip) do={
    :log info "DDNS: ATUALIZANDO..."
    :log info [ ut [/tool dns-update name=$ddnshost address=[ick $ddnsip 0 [:find $ddnsip "/"] ] key-name=$ddnsuser key=$ddnspass ] ]
    :global ddnslastip $ddnsip
    } else={
    :log info "DDNS: Atualização não necessária."
    }
    }
    #:log info ("Fim script...")
    # End of script

    apesar de antigo o topico o script é 100 funcional tive exito aqui , valeu