Configurarndo DDNS com ip dinâmico no Ubuntu

Publicado por Ruy em 07/01/2010

[ Hits: 25.835 ]

 


Configurarndo DDNS com ip dinâmico no Ubuntu



Após quebrar a cabeça com ddns e IP dinâmico no Ubuntu Linux, resolvi colocar este post.

1) Instale dois pacotes:

# apt-get install gawk lynx

2) Baixe os arquivos de:
E descompacte o arquivo .gz no diretório /usr/local/sbin.

3) Edite o arquivo /usr/local/sbin/ddns.sh. Apague todo seu conteúdo e coloque o script que está no final desta dica.

4) Digite seu domínio, senha e interface nas variáveis configuráveis do script. Veja exemplo no próprio script.

5) Coloque a seguinte linha no crontab:

*/1 * * * * /usr/local/sbin/ddns.sh

6) Boa sorte!

Obs.: se você estiver atrás de um NAT deverá redirecionar as portas do seu roteador. Para http, porta 80; para ssh porta 22 etc.

Conteúdo do arquivo /usr/local/sbin/ddns.sh:

!/bin/bash
# Script para testar se houve mudança de end. IP. Caso positivo, atualiza
#
# As seguintes variáveis devem ser configuradas:
#
DOMINIO="" #Seu end. DDNS (ex.: meuendereco.ddns.com.br)
SENHA="" #A sua senha para o domínio
INTERFACE="" #Coloque aqui o endereço da interface. Ex.: ppoe, eth0, etc
##################################################
TMPDIR=/tmp #Diretório temporário
BINDIR=/usr/local/sbin
##################################################
#OBTÉM O ANTIGO IP VÁLIDO
IPOLD="0"
if [ -e /tmp/ipnet.txt ]
then
   IPOLD=`cat /tmp/ipnet.txt`
   rm /tmp/ipnet.txt
fi

#OBTEM O NOVO IP VALIDO
lynx -dump http://www.meuip.info/ | grep IP | awk -F: '{ print $2 }' >> /tmp/ipnet.txt
IP=`cat /tmp/ipnet.txt`

#TESTA SE O IP ANTIGO É DIFERENTE DO NOVO
if [  $IPOLD != $IP ]
then
   # Setamos o DDNS  com o novo IP
   ${BINDIR}/setdns $SENHA $DOMINIO $IP
fi
#colocar no etc/contrab: */1 * * * * /usr/local/sbin/ddns.sh

Outras dicas deste autor
Nenhuma dica encontrada.
Leitura recomendada

INPROPRIETÁRIO - O Mundo do Software Livre

GNOME 3 - Alterando a função do fechamento de tampa de notebooks

Debian 6 - Autenticado no Active Directory utilizando o Likewise Open6

Verificando os dispositivos USB plugados no micro

Instalando o editor de texto Joe manualmente

  

Comentários
[1] Comentário enviado por jef.ferregato em 07/02/2010 - 22:47h

Olá amigo estou com um problema que o ddns está atualizando o ip da rede interna e nao o externo como deveria.

tenho um modem dls um router d-link que disca e autentica e atraz disso tudo um servidor ftp com o suse, e o ddns da winco configurado como no tutorial deles mesmo.

mas só está atualizando o ip interno.

testei o seu tutorial mas acho que está incompleto.


quem puder me ajudar ficarei muito grato.

abrac.

[2] Comentário enviado por mgottfried em 29/08/2011 - 21:35h

Instale o no-ip é mto fácil e funciona mto bem
#apt-get install noip2



[3] Comentário enviado por Shirimochi em 08/12/2011 - 00:14h

Opa xD

Gostei do tutorial ... mas como o meu amigo de cima disse está um pouco incompleto o final dele, se puder dar uma ajuda gostaria muito obrigado

[4] Comentário enviado por vancav em 16/02/2012 - 10:33h

Tive que usar e aqui funcionou com uma mudança no lynx:
o meuip.info não funcionava então vi outra diga que apontava para o showmyip.com, ficando assim:

lynx -dump http://www.showmyip.com/simple/ | sed '1!d' | awk '{print $1}' >> ${TMPDIR}/ddns.ip

obs.: na linha e nos demais lugares mudei para ler a variável da pasta tmp ${TMPDIR} e usei o mesmo nome para o arquivo temporário que o pessoal do DDNS usa nos seu scripts (precaução).

para o pessoal com menos contato com o linux, observar que no script acima falta a # na primeira linha (#/bin/bash)

vl

[5] Comentário enviado por Virbac em 29/02/2012 - 12:16h

Obrigado Vancav

VC ME AJUDOU MUITO


VLW

[6] Comentário enviado por leandromm em 11/05/2012 - 17:15h

já que o DDNS não é mais free.

tem agora o mesmoip.com.br 100% gratuito, e ele tem opção de atualizar só por uma URL o que facilita inclusão em qualquer aplicação, até uma personalizada,

também tem aplicativos, e a cada dia versões novas,

ainda é um bebe mais já está muito legal.

Abraços

[7] Comentário enviado por khyron em 20/11/2012 - 11:57h

boa tarde,

gostaria de saber como alterar essas portas

"" Obs.: se você estiver atrás de um NAT deverá redirecionar as portas do seu roteador. Para http, porta 80; para ssh porta 22 etc. ""

no svg1202 da net

obrigado

[8] Comentário enviado por leandromm em 14/01/2014 - 13:42h

Oi khyron, depende, cada roteador tem sua configuração, mais no geral é em port forwarding, ou virtual servers... você pode ainda, caso seja tudo em um único comutador, coloca ro IP do computador como DMZ, assim toda e qualquer porta será direcionada a esse IP.

após fazer isso você pode testar pelo site do mesmoip.com.br ele tem uma ferramenta que testa se a tua porta está ok

Abraços



Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts