Quais são as etapas para encontrar o endereço IP público de um computador?
Ser capaz de acessar um serviço para aprender seu endereço IP público pode ser muito útil, mas como o processo funciona? O post de perguntas e respostas do SuperUser de hoje tem a resposta para a pergunta de um curioso leitor.
A sessão de perguntas e respostas de hoje nos é oferecida por cortesia do SuperUser - uma subdivisão do Stack Exchange, um agrupamento de sites de perguntas e respostas conduzido pela comunidade..
Imagem cedida por Douglas Porter (Flickr).
A questão
Leitor de superusuário Harry quer saber quais são as etapas para encontrar o endereço IP público de um computador:
Estou ciente de serviços como What Is My IP Address, que permite que um usuário encontre seu endereço IP público, mas o que eu gostaria de saber é como esse serviço é escrito do zero? Eu não preciso do código em si, eu só quero saber os conceitos e os passos envolvidos (pseudo código se você quiser).
Isso é o que eu já sei sobre a criação de um serviço como esse:
- Gostaria de configurar um aplicativo da web na Internet que ouve / para a porta 80.
- Quando uma solicitação chega, eu examinaria seu endereço IP de origem e, em seguida, empacotaria isso em uma resposta HTML bem formatada para o usuário ver.
É isso, ou há algo mais envolvido aqui também?
Quais são as etapas para encontrar o endereço IP público de um computador??
A resposta
O colaborador do SuperUser, Scott Chamberlain, tem a resposta para nós:
Na maioria das vezes, o que você listou é tudo o que você precisa fazer para ter uma funcionalidade básica.
Há, no entanto, mais uma coisa que você poderia fazer. Você pode verificar o X-Forwarded-For cabeçalho adicionado por alguns proxies (o tipo usado para armazenar em cache) e / ou balanceadores de carga e relatar esse endereço em vez disso, porque o endereço que você obtém do endereço de origem será o endereço do proxy, não o endereço do usuário.
No entanto, esse cabeçalho é fornecido pelo usuário, portanto, não há como provar que o endereço listado em X-Forwarded-For é o verdadeiro endereço de origem do usuário.
Tem algo a acrescentar à explicação? Som desligado nos comentários. Quer ler mais respostas de outros usuários do Stack Exchange com experiência em tecnologia? Confira o tópico de discussão completo aqui.