Wie erhalte ich die IP-Adresse eines Unix-Computers?

13

Ich muss die IP-Adresse eines UNIX-Computers kennen. Ich kann mich mit ssh anmelden, kenne aber die IP-Adresse nicht.

Kann mir bitte jemand einen Befehl geben, um die IP-Adresse des Unix-Computers abzurufen, bei dem ich mich angemeldet habe?

Antoops
quelle
Siehe auch
RedGrittyBrick

Antworten:

5

Versuchen Sie diesen Code, um die IP-Adresse des Unix-Computers anzuzeigen

nslookup mach_name

quelle
11

Sie können ifconfig verwenden , um die IP-Adresse einer der Schnittstellen im System abzurufen (beachten Sie, dass möglicherweise mehr als eine Schnittstelle und mehr als eine IP-Adresse vorhanden sind).

Beginnen mit:

 $ ifconfig -a
Paul R.
quelle
4
Einige UNIX-Systeme kennzeichnen ihre Schnittstellen nicht en0- eine allgemeinere Antwort ist die Verwendung ifconfig -a. Auch das ifconfigist binär nicht immer auf den PATHfür normale Benutzer , so dass sie benötigen können verschiedene Beschwörungen wie versuchen /sbin/ifconfig -a, /etc/ifconfig -aoder als root anmelden und versuchen ifconfig -a.
RedGrittyBrick
7

Verwenden Sie diesen Befehl

host `hostname`

oder dieses

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

Erläuterung

Beginnen Sie mit nslookup

nslookup `hostname`      

dann suchen Sie nach "Adresse"

nslookup `hostname` | grep -i address

Dies wird so etwas wie zurückgeben

Address:    192.168.1.1#53
Address: 192.168.1.167

Lassen Sie uns nun nur die Adressen abrufen, indem Sie die zweite Textspalte auswählen. Wir übergeben "" als Feldtrennzeichen

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

Wir werden den Teil "# 53" loswerden, indem wir die erste Spalte auswählen. Wir übergeben "#" als Feldtrennzeichen

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

Die letzte Adresse ist die lokale Adresse. Schwanz wird uns helfen, es zu bekommen.

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

Eine Alternative dazu ipconfigist, ip(8)wo die Ausgabe etwas eingeengt werden kann. Zum Beispiel:

$ 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

Die Schnittstelle, die kein Loopback (lo) ist, ist die gewünschte: 172.31.39.10

David J. Liszewski
quelle
0

benutze ifconfigund suche den inetTeil der Ausgabe. Beachten Sie, dass bei mehr als einer Netzwerkkarte (z. B. Ethernet und WLAN) mehr als ein Eintrag vorhanden ist.

hvgotcodes
quelle