Eu preciso encontrar o nome do host de um host UNIX cujo IP é conhecido sem fazer login no host UNIX
unix
command-line
hostname
user75536
fonte
fonte
Respostas:
Use nslookup
fonte
sudo yum install bind-utils
primeiro. isso instalará a pesquisa do nslookup para vocêVocê também pode fazer uma pesquisa reversa no DNS
host
. Apenas dê a ele o endereço IP como argumento:fonte
Outro utilitário de pesquisa NS que pode ser usado para pesquisa reversa é
dig
com a-x
opção:ou
Citando a partir da página de manual do dig :
fonte
Para Windows, ping -a 10.10.10.10
fonte
Para Windows, tente:
ou
Para Linux, tente:
Eles são quase iguais.
fonte
se você só precisa do nome, sem informações adicionais, adicione [0] no final:
fonte
python -c "import socket;print(socket.gethostbyaddr('10.16.7.10'))"
Depende do contexto. Eu acho que você está se referindo ao nome do host do sistema operacional (retornado
hostname
quando você está logado). Este comando é apenas para nomes internos ; portanto, para consultar o nome de uma máquina, são necessários diferentes sistemas de nomes. Existem vários sistemas que usam nomes para identificar hosts, incluindo DNS, DHCP, LDAP (DN's)hostname
etc., e muitos sistemas usam o zeroconf para sincronizar nomes entre vários sistemas de nomes. Por esse motivo, os resultados dehostname
algumas vezes correspondem aos resultados dedig
(veja abaixo) ou outros sistemas de nomes, mas muitas vezes não correspondem.O DNS é de longe o mais comum e é usado na Internet (como
google.com. A 216.58.218.142
) e em casa (mDNS / LLMNR), portanto, veja como executar uma pesquisa reversa no DNS :dig -x <address>
(nslookup
ehost
são mais simples, fornecem menos detalhes e podem até retornar diferentes resultados, no entanto,dig
não está incluído no Windows).Observe que os nomes de host dentro de uma CDN não resolverão o nome de domínio canônico (por exemplo, "google.com"), mas o nome do host do IP do host que você consultou (por exemplo, "dfw25s08-in-f142.1e100.net"; boato interessante: 1e100 é 1 googol).
Observe também que os hosts DNS podem ter mais de um nome. Isso é comum para hosts com mais de um servidor da web (hospedagem virtual), embora isso esteja se tornando menos comum graças à proliferação de tecnologias de virtualização. Esses hosts têm vários registros DNS PTR .
Por fim, observe que os registros de host DNS podem ser substituídos pela máquina local via / etc / hosts . Se você não está recebendo o nome do host esperado, verifique este arquivo.
Os nomes de host DHCP são consultados de maneira diferente, dependendo do software do servidor DHCP usado, porque (tanto quanto eu sei) o protocolo não define um método para consulta; no entanto, a maioria dos servidores fornece alguma maneira de fazer isso (geralmente com uma conta privilegiada).
Nota Os nomes DHCP geralmente são sincronizados com os servidores DNS, portanto, é comum ver os mesmos nomes de host em uma tabela com menos clientes DHCP e nos registros A (ou AAAA para IPv6) do servidor DNS. Novamente, isso geralmente é feito como parte do zeroconf.
Observe também que, apenas porque existe uma concessão de DHCP para um cliente, não significa que ele ainda está sendo usado.
O NetBIOS para TCP / IP (NBT) foi usado por décadas para executar a resolução de nomes, mas foi substituído pelo LLMNR para resolução de nomes (parte do zeroconf no Windows). Esse sistema legado ainda pode ser consultado com o
nbtstat
(Windows) ounmblookup
(Linux).fonte
As outras respostas aqui estão corretas - use pesquisas reversas de DNS. Se você quiser fazer isso por meio de uma linguagem de script (Python, Perl), poderá usar a API gethostbyaddr.
fonte
Se você está procurando especificamente uma máquina Windows, tente o comando abaixo:
fonte
Você também pode usar o comando traceroute.
http://linux.die.net/man/8/traceroute
basta usar o traceroute, ele mostrará o caminho de roteamento com nomes de host (IPs resolvidos)
fonte
Na maioria dos casos, o comando traceroute funciona bem. Os comandos nslookup e host podem falhar.
fonte