Come determinare il nome host da un indirizzo IP in una rete Windows?


84

La mia LAN ha 50 host Windows. Alla riga di comando di Windows provo ping per ottenere l'indirizzo IP di una macchina Windows in esecuzione.

La domanda è: come ottenere il nome host di un indirizzo IP specifico nello stesso gruppo di lavoro di Windows?

Un'altra domanda è come sapere il nome host della macchina Windows da una scatola Linux se ho un indirizzo IP? Quale comando usi? Ho un host con Kubuntu 9.04.

Risposte:


92

Se vuoi determinare il nome di una macchina Windows senza DNS, dovresti provare Nbtstat . Ma funzionerà solo su Windows:

Per esempio,

NBTSTAT -A 10.10.10.10

Su Linux, dovresti provare nmblookup che fa quasi lo stesso.


3
NBTSTAT fa affidamento sul fatto che NetBIOS sia caricato e in esecuzione, che è spesso disattivato in organizzazioni più grandi con la propria infrastruttura AD e DNS. Probabilmente un presupposto sicuro qui con un gruppo di lavoro di 50 macchine.
GAThrawn

Grazie Decca, l'nbtstat è rock tra ... Ho fallito su Linux box nmblookup 192.168.1.92 interrogando 192.168.1.92 su 192.168.1.255 name_query non sono riuscito a trovare il nome 192.168.1.92
billyduc

8
Il comando nmblookup -A 192.168.1.92 funziona
correttamente

1
nmblookupfa parte del pacchetto Samba della mia distro. Non sono sicuro del motivo per nmblookupcui IP to hostname fa parte di Samba (codice del file system in rete e codice dei servizi di stampa).
Trevor Boyd Smith,

60

Il metodo tecnicamente preferibile è digitare nslookup <ip address>

NSLOOKUP in realtà chiede al server DNS l'indirizzo IP del nome host. Ping utilizzerà la cache del resolver DNS locale , che potrebbe non essere corretta fino allo svuotamento.


questo presuppone che abbia un server DNS interno per la risoluzione dei nomi. inoltre, l'op ha dichiarato che voleva risolvere un nome host dall'ip, quindi presumo che non conosca il nome host per cominciare. inoltre, per quanto mi riguarda, non esiste un modo corretto o sbagliato di farlo. ci sono più metodi, ognuno dei quali sono validi e ognuno dei quali può produrre risultati diversi.
joeqwerty,

3
No. L'uso di PING non è il modo migliore per farlo. Puoi fare un nslookup <ip address>e risolverà la ricerca inversa.
Izzy,

1
Ti riferisci a NSLOOKUP come se fosse uno strumento di risoluzione interno ... Ad ogni modo, NSLOOKUP è l'opzione tecnicamente superiore.
Izzy,

1
Ma ha ragione. nslookup è utile in questo scenario solo se esiste un server DNS (interno o esterno) con voci di zona di ricerca inversa per gli host dell'OP e le macchine dell'OP sono configurate per utilizzare quel server DNS.
Maximus Minimus,

3
@Izzy Mi sono registrato come nuovo membro solo per dire grazie per il suggerimento per NSLOOKUP, Izzy. Tra tutte le cose sopra, è l'unica che ha funzionato per me. Grazie mille.
Jeff

9

Su Windows è possibile utilizzare ping -a x.x.x.xper tentare di risolvere il nome host dall'indirizzo IP .


1
Il PING può dare risultati imprecisi, specialmente se stai lavorando attivamente su problemi DNS.
Izzy,

l'opera non ha dichiarato che stava lavorando su problemi di DNS, ha insinuato che stava lavorando su problemi di risoluzione dei nomi. dns non è l'unico meccanismo di risoluzione dei nomi in Windows e non è un meccanismo di risoluzione dei nomi richiesto. ha anche affermato di lavorare in un gruppo di lavoro, quindi non ho ipotizzato che avesse una infrastruttura DNS.
joeqwerty,

Il DNS è effettivamente richiesto per Active Directory. Semplicemente non abbiamo abbastanza informazioni per dire qualcosa di definitivo al riguardo.
Maximus Minimus,

@mh: sì lo è, ma ancora ... non abbastanza informazioni dall'op.
joeqwerty,

grazie a tutti ! Non ho un servizio Active Directory, ho una risoluzione del server DNS per dhcp, mail, web server nella mia azienda, la maggior parte degli host dei dipendenti esegue Windows XP e utilizza lo stesso WORKGROUP.
Billyduc,


4

Per gli utenti mac smbutil -v status -ae x.x.x.xfunziona. Puoi anche usare arp -aper ottenere indirizzi mac per tutto sulla tua rete.


1

nmblookup potrebbe non funzionare bene per gli host Linux, perché il nome NetBIOS è obsoleto. E su Windows, è limitato alla rete locale.


2
No questo è sbagliato. Netbios non è (purtroppo) deprecato e in realtà richiesto per una serie di funzioni vitali di Active Directory.
HopelessN00b,

Qualcuno può sottolineare come in quali casi AD DS si affida ancora a Netbios? Si è discusso che Netbios sarebbe stato deprecato dai tempi di Windows Server 2003. È ancora in qualche modo richiesto ora con le reti di Servizi di dominio Active Directory di Windows Server 2012?
Mikhail,

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.