Der einfachste Weg, um meine IP-Adresse anzuzeigen?


62

Wie kann ich nach dem Hochfahren am einfachsten die IP-Adresse ermitteln und anzeigen, die das Gerät derzeit verwendet?
Ich verwende Raspbian und ifconfigscheine nicht installiert zu sein.

Gibt es Widgets, die diese Informationen in LXDE anzeigen?


4
Es ist wahrscheinlich installiert; Sie müssen sudo ifconfig unter Debian ausführen.
Alex Chamberlain

Das merke ich jetzt. Ich glaube, ich wurde von Ubuntus Befehlszeilen-Hinweisen verwöhnt. Ich werde es überprüfen, wenn ich es wieder einschalte.
Zoot

Das ist eher eine Bash-Sache als eine Ubuntu-Sache. Ich denke, dass ifconfig nur mit unterschiedlichen Berechtigungen installiert wird.
Alex Chamberlain

1
Ja, ich habe Sudo vergessen. ifconfig ist standardmäßig installiert, es wird jedoch ein Fehler angezeigt, der nicht gefunden wurde, wenn Sie es nicht sudo. Vielen Dank!
Zoot

Mein Raspbian zeigt die IP-Adresse kurz vor der Anmeldeaufforderung an.
Thorbjørn Ravn Andersen

Antworten:


65

Die if-Toolfamilie, einschließlich ifconfig, wird veraltet und durch die neueren ip-Befehle ersetzt, sodass Sie über die Befehlszeile eine der folgenden Optionen verwenden können, um Ihre IP-Adresse zu ermitteln:

sudo ip addr show

oder

sudo hostname --ip-address

oder wenn Sie immer noch ifconfig verwenden möchten und es noch nicht installiert ist

sudo apt-get install wireless-tools
sudo ifconfig -a

1
@jackweirdy das sind die neueren tools die die alten if tools ersetzen. Probieren Sie man ip für einige zusätzliche Details.
Steve Robillard

1
Prost dafür, heute etwas Neues gelernt :)
Jackweirdy

Gibt es einen "arp" -Befehl, der Ihnen etwas in der Zeile der IP-Adresse anzeigt?
Piotr Kula

4
ip aist ausreichend, wenn Sie die IP-Adresse erhalten möchten :)
Der Hochstapler

3
Keiner der Anzeigebefehle benötigt tatsächlich sudo-Berechtigungen. Dies ist wahrscheinlich auf einen Nebeneffekt zurückzuführen, wenn Sie den Pfad auf include / sbin setzen. Sie können wie gewohnt /sbin/ifconfigoder /sbin/ipals beliebiger Benutzer ausgeführt werden.
XTL

12

Sie können auch dieses kleine Python-Skript verwenden.

import socket

def get_local_ip_address(target):
  ipaddr = ''
  try:
    s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
    s.connect((target, 8000))
    ipaddr = s.getsockname()[0]
    s.close()
  except:
    pass

  return ipaddr
print "Raspberry Pi - Local IP Address"
print(get_local_ip_address('10.0.1.1'))
print(get_local_ip_address('google.com'))

9
Ein bisschen übertrieben, meinst du nicht auch? Es macht nicht viel Sinn, die vorhandenen Linux-Befehle zu ersetzen, die dasselbe erreichen.
Jivings

2
@Jivings Ein bisschen hart - es ist eine Antwort, die funktioniert! (Sage ich ohne zu testen ...) Es könnte zum Beispiel die Basis eines Widgets auf einem Desktop sein.
Alex Chamberlain

1
@Bryan Willkommen bei Stack Exchange und Raspberry Pi!
Alex Chamberlain

1
@AlexChamberlain Entschuldigung Bryan. Hatte heute Morgen noch keinen Kaffee
getrunken

1
Dies könnte sogar zu dem Nachrichtendienst hinzugefügt werden, der nach der Anmeldung ausgeführt wird, um die IP-Adresse automatisch neben der startx-Nachricht anzuzeigen. Dann wäre automatisch keine Eingabe erforderlich.
Steve Robillard

8

Als Alternative zum Ermitteln der DHCP-zugewiesenen IP-Adresse habe ich meinem Router / DHCP-Server eine reservierte IP-Adresse hinzugefügt. Es stimmt mit der MAC-Adresse des Raspi überein und weist immer die gleiche IP-Adresse zu - auch nach einer Neuinstallation des Betriebssystems.

Da Wheezy jetzt standardmäßig SSH aktiviert hat, kann ich mich bei einem frisch installierten Raspberry Pi anmelden, ohne jemals eine Tastatur oder einen Monitor anschließen zu müssen.

Entschuldigung, dass Sie die Frage nicht direkt beantwortet haben, aber es schien eng genug zu sein, um darauf hinzuweisen.


Wenn es Leuten hilft, einfache Wege zu finden, um die IP zu bestimmen, bin ich alles dafür.
Zoot

7

Möglicherweise können Sie den DHCP-Status / die DHCP-Protokolle auf Ihrem DHCP-Server überprüfen. Vor allem, wenn es sich in Ihrem Heimnetzwerk befindet. Auf allen Routern, die ich besessen habe, war dies ziemlich leicht zu finden.

Dies ist hilfreich, wenn Sie kopflos arbeiten und nur die Adresse kennen möchten, an die ssh gesendet werden soll.


@gnibbler +1 für die Behebung des Problems für diejenigen, die kopflos laufen. Es kann schwierig sein, festzustellen, welches Gerät der Pi ist, da er sich nicht immer über das Netzwerk identifiziert und daher möglicherweise ohne Namen in der Liste der angeschlossenen Geräte angezeigt wird. Dieser Thread raspberrypi.org/phpBB3/viewtopic.php?f=36&t=6998 hat mehr über das Problem und die Lösung
Steve Robillard

@SteveRobillard, Mine hat sich zu identifizieren, aber es kann auch jemand helfen , wenn sie eine MAC - Adresse beginnt wie sehen b8:27:eb:xx:xx:xx, es ist wahrscheinlich eine RPi :)
John La Rooy

5

Was hat bei mir funktioniert:

sudo ifconfig

da ifconfigwar beisbin/ifconfig


Obwohl ich Ihre Antwort sehr schätze, enthalten der Kommentar von Alex Chamberlain und die Antwort von Steve Robillard bereits diese Informationen.
Zoot

5

Wenn Sie Ihre externe IP-Adresse sehen möchten, verwenden Sie diese in Ihrer Befehlszeile

curl http://ipecho.net/plain ; Echo;

Sie könnten eine Funktion erstellen, um es einfacher zu machen.

Bearbeiten Sie Ihre .bashrc-Datei und fügen Sie am Ende der Datei die folgende Funktion hinzu.

Funktion zur Anzeige der externen IP-Adresse

Funktion zur Anzeige der externen IP-Adresse

Aufruf Ihrer Funktion von cli

Bildbeschreibung hier eingeben

Weitere interessante Möglichkeiten zum Abrufen Ihrer IP-Adresse finden Sie unter diesem Link

http://www.if-not-true-then-false.com/2010/linux-get-ip-address/


5
$ host raspberrypi
raspberrypi has address 192.168.1.20

$ host raspberrypi | grep ‘address’ | cut -d’ ‘ -f4
192.168.1.20

$ nslookup 192.168.1.20
Server:  192.168.1.1
Address:    192.168.1.1#53
20.1.168.192.in-addr.arpa   name = raspberrypi.

$ nslookup 192.168.1.20 | grep ‘=’ | cut -d’ ‘ -f3
raspberrypi

2

Shea Silverman und Jacob Bates haben kürzlich ein Tool namens PIP erstellt , mit dem Sie die IP-Adresse Ihres Himbeer-Pi abrufen können, ohne sie an einen Bildschirm anzuhängen, da es ein Skript installiert, das Ihre IP-Adresse an einen Server sendet, den Sie mit Ihrem besuchen können Haupt-PC. Es ist vielleicht nicht die beste Option in jeder Situation, aber es ist ein sehr kluger Hack.


2

Babyskript zur Rückgabe der IP-Adresse, funktioniert an einer Eingabeaufforderung:

IP-Adressliste | grep inet | grep -v 127.0.0 | cut -d "" -f 6 | cut -d "/" -f 1


1

Ich schlage vor, dass Sie Bonjour verwenden, anstatt die IP-Adresse zu suchen. Lassen Sie die Zuweisung über DHCP erfolgen. Solange sich Ihr PC im selben Netzwerk befindet, können Sie über den Namen darauf zugreifen.

Zum Beispiel .. raspberrypi.local

Sobald dies eingerichtet ist, können Sie völlig kopflos laufen, mit SSH oder VNC usw. eine Verbindung zum Pi herstellen.

In diesem Artikel wird die Einrichtung für Bonjour erläutert. http://www.raspberrypi.org/forums/viewtopic.php?f=66&t=18207

Beachten Sie, dass Sie für einen Windows-Computer den Bonjour-Druckerdiensttreiber installieren müssen, eine winzige Sache ...

Für Mac und Ubuntu ist Bonjour bereits da.


0

Der Grund, warum Sie ifconfig möglicherweise nicht haben, ist, dass Ihr System möglicherweise stattdessen die iproute2-Suite verwendet. iproute2 enthält aktualisierte Entsprechungen der alten ifconfig- und route-Suites.

Ich erwähne dies, weil Sie, wenn Sie anfangen, Befehle auszuprobieren, die Sie von ifconfig oder route gewohnt sind, zunächst diese alten Pakete installieren müssen, anstatt nur das neuere Äquivalent zu verwenden. Wenn Sie beispielsweise netstat verwenden und feststellen müssen, dass es fehlt, suchen Sie einfach nach "iproute2 netstat equivalent", und Sie sollten den Befehl "ss" finden. Weitere Informationen und Dokumentation finden Sie im Artikel der Linux Foundation: http://www.linuxfoundation.org/collaborate/workgroups/networking/iproute2


1
Ich freue mich über Ihre Antwort, habe aber ifconfig installiert. Ich habe gerade vergessen, vor dem Befehl sudo. Schauen Sie sich die Kommentare unter der Antwort an.
Zoot

1
Doh! Ich benutze nur Arch und seit einiger Zeit wird ifconfig nicht mehr verwendet.
Codey

Kein Problem. Es warf mich auch für eine Schleife.
Zoot

Sie müssen nicht sudo für ifconfig verwenden, sondern müssen nur den gesamten Pfad aufrufen, da er sich derzeit nicht in Ihrem $ PATH befindet. whereis ifconfig gibt bei Bedarf den Pfad an. dann können Sie es von dort ausführen. Sudo ist nicht die Antwort !.
djsmiley2k - CoW

0

Ich habe verschiedene Antworten gesehen. einige kannte ich und einige kannte ich nicht. Es gibt auch eine, die ich immer benutze und die noch nicht aufgeführt ist. Wenn ja und ich habe es verpasst, tut mir leid.

sudo Hostname -I


0

Ein Liner mit ifconfig und sed:

sudo ifconfig wlan0 | sed -En -e 's/.*inet ([0-9.]+).*/\1/p'

Ersetzen Sie wlan0 durch die gewünschte Schnittstelle.


-1
curl ipinfo.io 

funktioniert für mich auf Ubuntu und Raspbian


Nur zur Verdeutlichung für diejenigen, die sich dessen möglicherweise nicht bewusst sind: Diese spezielle Antwort gibt die externe (mit dem Internet verbundene) IP-Adresse des LAN-Routers oder der Firewall an, auf der sich der Raspberry Pi befindet. Es wird nicht die spezifische LAN-IP-Adresse des Pi selbst angegeben. Dies kann bei der Fehlerbehebung im Internet hilfreich sein. Lesen Sie die anderen Antworten in dieser Frage, um die lokale LAN-IP-Adresse zu ermitteln, nach der gefragt wurde.
MrChips

-2

Ich glaube, arp -aentweder auf Windows oder Linux wäre die einfachste, sobald Ihr Pi mit dem Netzwerk verbunden ist.


2
Mir scheint, das gibt Adressen anderer Systeme, nicht Ihrer eigenen. Beachten Sie auch, man arpbeginnt derzeit "Dieses Programm ist veraltet."
Goldlöckchen

-3

Ich weiß nicht über LXDE. Um Ihre IP-Adresse Ihres Geräts zu erfahren, besuchen Sie die Website Ip-Details.com . Hier geben sie auch den IP-Standort, die ISP-Adresse, das Land usw. an.


3
Dies liefert nur eine externe IP, nicht Ihre interne IP.
Zoot
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.