Respostas:
Sim, você pode (às vezes) resolver um endereço IP de volta para um nome de host.
No DNS, um endereço IP pode ser armazenado em um PTR
registro. Você pode usar nslookup
para resolver nomes de host e endereços IP, embora o uso de nslookup
tenha sido preterido por algum tempo.
Para obter melhores resultados, você realmente deve se apossar da dig
ferramenta. Se você é um usuário Linux, isso está disponível como parte do dnsutils
(debian) ou pacote similar. Se você é usuário do Windows, pode seguir instruções como estas para instalar dig
.
Você pode então fazer:
dig A <hostname>
Para procurar o endereço IPv4 de um host ou:
dig AAAA <hostname>
Para procurar o endereço IPv6 de um host ou:
dig PTR ZZZ.YYY.XXX.WWW.in-addr.arpa.
Para procurar o nome do host para o endereço IPv4 WWW.XXX.YYY.ZZZ
(observe que os octetos estão invertidos) ou:
dig PTR b.a.9.8.7.6.5.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.8.b.d.0.1.0.0.2.ip6.arpa.
Para obter o nome do host para o endereço IPv6 2001: db8 :: 567: 89ab.
PTR
Registro de recursos, sendo o PTR uma abreviação para pointer
.
dig -x <ipaddress>
? No meu sistema Linux, ele fala IPv4 e IPv6. dig -x 169.254.0.1
e dig -x fe80::1
.
-a
opção ping está listada Resolve addresses to hostnames
no Win7 pelo menos, então não vejo por que não funcionaria. No entanto, nslookup
ou melhor ainda, dig
são realmente feitos para coisas assim. Ping
não é.
nslookup
também resulta em " nslookup
está obsoleto e pode ser removido de versões futuras. Considere usar os programas dig
ou host
". O Google poderia facilmente informá-lo disso se você se importasse em procurar.
Você pode usar nslookup
,, dig
ou outra ferramenta de rede para obter um nome de domínio para um endereço IP, mas não será necessariamente o que você está esperando.
Diferentemente das pesquisas de DNS normais, onde muitos nomes podem ser resolvidos para um único endereço IP, as pesquisas de DNS reversas só podem ser resolvidas com um único nome, e são tratadas por quem controla as informações de DNS reverso do bloco IP em questão. Ninguém mais pode configurar um PTR
registro em um bloco de endereço IP aleatório. Isso contrasta com as pesquisas DNS "normais", nas quais qualquer pessoa pode configurar um nome de domínio e criar A
registros apontando para os endereços IP desejados.
Esta pergunta sobre ServerFault tem um pouco mais de informações sobre este tópico.
O que quero dizer é que só porque você pode fazer isso não significa que você conseguirá o que está esperando ou que será útil.
A
registro e o PTR
registro estão sob controle da mesma pessoa, o PTR
registro ainda se refere a algum nome interno da máquina. O PTR
registro também pode ser inexistente, por exemplo, se você tentar dig www.google.com
, em seguida, dig -x
um dos endereços IP que www.google.com
mapeia para.
dig
tem a -x addr
opção:
Pesquisas inversas - mapeando endereços para nomes - são simplificadas pela
-x
opção.addr
é um endereço IPv4 em notação decimal pontilhada ou um endereço IPv6 delimitado por dois pontos. Quando esta opção for usada, não há necessidade de fornecer osname
,class
etype
argumentos
Por exemplo:
dig -x 82.165.8.211
Como um aparte: o endereço IP estava no registro de diário de uma placa de desenvolvimento ARTIK 710, e eu pensei que tinha sido hackeado. Não conseguia me lembrar da dig
opção de fazer isso sem usar o tedioso método PTR, mas depois vi o comentário de Michael .
E a página de manual dig
apenas menciona isso de passagem; Eu nem percebi até encontrar a resposta aqui e voltar e procurar.
ps o endereço foi resolvido para ipv4.connman.net, e então eu o encontrei; Eu não fui hackeado.
[root@artik ~]# grep -r '\<ipv4.connman.net\>' /etc /usr/bin /usr/sbin
Binary file /usr/sbin/connmand matches
as entradas de log que causaram preocupação foram:
Jul 15 04:41:11 artik connmand[1870]: wlan0 {add} route 82.165.8.211 gw 192.168.251.1 scope 0 <UNIVERSE>
Jul 15 04:41:12 artik connmand[1870]: wlan0 {del} route 82.165.8.211 gw 192.168.251.1 scope 0 <UNIVERSE>
Outra maneira de "resolver" endereços IP para nomes de host é possível usando o mecanismo de pesquisa bing . Se o host executar um servidor da web público e alguns sites atendidos pelo host estiverem indexados, você poderá consultá-lo usando o ip:
prefixo.
Basta entrar ip:64.34.119.12
no formulário de pesquisa para obter uma lista de nomes de host por trás desse IP.
E o anfitrião? Eu uso diariamente no trabalho
#host speakeasy.net
speakeasy.net has address 69.17.117.156
speakeasy.net mail is handled by 5 mx.speakeasy.net.
speakeasy.net mail is handled by 10 mx01.speakeasy.net.
speakeasy.net mail is handled by 15 mx02.speakeasy.net.
#host 69.17.117.156
156.117.17.69.in-addr.arpa domain name pointer www.speakeasy.net.
Você pode obter o nome do host no endereço IPv4 ou IPv6 usando a função gethostbyaddr () nos soquetes.
Link: https://beej.us/guide/bgnet/html/multi/gethostbynameman.html
Atenciosamente,
SSuman185