Tendo um endereço IP público arbitrário, existe uma maneira de determinar a sub-rede à qual ele pertence sem conhecer a máscara de rede?
Responder1
A resposta curta é não.
O melhor que você pode fazer é dar suposições fundamentadas - o grau de instrução depende de quão desesperado você está e dos recursos que tem à sua disposição.
As fontes para informar a suposição incluiriam (mas provavelmente não estão limitadas a)
- Dicas do endereço IP - pelo menos na Nova Zelândia, historicamente os endereços eram divididos em faixas de tamanho (o menor sendo uma "Classe C" de 256).
- O que as tabelas de roteamento BGP dizem a você.
- De acordo com a postagem de @Zina - como o gateway e o host respondem. Existem dicas aqui e, na melhor das hipóteses, não é confiável. As suposições sobre o próximo salto nem sempre são válidas - embora você possa melhorar isso se puder fazer impressões digitais dos dispositivos e ver se o mesmo roteador está respondendo em vários endereços e inferir sub-redes a partir disso.
- Ao receber dicas dos serviços disponíveis nos dispositivos atrás do roteador na mesma sub-rede - novamente, altamente não confiável, mas, por exemplo, um serviço em nuvem pode ter várias instâncias do mesmo servidor web configuradas da mesma maneira, e seus vizinhos - que podem pertencer a outros locatários teriam configurações diferentes.
- O último octeto também lhe diz algo. Certos valores têm maior probabilidade de agir de forma "diferente" em relação aos endereços regulares (transmissão e rede) e isso também pode ajudar a inferir isso.
Responder2
Você pode encontrá-lo com traceroute. Encontre seu gateway público com traceroute www.google.com
. Agora é só rastrear o IP anterior/próximo a partir do DG público. Quando você começar a ver um salto adicional que mostrará o limite. Por exemplo. meu IP é xy96.112 e meu roteador mostra que o DG é 96.1. e vejo o mesmo com o traceroute google check, IP do roteador local do primeiro salto, IP do gateway público do próximo salto. Então eu sei que é pelo menos uma rede/25 (Primeiro IP -> 1 - meu IP público -> 112 - significando pelo menos uma rede com 126 hosts). Com traceroute, vejo um salto adicional em xy95.254 (portanto, o DG em 96.1 é o primeiro IP na rede) e um salto adicional com xy98.1 - então presumo que seja uma rede/22. É claro que isso só funciona se você receber uma resposta com o endereço IP do salto.