Este texto é auxiliar da série de textos sobre DNS dinâmico.
O seu modem é sempre o primeiro a saber qual o seu IP externo e seria perfeito se existisse um mecanismo padronizado para que ele avisasse quando obtivesse um IP. Infelizmente esse mecanismo não existe e o meio mais “simples” de saber qual o seu IP externo acaba sendo, contra-intuitivamente, perguntar a terceiros!
Você pode nem saber o que é um IP externo mas cada site que você acessa sabe qual é o seu, porque essa informação é indispensável e faz parte do protocolo de conexão. Sendo assim, como a maioria dos meus leitores deve saber, há muito tempo sites vem oferecendo uma gambiarra para contornar essa deficiência dos protocolos de conexão à internet: basta abrir a página deles que eles respondem com o seu endereço IP. Entre eles estão:
- http://whatismyip.com/ – Eu suponho que seja o mais conhecido de todos, mas as constantes mudanças no código fonte dificultam seu uso em projetos de automação e o constante entulhamento da interface dificulta até perguntar a alguém pelo telefone que número está aparecendo;
- http://www.ipchicken.com/ – Faz DNS reverso automático, mostrando a você o nome DNS da sua conexão. Útil quando você quer saber se a linha é GVT ou Velox ou se é IP fixo ou dinâmico.
- http://icanhazip.com/ – Serviço oferecido por Major Hayden. Embora esteja entre os mais feios, é o mais prático. A resposta é unicamente o endereço IP em texto puro, sem formatação. Perfeito para uso em automação. Neste outro texto explico como ter a mesma funcionalidade no seu site;
- http://checkip.dyndns.com/
Mas o que danado é IP externo?
Como este texto foi criado primariamente para dar suporte aos meus textos sobre DNS dinâmico eu imagino que a maioria dos leitores não precise ser lembrado do que é isso. Porém muita gente pode cair aqui via Google, então aí vai uma explicação sucinta, que eu posso ou não expandir depois (não tenho tempo agora):
Uma das primeiras coisas a confundir os novatos é que cada dispositivo conectado à internet através de um roteador (que pode ser o modem) tem dois endereços IP:
- O interno, que só vale dentro de sua própria rede e é você quem determina. Se você estiver de qualquer forma conectado a uma rede, você tem um endereço IP interno, mesmo que seja “inventado” pelo SO (endereços de auto configuração);
- O externo, que é o IP atribuído pelo provedor de acesso à sua conexão e na maioria das conexões ADSL muda toda vez que você desconecta e reconecta. Esse endereço somente existe quando você está conectado à internet E geralmente só é importante se você deseja que alguém inicie uma conexão com você a partir da internet.
Como explicado acima, o IP externo não é uma informação “óbvia”, depende de você estar conectado ou não à internet e geralmente muda com freqüência. Não é algo que possa simplesmente ser memorizado. Se alguém pergunta a você “qual o seu IP externo?” geralmente está esperando que você verifique ou tenha verificado isso recentemente pelos meios indicados acima ou similares.
Jefferson, acompanho seu blog desde os tempos do portal (hoje “https://ryan.com.br/dvd_portal.htm”) e adoro muito tanto o que escreve como a forma como escreve.
Nunca achei necessário intervir antes pois a grande maioria dos temas são novidade ou fora da minha área de atuação mas neste caso acho que tenho algumas informações que podem, ou não, ser interessantes.
Você pode editar este comentário a vontade, retirando o que não for pertinente, que não vou ficar incomodado. Muito pelo contrário, vou me sentir orgulhoso se passar pelo seu “filtro” pessoal.
Com relação ao tema endereço IP não seria mais “correto” utilizar os termos público/privado ao invés de externo/interno?
Em ambos os casos são endereços IP (um número de 32 bits) mas o que difere sua função seria a possibilidade dos endereços públicos serem roteáveis pelos equipamentos da Internet enquanto os privados não, embora todos eles são roteáveis de maneira geral mas os endereços privados são bloqueados pelos equipamentos da rede mundial.
Você ainda me surpreendeu ao utilizar os termos externo/interno pois o que normalmente tenho visto por aí são válido/inválido. Tá, eu sei que externo/interno cabe bem melhor no contexto do tema do que válido/inválido e também sei que você é experto o suficiente para saber a diferença, mas porque não público/privado? Nem acho que seria necessário alterar a sua explicação para usar estes termos.
De qualquer forma, muito obrigado pela oportunidade de me expressar a respeito do tema.
Sidmar.
Sidmar,
Somente mais ou menos uma hora depois de publicar o texto eu me lembrei de que geralmente se usa o termo “ip público”. Eu escrevi externo porque na ocasião eu estava trabalhando com várias fontes que chamavam de “external” e nenhuma que chamava de “public”, daí fiquei “contaminado” pelo termo. Entretanto Eu fiquei matutando se deveria mudar o texto e fiquei em dúvida, porque o IP externo nem sempre é literalmente “público”. “Válido/Inválido” no contexto da minha explicação soa ainda pior. Eu ainda não decidi o que fazer a respeito.
Mas obrigado pela contribuição.