IP-Adresse unter Linux anzeigen und ändern: Befehle für Ubuntu, Debian und Raspberry Pi

Aktualisiert am

Kurz gesagt

Unter Linux zeigt der Befehl ip addr (kurz ip a, nur IPv4: ip -4 addr) im Terminal die lokale IP-Adresse jeder Netzwerkschnittstelle. Sie steht hinter „inet“, zum Beispiel 192.168.178.23/24. Nur die Adressen gibt hostname -I aus. Die öffentliche IP-Adresse Ihres Anschlusses zeigen beide Befehle nicht; sie steht in der Box auf dieser Seite.

Auf dieser Seite

Am schnellsten zeigt Linux die IP-Adresse im Terminal: ip addr listet alle Netzwerkschnittstellen mit ihren Adressen, hostname -I nur die Adressen. Unter GNOME steht sie auch in den Einstellungen. Diese Anleitung erklärt die Ausgabe, die Besonderheiten von Ubuntu Server, Debian und Raspberry Pi OS und das Ändern der Adresse. Für andere Geräte gibt es die Übersicht IP-Adresse finden auf jedem Gerät.

IP-Adresse im Linux-Terminal anzeigen: die wichtigsten Befehle

Öffnen Sie ein Terminal, unter Ubuntu mit Strg + Alt + T. Keiner dieser Befehle braucht Root-Rechte.

BefehlWas er zeigtHinweis
ip addr oder ip aalle Schnittstellen mit IPv4- und IPv6-AdressenStandard, Paket iproute2
ip -br aeine Zeile pro Schnittstelle: Name, Status, Adressenfür den schnellen Blick
ip -4 addrnur IPv4-Adressenip -6 addr für IPv6
hostname -Inur die Adressen, ohne Loopback und Link-Localpraktisch in Skripten
ip route show defaultStandardgateway, also die Router-Adresse–
nmclialle Verbindungen von NetworkManagerDesktops, Raspberry Pi OS
ifconfigSchnittstellen und Adressenveraltet, Paket net-tools

Alle diese Befehle zeigen die lokale (private) IP-Adresse Ihres Rechners im Heimnetz. Die öffentliche Adresse, mit der Sie im Internet auftreten, ermitteln Sie anders (siehe unten). Den Unterschied erklärt die Seite Was ist eine IP-Adresse?.

Die Ausgabe von ip addr verstehen

Terminal
ip addr

So sieht die Ausgabe auf einem Laptop mit WLAN, ungenutzter LAN-Buchse und Docker aus:

Text
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host noprefixroute
       valid_lft forever preferred_lft forever
2: enp3s0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc fq_codel state DOWN group default qlen 1000
    link/ether 00:00:5e:00:53:01 brd ff:ff:ff:ff:ff:ff
3: wlp2s0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default qlen 1000
    link/ether 00:00:5e:00:53:02 brd ff:ff:ff:ff:ff:ff
    inet 192.168.178.23/24 brd 192.168.178.255 scope global dynamic noprefixroute wlp2s0
       valid_lft 863912sec preferred_lft 863912sec
    inet6 2001:db8:4d2:7a00:5c1e:9b3f:2a6d:81c4/64 scope global temporary dynamic
       valid_lft 7055sec preferred_lft 3455sec
    inet6 fe80::7d1a:3c2b:9e4f:1a2b/64 scope link noprefixroute
       valid_lft forever preferred_lft forever
4: docker0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc noqueue state DOWN group default
    link/ether 00:00:5e:00:53:03 brd ff:ff:ff:ff:ff:ff
    inet 172.17.0.1/16 brd 172.17.255.255 scope global docker0
       valid_lft forever preferred_lft forever

So lesen Sie die Einträge:

  • inet ist die IPv4-Adresse, im Beispiel 192.168.178.23 bei wlp2s0. /24 ist die Netzmaske in Kurzform (255.255.255.0).
  • inet6 ist eine IPv6-Adresse; oft hat eine Schnittstelle mehrere. Mehr dazu auf der Seite IPv6-Adresse.
  • scope global gilt über den Rechner hinaus, scope link nur im direkt angeschlossenen Netz (fe80::…), scope host nur auf dem Rechner selbst.
  • dynamic steht bei Adressen mit begrenzter Gültigkeit, etwa vom DHCP-Server des Routers. Die Restlaufzeit in Sekunden zeigt valid_lft; eine fest eingetragene Adresse hat dort forever.
  • temporary kennzeichnet eine IPv6-Adresse, die das System für ausgehende Verbindungen regelmäßig wechselt.
  • state UP heißt: Die Schnittstelle ist aktiv. NO-CARRIER und state DOWN bedeuten kein Kabel oder keine Verbindung.
  • link/ether ist die MAC-Adresse der Netzwerkkarte, keine IP-Adresse.

Welche Schnittstelle was ist, verrät der Name:

NameBedeutung
loLoopback, immer 127.0.0.1, nur innerhalb des Rechners
eth0, enp3s0, eno1LAN (Ethernet); enp…/eno… sind vorhersagbare Namen nach Steckplatz
wlan0, wlp2s0WLAN
docker0, br-…, veth…virtuelle Netze von Docker, nicht Ihr Heimnetz
wg0, tun0VPN-Tunnel

Ihre Adresse im Heimnetz ist die inet-Adresse der aktiven LAN- oder WLAN-Schnittstelle. Alle Optionen beschreibt die Manpage ip-address(8).

Kurze Ausgabe: ip -br a, ip -4 addr und hostname -I

Mit -c färbt ip die Ausgabe zusätzlich ein.

Terminal
ip -br a
# lo               UNKNOWN        127.0.0.1/8 ::1/128
# enp3s0           DOWN
# wlp2s0           UP             192.168.178.23/24 2001:db8:4d2:7a00:5c1e:9b3f:2a6d:81c4/64 fe80::7d1a:3c2b:9e4f:1a2b/64
# docker0          DOWN           172.17.0.1/16

hostname -I
# 192.168.178.23 172.17.0.1 2001:db8:4d2:7a00:5c1e:9b3f:2a6d:81c4

hostname -I lässt Loopback und Link-Local-Adressen weg, zeigt aber auch Adressen von Docker oder VPN. Die Reihenfolge ist laut Handbuch nicht festgelegt. Brauchen Sie in einem Skript genau eine Adresse, fragen Sie die Schnittstelle gezielt ab:

Terminal
ip -4 -o addr show dev wlp2s0 scope global | awk '{print $4}'
# 192.168.178.23/24

Standardgateway anzeigen mit ip route

Terminal
ip route show default
# default via 192.168.178.1 dev wlp2s0 proto dhcp src 192.168.178.23 metric 600

Die Adresse hinter via ist Ihr Router, im Beispiel eine FRITZ!Box. Wie Sie sich dort anmelden, zeigt die Anleitung Router-IP-Adresse finden.

IP-Adresse mit nmcli anzeigen (NetworkManager)

Auf Desktops und unter Raspberry Pi OS verwaltet NetworkManager das Netz. nmcli ohne weitere Angaben zeigt jede Schnittstelle mit Status und der Adresse in der Zeile inet4. Gezielt geht es so:

Terminal
nmcli -g IP4.ADDRESS device show wlp2s0
# 192.168.178.23/24

nmcli device show ohne Schnittstellennamen listet alle Geräte mit Feldern wie IP4.ADDRESS[1], IP4.GATEWAY und IP4.DNS[1].

ifconfig: veraltet, aber noch verbreitet

ifconfig gehört zum Paket net-tools, das nicht mehr weiterentwickelt wird, und fehlt auf vielen aktuellen Systemen (nachinstallieren: sudo apt install net-tools). Die IPv4-Adresse steht hinter inet, die Netzmaske hinter netmask. Verwenden Sie besser ip.

IP-Adresse grafisch anzeigen: Ubuntu, Debian und KDE

Unter Ubuntu 26.04 LTS und 24.04 LTS sowie Debian mit GNOME:

  1. Drücken Sie die Super-Taste (Windows-Taste), tippen Sie „Einstellungen“ und öffnen Sie die App Einstellungen.
  2. Klicken Sie in der Seitenleiste auf Netzwerk (Kabelverbindung) oder WLAN.
  3. Klicken Sie neben der aktiven Verbindung auf das Zahnrad.
  4. Lesen Sie im ersten Reiter (Informationen, unter Debian Details) die Adresse bei IPv4-Adresse ab. Darunter stehen IPv6-Adresse, Geräteadresse (MAC-Adresse), Vorgabestrecke (der Router) und DNS. Debian übersetzt die beiden mittleren Zeilen als Hardware-Adresse und Vorgaberoute.

In KDE Plasma, etwa unter Kubuntu, klicken Sie in der Kontrollleiste auf das Netzwerk-Symbol und klappen die aktive Verbindung auf. Der Reiter Details zeigt die IPv4-Adresse.

Ubuntu, Ubuntu Server, Debian und Raspberry Pi OS: was sich unterscheidet

ip addr funktioniert überall gleich. Verschieden ist die Software, die das Netz verwaltet; sie bestimmt, wie Sie eine Adresse dauerhaft ändern.

SystemNetzwerkverwaltungIP anzeigenIP dauerhaft ändern
Ubuntu Desktop 24.04/26.04 LTSNetworkManagerip a, EinstellungenEinstellungen oder nmcli
Ubuntu ServerNetplan mit systemd-networkdip a, netplan statusYAML-Datei in /etc/netplan/
Debian mit DesktopNetworkManagerip a, EinstellungenEinstellungen oder nmcli
Debian ohne Desktopmeist ifupdownip a/etc/network/interfaces
Raspberry Pi OS (Bookworm, Trixie)NetworkManagerhostname -I, Netzwerk-Symbolnmcli oder nmtui

Raspberry Pi OS nutzt seit Bookworm NetworkManager statt dhcpcd. Ältere Anleitungen, die eine feste Adresse in /etc/dhcpcd.conf eintragen, gelten dafür nicht mehr. Neuere Trixie-Images legen die Konfiguration zusätzlich über Netplan an; nmcli funktioniert weiterhin.

Raspberry Pi: IP-Adresse herausfinden

Direkt am Raspberry Pi:

  • Im Terminal zeigt hostname -I die Adresse.
  • Auf dem Desktop zeigen Sie mit der Maus auf das Netzwerk-Symbol oben rechts in der Taskleiste. Der Hinweis nennt Netzwerk und IP-Adresse.
  • Ohne Desktop steht die Adresse in den letzten Meldungen vor der Anmeldung.

Ohne Bildschirm, von einem anderen Rechner im selben Netz:

Terminal
ping raspberrypi.local

Die Antwort enthält die IP-Adresse; bei einem anderen Hostnamen als raspberrypi setzen Sie diesen ein. Alternativ suchen Sie den Pi in der Geräteliste Ihres Routers. Weitere Wege beschreibt die Raspberry-Pi-Dokumentation.

Öffentliche IP-Adresse unter Linux anzeigen

Im Internet treten alle Geräte Ihres Heimnetzes mit der öffentlichen IP-Adresse des Routers auf. Diese Adresse und ihren ungefähren Standort sehen Sie hier:

Ihre öffentliche IP-Adresse

216.73.216.128

Standort
Columbus, Ohio, Vereinigte Staaten
Provider
Anthropic, PBC (AS16509)
Zeitzone
America/New_York (UTC−4)
Koordinaten
39.96, -83.00

Diese Adresse sehen Websites. Der Standort ist eine Schätzung und kann um eine Stadt oder mehr abweichen. Die lokale IP Ihres Geräts (oft 192.168.x.x) ist eine andere und gilt nur in Ihrem Netzwerk.

Ist ein VPN aktiv, zeigt die Box die Adresse des VPN-Servers. Im Terminal fragen Sie die öffentliche IPv4-Adresse per DNS ab (dig steckt im Paket dnsutils):

Terminal
dig -4 +short myip.opendns.com @resolver1.opendns.com
# 203.0.113.25

Die Option -4 ist wichtig, wenn Ihr Anschluss IPv6 hat: Ohne sie fragt dig OpenDNS womöglich über IPv6, bekommt dann keine IPv4-Adresse zurück und gibt nichts aus.

Standort, Provider und Zeitzone dazu liefert die IP-Lookup-API per curl. Legen Sie Ihren API-Schlüssel in der Umgebungsvariablen IPLOOKUPAPI_KEY ab. Ohne den Parameter ip antwortet die API für die Adresse, von der die Anfrage kommt. Zum Auswerten dient jq (sudo apt install jq).

Terminal
# nur die öffentliche IP-Adresse
curl -s -H "apikey: $IPLOOKUPAPI_KEY" \
  "https://api.iplookupapi.com/v1/info?fields=ip" | jq -r '.data.ip'
# 203.0.113.25

# mit Ort, Land, Provider und Zeitzone
curl -s -H "apikey: $IPLOOKUPAPI_KEY" \
  "https://api.iplookupapi.com/v1/info?language=de" |
  jq -r '.data | "\(.ip) | \(.location.city.name_translated), \(.location.country.name_translated) | \(.connection.isp) | \(.timezone.id)"'
# 203.0.113.25 | Hamburg, Deutschland | Beispiel-Provider | Europe/Berlin

Den Schlüssel erhalten Sie kostenlos mit einer Registrierung; der Free-Plan umfasst 150 Anfragen im Monat. Eine beliebige andere Adresse prüfen Sie ohne Terminal mit dem Tool IP-Adresse orten.

IP-Adresse unter Linux ändern

Meist vergibt der Router die Adresse per DHCP. Eine feste Adresse brauchen etwa ein Server oder ein Raspberry Pi, den Sie immer unter derselben Adresse erreichen wollen. Wählen Sie eine freie Adresse außerhalb des DHCP-Bereichs Ihres Routers.

Tipp

Einfacher ist oft eine DHCP-Reservierung im Router: Er gibt dem Gerät dann immer dieselbe Adresse, und am Linux-Rechner bleibt alles auf automatisch. Auch die Raspberry-Pi-Dokumentation empfiehlt diesen Weg. Vor- und Nachteile erklärt die Seite statische IP-Adresse.

Achtung

Ändern Sie die Adresse eines entfernten Rechners per SSH, kann die Verbindung abbrechen, sobald die neue Adresse gilt. Prüfen Sie Adresse, Netzmaske und Gateway vorher und halten Sie einen anderen Zugang bereit, etwa eine Konsole beim Hoster.

Vorübergehend mit ip addr add

Terminal
sudo ip addr add 192.168.178.60/24 dev enp3s0   # Adresse hinzufügen
sudo ip addr del 192.168.178.60/24 dev enp3s0   # Adresse wieder entfernen

Die Adresse kommt zur bestehenden hinzu, gilt sofort und ist nach einem Neustart wieder weg. Das eignet sich für Tests, etwa um ein Gerät mit fester Werksadresse einzurichten.

Dauerhaft mit NetworkManager: Ubuntu Desktop, Debian Desktop, Raspberry Pi OS

In den GNOME-Einstellungen:

  1. Öffnen Sie Einstellungen > Netzwerk oder WLAN und klicken Sie neben der Verbindung auf das Zahnrad.
  2. Wählen Sie den Reiter IPv4 und stellen Sie die IPv4-Methode auf Manuell.
  3. Tragen Sie Adresse, Netzmaske und Gateway ein, etwa 192.168.178.50, 255.255.255.0 und 192.168.178.1.
  4. Schalten Sie bei DNS die Option Automatisch aus und tragen Sie einen DNS-Server ein, zum Beispiel die Adresse Ihres Routers.
  5. Klicken Sie auf Anwenden. Trennen Sie die Verbindung und verbinden Sie sich neu, damit die Adresse gilt.

Im Terminal, etwa auf einem Raspberry Pi ohne Desktop, nutzen Sie nmcli. Lassen Sie sich zuerst die Namen der Verbindungen anzeigen. Kabelverbindungen heißen je nach Systemsprache etwa „Kabelgebundene Verbindung 1“ oder „Wired connection 1“, WLAN-Verbindungen meist wie das Netz.

Terminal
nmcli connection show

sudo nmcli connection modify "Kabelgebundene Verbindung 1" \
  ipv4.method manual \
  ipv4.addresses 192.168.178.50/24 \
  ipv4.gateway 192.168.178.1 \
  ipv4.dns 192.168.178.1

sudo nmcli connection up "Kabelgebundene Verbindung 1"

Zurück zur automatischen Adresse:

Terminal
sudo nmcli connection modify "Kabelgebundene Verbindung 1" \
  ipv4.method auto ipv4.addresses "" ipv4.gateway "" ipv4.dns ""
sudo nmcli connection up "Kabelgebundene Verbindung 1"

Mit Menüs statt Befehlen arbeiten Sie in sudo nmtui.

Dauerhaft mit Netplan: Ubuntu Server

  1. Lassen Sie sich mit ls /etc/netplan/ die vorhandenen Dateien anzeigen, etwa 50-cloud-init.yaml.
  2. Öffnen Sie die Datei mit sudo nano /etc/netplan/50-cloud-init.yaml und ersetzen Sie den DHCP-Eintrag Ihrer Schnittstelle durch feste Werte:
YAML
network:
  version: 2
  ethernets:
    enp1s0:
      dhcp4: false
      addresses:
        - 192.168.178.50/24
      routes:
        - to: default
          via: 192.168.178.1
      nameservers:
        addresses: [192.168.178.1]
  1. Speichern Sie mit Strg + O und schließen Sie nano mit Strg + X.
  2. Testen Sie die Konfiguration mit sudo netplan try. Bestätigen Sie mit der Eingabetaste, sonst stellt Netplan nach 120 Sekunden den alten Zustand wieder her.
  3. Prüfen Sie das Ergebnis mit ip a oder netplan status.

YAML rückt mit Leerzeichen ein, nicht mit Tabs. Warnt Netplan vor zu offenen Dateirechten, hilft sudo chmod 600 mit dem Dateinamen. Eine von cloud-init erzeugte Datei kann beim Neustart überschrieben werden; wie Sie das abschalten, steht im Kommentar am Dateianfang. Weitere Beispiele zeigt die Netplan-Dokumentation.

Dauerhaft mit /etc/network/interfaces: Debian ohne NetworkManager

Auf Debian-Servern ohne Desktop steht die Konfiguration meist in /etc/network/interfaces. Ändern Sie dort (sudo nano /etc/network/interfaces) bei Ihrer Schnittstelle dhcp in static und ergänzen Sie Adresse und Gateway:

Text
allow-hotplug enp1s0
iface enp1s0 inet static
    address 192.168.178.50/24
    gateway 192.168.178.1

Übernehmen Sie die Änderung mit einem Neustart oder mit sudo systemctl restart networking. Den DNS-Server tragen Sie in /etc/resolv.conf ein, etwa als nameserver 192.168.178.1.

Alle Geräte und IP-Adressen im Netzwerk anzeigen

ip neigh zeigt die Geräte im lokalen Netz, mit denen Ihr Rechner zuletzt Daten ausgetauscht hat:

Terminal
ip neigh
# 192.168.178.1 dev wlp2s0 lladdr 00:00:5e:00:53:10 REACHABLE
# 192.168.178.40 dev wlp2s0 lladdr 00:00:5e:00:53:11 STALE

Geräte ohne Kontakt zu Ihrem Rechner fehlen. Alle verbundenen Geräte zeigt die Geräteübersicht Ihres Routers, bei der FRITZ!Box unter Heimnetz > Netzwerk; den Zugang erklärt die Anleitung zur Router-IP-Adresse. Das Werkzeug nmap kann ein Subnetz mit einem Ping-Scan (Option -sn) nach antwortenden Geräten durchsuchen. Nutzen Sie solche Scans nur in Ihrem eigenen Netz oder mit Erlaubnis des Betreibers.

Häufige Fragen

Wie finde ich meine IP-Adresse in Linux?

Öffnen Sie ein Terminal und geben Sie ip addr ein. Die lokale IPv4-Adresse steht bei Ihrer aktiven Schnittstelle (etwa wlp2s0 oder eth0) hinter „inet“, zum Beispiel 192.168.178.23/24. Ohne Terminal finden Sie sie unter GNOME in den Einstellungen bei Netzwerk oder WLAN über das Zahnrad neben der aktiven Verbindung. Die öffentliche IP-Adresse Ihres Anschlusses zeigen diese Wege nicht.

Mit welchem Befehl zeige ich unter Linux die IP-Adresse an?

Der Standardbefehl ist ip addr aus dem Paket iproute2, kurz ip a. Eine kompakte Übersicht mit einer Zeile pro Schnittstelle liefert ip -br a, nur die Adressen ohne Schnittstellennamen hostname -I. Der ältere Befehl ifconfig gehört zum Paket net-tools und ist auf vielen aktuellen Distributionen nicht mehr vorinstalliert.

Wie kann ich alle IP-Adressen in meinem Linux-Netzwerk anzeigen lassen?

Der Befehl ip neigh listet die Geräte im lokalen Netz, mit denen Ihr Rechner zuletzt Daten ausgetauscht hat, mit IP- und MAC-Adresse. Eine vollständige Liste aller verbundenen Geräte zeigt die Geräteübersicht Ihres Routers. Das Werkzeug nmap kann ein Subnetz mit einem Ping-Scan durchsuchen; verwenden Sie es nur in Ihrem eigenen Netz.

Wie finde ich die IP-Adresse meines Raspberry Pi heraus?

Am Raspberry Pi selbst zeigt hostname -I im Terminal die Adresse. Auf dem Desktop zeigen Sie mit der Maus auf das Netzwerk-Symbol in der Taskleiste. Von einem anderen Rechner aus antwortet ein Raspberry Pi mit dem Standard-Hostnamen auf ping raspberrypi.local. Ansonsten steht er mit seiner Adresse in der Geräteliste Ihres Routers.

Wie ändere ich die IP-Adresse unter Ubuntu dauerhaft?

Auf Ubuntu Desktop stellen Sie in den Einstellungen bei der Verbindung im Reiter IPv4 die IPv4-Methode auf Manuell oder nutzen nmcli connection modify. Auf Ubuntu Server tragen Sie Adresse, Gateway und DNS in eine YAML-Datei unter /etc/netplan/ ein und übernehmen sie mit sudo netplan try oder sudo netplan apply. Einfacher und ohne Konflikte ist meist eine feste Zuweisung per DHCP-Reservierung im Router.

Warum zeigt ip addr nicht meine öffentliche IP-Adresse?

Hinter einem Router hat Ihr Linux-Rechner nur eine private Adresse aus dem Heimnetz, etwa 192.168.x.x. Die öffentliche Adresse gehört dem Router, der Ihren Anschluss mit dem Internet verbindet. Sie ermitteln sie im Terminal zum Beispiel mit dig -4 +short myip.opendns.com @resolver1.opendns.com oder mit einer Abfrage an einen Dienst im Internet.

IP-Adressen im eigenen Code abfragen

iplookupapi liefert Standort, Provider, Zeitzone und Sicherheitskennzeichen jeder IP-Adresse als JSON. Der kostenlose Plan enthält 150 Anfragen pro Monat.

curl "https://api.iplookupapi.com/v1/info?ip=8.8.8.8" \
  -H "apikey: YOUR_API_KEY"