Come ottenere l'indirizzo IP di una macchina Unix?


13

Devo conoscere l'indirizzo IP di una macchina UNIX. Posso accedere ad esso con SSH ma non conosco l'indirizzo IP.

Qualcuno può dirmi un comando per ottenere l'indirizzo IP della macchina Unix a cui ho effettuato l'accesso?


Risposte:


5

prova questo codice per vedere l'indirizzo IP della macchina unix

nslookup mach_name

11

È possibile utilizzare ifconfig per ottenere l'indirizzo IP di una qualsiasi delle interfacce sul sistema (si noti che potrebbe esserci più di un'interfaccia e più di un indirizzo IP).

Iniziare con:

 $ ifconfig -a

4
Alcuni sistemi UNIX non etichettano le loro interfacce en0- una risposta più generale è usare ifconfig -a. Inoltre, il ifconfigbinario non è sempre PATHattivo per gli utenti ordinari, quindi potrebbe essere necessario provare vari incantesimi come /sbin/ifconfig -a, /etc/ifconfig -ao accedere come root e provare ifconfig -a.
RedGrittyBrick,

7

Usa questo comando

host `hostname`

o questo

nslookup `hostname` | grep -i address | awk -F" " '{print $2}' | awk -F# '{print $1}' | tail -n 1

Spiegazione

Inizia con nslookup

nslookup `hostname`      

quindi cerca "indirizzo"

nslookup `hostname` | grep -i address

Questo restituirà qualcosa di simile

Address:    192.168.1.1#53
Address: 192.168.1.167

Ora recuperiamo solo gli indirizzi selezionando la seconda colonna di testo. Passiamo "" come separatore di campo

nslookup `hostname` | grep -i address | awk -F" " '{print $2}'

Ci libereremo della parte "# 53" selezionando la prima colonna. Passiamo "#" come separatore di campo

nslookup `hostname` | grep -i address | awk -F" " '{print $2}' | awk -F# '{print $1}'

L'ultimo indirizzo è l'indirizzo locale. La coda ci aiuterà a ottenerlo.

nslookup `hostname` | grep -i address | awk -F" " '{print $2}' | awk -F# '{print $1}' | tail -n 1

5

Un'alternativa a ipconfigè ip(8)dove l'output può essere in qualche modo ristretto. Per esempio:

$ ip -f inet addr
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 16436 qdisc noqueue 
    inet 127.0.0.1/8 scope host lo
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast qlen 1000
    inet 172.31.39.10/24 brd 172.31.39.255 scope global eth0

L'interfaccia che non è loopback (lo) è quella che desideri: 172.31.39.10


0

usa ifconfige cerca la inetparte dell'output. Nota se hai più di una scheda di rete (Ethernet e wireless per esempio) ci sarà più di una voce.

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.