DNS dinâmico no Linux

Para quem tem internet com IP dinâmico (aquele que muda toda vês que você conecta à Internet), quando se está fora de casa (no seu trabalho ou até mesmo em outro país) é meio complicado conseguir acessar o computador que está em sua casa. O IP muda o tempo todo, e você não sabe mais qual é o IP atual. Qual é a solução para isso? Usar DNS dinâmico, dessa maneira sempre que você apontar para um endereço específico, ele sempre apontará para seu computador.

Como isso funciona? Simples, de tempo em tempo um programa conecta com o seu provedor de DNS dinâmico, identificando-se o passando o novo IP. A partir deste ponto o domínio é apontado para este novo IP. Para este exemplo, usaremos o No-IP como prestador de serviço de DNS dinâmico.

Primeiro cadastre se no site http://www.no-ip.com e depois vá em Hosts/Redirects » Add Host. Aparecerá uma tela solicitando algumas informações. No campo “Hostname” digite o nome do seu domínio (ficará mais ou menos assim: exemplo.zapto.org) e depois clique em “Create Host”.

Agora vamos instalar em seu computador o programa responsável em informar o novo IP para o sistema do No-IP. Ele pode ser baixado no próprio site ou através do comando abaixo:

$ wget http://www.no-ip.com/client/linux/noip-duc-linux.tar.gz

Descompacte o aquivo usando:

$ tar -zxvf noip-duc-linux.tar.gz

Todos os comandos abaixo deverão ser executados com o usuário root (ou usando sudo). Copie o executável para /usr/local/bin/, isso fará que o programa seja simplesmente por “noip” ao invés de precisar passar a localização do executável. Para copiar o arquivo, se seu sistema for 32bits use:

# cp -a noip-2.1.9-1/binaries/noip2-i686 /usr/local/bin/noip

Mas se for 64bits use:

# cp -a noip-2.1.9-1/binaries/noip2-x86_64 /usr/local/bin/noip

Agora vamos configurar o programa, digite:

# noip -C -c /etc/noip.conf

Sendo que o “-C” se significa criar e o “-c” aponta para o arquivo de configuração. Depois de executar esse comando aparecerá:

Auto configuration for Linux client of no-ip.com.

Multiple network devices have been detected.

Please select the Internet interface from this list.

By typing the number associated with it.
0    eth0
1    eth1
2    ppp0

Caso você tenha mais de uma interface de rede em seu computador, será necessário informar qual delas será usada, para isso digite o número correspondente de depois tecle Enter. Será solicitado que você identifique-se com usuário e senha:

Please enter the login/email string for no-ip.com  rafael@exemplo.com
Please enter the password for user 'rafael@exemplo.com'  **********

Se você tiver mais de um domínio cadastrado ele perguntará qual será usado, responda sim (y) ou não (n):

2 hosts are registered to this account.
Do you wish to have them all updated?[N] (y/N) n
Do you wish to have host [exemplo1.no-ip.org] updated?[N] (y/N)  y
Do you wish to have host [exemplo2.zapto.org] updated?[N] (y/N)  n

Depois ele pergunta se você quer executar alguma coisa quando o IP for atualizado, eu sempre respondo não.

Do you wish to run something at successful update?[N] (y/N)  n

Aparecerá a mensagem abaixo, informando que o aquivo de configuração foi criado.

New configuration file '/etc/noip.conf' created.

Para executar o programa use:

# noip -c /etc/noip.conf &

Caso você queira que o programa seja iniciado assim que o computador for ligado, edite o arquivo /etc/rc.local adiconando noip -c /etc/noip.conf & antes do exit 0. Devera ficar mais ou menos assim:

#!/bin/sh -e
#
# rc.local
#
# This script is executed at the end of each multiuser runlevel.
# Make sure that the script will "exit 0" on success or any other
# value on error.
#
# In order to enable or disable this script just change the execution
# bits.
#
# By default this script does nothing.

noip -c /etc/noip.conf &

exit 0

Dúvidas? Deixe um comentário.

Foi usando com referência:
http://www.hardware.com.br/dicas/servicos-dns-dinamico.html