sábado, 1 de dezembro de 2007

Configurando um DNS Dinâmico com o No-IP

O No-IP é um serviço de DNS dinâmico que permite que você consiga acessar seu computador via Internet usando o mesmo nome, independente do IP que ele estiver utilizando (ótimo para conexões sem IP fixo, como assinaturas ADSL ou cable residenciais).

Um dos planos do No-IP, que com certeza atrai a atenção de muita gente (inclusive minha), permite que você crie uma conta free.
Como desvantagem, por tratar-se de um plano free, você terá de trimestralmente confirmar a existência do mesmo para não "perder o seu domínio", o que cá entre nós não chega a ser algo problemático pois você receberá e-mails informando da necessidade de "renovação" da conta.
A No-IP também oferece planos pagos com vários outros recursos e vantagens, mas nesse caso vou utilizar uma conta free normal.

Como fazer ?
Inicialmente, você deve entrar no site do No-IP e se cadastrar. Após o cadastro realizado, você deverá adicionar um Host, escolhendo o nome do mesmo e o domínio ao qual ele vai ficar associado (existe mais de uma dezena deles).

O No-IP oferece uma série de outros recursos, que você poderá explorar com mais cuidado, mas nesse post irei tratar de um DNS simples, somente para permitir que você tenha acesso a seu computador sem se preocupar com o IP que ele está no momento.

Após finalizar seu cadastro, é necessário baixar o arquivo que contém o daemon que ficará rodando no seu computador. Clique aqui para baixar a versão para Linux. Dica: coloque seus sources sempre na pasta /usr/local/src.

Após o download, torne-se root e abra o arquivo .tar.gz. Acesse então o diretório criado (atualmente noip-2.1.7).
Ok, e agora ? Dentro do subdiretório binaries existem os binários do noip em versão 32 e 64 bits. Copiei o binário de sua versão para o diretório /usr/local/bin. Renomeie o mesmo para noip2, pois é com esse nome que os scripts de inicialização irão tentar iniciar o serviço(se você não fizer isso será necessário mexer nesses scripts).

Configurando
Após, rode o comando noip2 -C.

Será então necessário informar alguns dados:
  • Seu e-mail cadastrado no No-IP;
  • Sua senha;
  • O domínio a ser usado no computador (caso só tenha registrado um único domínio, ele será usado por padrão);
  • Tempo de intervalo para atualização (em caso de troca de IP). O padrão é 30 minutos, o que é bem razoável;
  • Você também será questionado se deseja executar alguma coisa após uma atualização de DNS bem sucedida. Caso seja necessário, você deverá informar o nome do programa a ser rodado (aconselho sempre informar com o caminho completo);
Após todas as perguntas serem respondidas, o arquivo /usr/local/etc/no-ip2.conf será criado.

E como faço pra iniciar o serviço ?
Bem, se você usa Debian ou Ubuntu, um script padrão é incluído no sources. O mesmo se chama debian.noip2.sh (existe também o gentoo.noip2.sh e o mac.osx.startup).

Copie esse arquivo para a pasta /etc/init.d (eu copiei-o como simplesmente noip2.sh para padronizar) e não esqueça de dar permissão de execução para o mesmo. Tenha também cuidado em colocá-lo na inicialização padrão de sua distro. Como fazer isso no Debian e no Ubuntu ? Rode o comando update-rc.d noip2.sh defaults. Ele irá criar os links simbólicos em todos os runlevels.

Terminados esses processos, agora basta iniciar o serviço e curtir seu DNS dinâmico. E se quiser testar o mesmo rode o comando host NomeDoSeuDominio e você irá ver seu nome resolvido para seu IP atual.

Sem mistérios e muitas complicações, o No-IP é uma boa solução para criação de DNS dinâmicos. Se alguém tiver alguma outra dica sobre o tema, aguardo comentários.

7 comentários:

  1. Otima dica. Mas caso nao queira usar o cliente do no-ip voce pode usar o ddclient que funciona muitissimo bem. Utilizo no Ubuntu,Mandriva,Conectiva 10 e roda redondo!!
    Fica aqui minha contribuicao,inclusive procure no www.vivaolinux.com.br sobre o ddclient que ensina como configura-lo..
    Valeu...

    ResponderExcluir
  2. Alguns modens e roteadores usados na conexão de Speedy e outros serviços de banda larga já possuem a opção DDNS. Assim é ligar o modem, conectar a rede e o proprio modem/roteator fará a atualização (DDNS) no no-ip.org.

    Esses roteadores WireLess da D-LINK é um recurso bastante comum. O único problema é que para funcionar é necessário configurar o roteador para logar-se na rede PPPoE que não é nada trivial. Mas que vale muito a pena.

    ResponderExcluir
  3. Aqui deu tudo certinho, porem quando acesso o dominio.no-ip.org, cai na tela pedindo user e senha do meu modem Dlink 500G.

    ResponderExcluir
  4. Amanda, isso acontece porque você está tentando acessar o seu computador e seu modem está respondendo na porta 80 (já que normalmente o IP fica nele).

    Se você quer acessar seu computador na porta 80, deve configurar o modem pra fazer o redirecionamento da mesma para ele ou então usar o modem como bridge (se ele tiver esse recurso), para que o IP fique direto no computador e não no modem.

    ResponderExcluir
  5. Ok Marcelo, vou fazer uns testes aqui. Obrigada.

    ResponderExcluir
  6. No meu também acontece isso (conectar ao modem ao invés do PC)... É que ele está configurado com router então ele é o "dono" do ip válido, isso eu já sabia, o que eu ainda não sei é como configurá-lo pra ele redirecionar os pedidos recebidos para o ip/porta da rede local. Como se faz isso, alguém aí tem uma receitinha prática para esse caso? ;-)

    Um abraço e obrigado.

    ResponderExcluir
  7. O que você quer fazer é um NAPT, ou seja redirecionar o que chega em uma determinada porta do modem para um computador da rede.

    Normalmente todos os modens tem esses recursos de NAT/NAPT.

    ResponderExcluir