Einführung
In diesem Lab lernen Sie, wie Sie wichtige Netzwerkadressinformationen auf einem Linux-System mithilfe des modernen und leistungsstarken Befehls ip a identifizieren. Das Hauptziel ist es, sicher im Umgang mit der Untersuchung von Netzwerkschnittstellen zu werden und spezifische Details innerhalb der Befehlsausgabe zu lokalisieren, einschließlich MAC-Adressen, IPv4-Adressen und IPv6-Adressen.
Sie beginnen mit der Ausführung des Befehls ip a, um einen umfassenden Überblick über alle Netzwerkschnittstellen zu erhalten, wie z. B. die Loopback-Schnittstelle (lo) und die primäre Ethernet-Schnittstelle (eth0). Anschließend lernen Sie, die detaillierte Ausgabe zu analysieren, um die Zeile link/ether für die MAC-Adresse, die Zeile inet für die IPv4-Adresse und die Zeile inet6 für die IPv6-Adresse zu finden. Damit festigen Sie Ihr Verständnis für die grundlegende Netzwerkanalyse unter Linux.
Alle Netzwerkschnittstelleninformationen mit ip a anzeigen
In diesem Schritt lernen Sie, wie Sie den Befehl ip verwenden, das moderne und bevorzugte Werkzeug zum Anzeigen und Verwalten von Netzwerkschnittstellen, IP-Adressen und Routen auf Linux-Systemen. Wir beginnen mit dem grundlegendsten Befehl, um Informationen über alle verfügbaren Netzwerkschnittstellen anzuzeigen.
Der Befehl ip a ist eine Abkürzung für ip address show. Er bietet einen umfassenden Überblick über die Netzwerkkonfiguration Ihres Systems.
Stellen Sie zunächst sicher, dass Sie sich im Terminal befinden. Ihr Standardpfad ist ~/project. Führen Sie nun den Befehl ip a aus, um alle Netzwerkschnittstellen und die zugehörigen Adressen aufzulisten.
ip a
Sie sehen eine detaillierte Ausgabe, in der alle Netzwerkschnittstellen aufgeführt sind. Normalerweise sehen Sie mehrere Schnittstellen:
lo: Dies ist die Loopback-Schnittstelle, eine virtuelle Netzwerkschnittstelle, die das System zur Kommunikation mit sich selbst verwendet. Sie hat immer die IP-Adresse127.0.0.1.eth0(oder ein ähnlicher Name wieenp0s5): Dies ist Ihre primäre Ethernet-Schnittstelle, die Ihr System mit dem externen Netzwerk verbindet. Beachten Sie diealtname-Felder, die alternative Namen für die Schnittstelle bereitstellen.docker0: Wenn Docker installiert ist, sehen Sie möglicherweise einedocker0-Schnittstelle; dies ist eine virtuelle Bridge, die von Docker für die Container-Vernetzung erstellt wurde.
Ihre Ausgabe sieht ähnlich aus wie im folgenden Beispiel, wobei die spezifischen Namen und Adressen abweichen können.
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
valid_lft forever preferred_lft forever
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000
link/ether 00:16:3e:0e:d8:3c brd ff:ff:ff:ff:ff:ff
altname enp0s5
altname ens5
inet 172.16.50.202/24 metric 100 brd 172.16.50.255 scope global dynamic eth0
valid_lft 1892159975sec preferred_lft 1892159975sec
inet6 fe80::216:3eff:fe0e:d83c/64 scope link
valid_lft forever preferred_lft forever
3: docker0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc noqueue state DOWN group default
link/ether 02:42:60:7e:6f:bc 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
Nehmen Sie sich einen Moment Zeit, um die Ausgabe zu untersuchen. In den folgenden Schritten werden wir diese Informationen aufschlüsseln, um spezifische Details wie die MAC-Adresse und die IP-Adressen zu identifizieren.
Die MAC-Adresse finden (link/ether)
In diesem Schritt lernen Sie, die Media Access Control (MAC)-Adresse aus der Ausgabe des Befehls ip a zu identifizieren. Die MAC-Adresse ist ein eindeutiger Identifikator auf Hardware-Ebene, der einer Netzwerkschnittstellenkarte (NIC) zugewiesen ist. Sie wird auch als physische Adresse bezeichnet und als 12-stellige hexadezimale Zahl dargestellt.
Im vorherigen Schritt haben Sie ip a ausgeführt und viele Informationen erhalten. Konzentrieren wir uns nun darauf, die MAC-Adresse zu finden. Suchen Sie nach Ihrer primären Netzwerkschnittstelle, die normalerweise eth0 heißt. Die MAC-Adresse befindet sich in der Zeile, die mit link/ether beginnt.
Um dies zu vereinfachen, können Sie die Ausgabe von ip a an den Befehl grep weiterleiten, um nur die Zeile mit der MAC-Adresse zu filtern. Das Pipe-Symbol | nimmt die Ausgabe des Befehls auf der linken Seite und verwendet sie als Eingabe für den Befehl auf der rechten Seite.
Führen Sie den folgenden Befehl in Ihrem Terminal aus:
ip a | grep "link/ether"
Dieser Befehl zeigt nur die Zeilen aus der ip a-Ausgabe an, die die Zeichenfolge "link/ether" enthalten.
Sie erhalten eine deutlich kürzere Ausgabe, wodurch die MAC-Adressen leicht zu erkennen sind. Die 12 hexadezimalen Zeichen, die durch Doppelpunkte getrennt sind, sind die MAC-Adressen.
link/ether 00:16:3e:0e:d8:3c brd ff:ff:ff:ff:ff:ff
link/ether 02:42:60:7e:6f:bc brd ff:ff:ff:ff:ff:ff
Die Loopback-Schnittstelle lo hat keine herkömmliche MAC-Adresse und erscheint daher nicht in dieser gefilterten Ausgabe. Die Adresse 00:16:3e:0e:d8:3c ist in diesem Beispiel die MAC-Adresse für die eth0-Schnittstelle. Ihre Adresse wird anders sein, folgt aber demselben Format.
Die IPv4-Adresse finden (inet)
In diesem Schritt lokalisieren Sie die Internet Protocol Version 4 (IPv4)-Adresse. Im Gegensatz zur physischen MAC-Adresse ist eine IP-Adresse eine logische Adresse, die Ihrem Gerät für die Kommunikation in einem Netzwerk zugewiesen wird. IPv4-Adressen sind das gebräuchlichste Format und werden durch vier durch Punkte getrennte Zahlen dargestellt (z. B. 192.168.1.10).
Innerhalb der Ausgabe des Befehls ip a finden Sie die IPv4-Adresse in der Zeile, die mit inet beginnt. Wir können den Befehl grep erneut verwenden, um die Ausgabe zu filtern, genau wie wir es bei der MAC-Adresse getan haben. Um zu vermeiden, dass inet6 mit einbezogen wird, ist es eine gute Praxis, ein Leerzeichen nach inet in Ihrem Suchmuster einzufügen.
Führen Sie den folgenden Befehl in Ihrem Terminal aus, um alle auf Ihrem System konfigurierten IPv4-Adressen zu finden:
ip a | grep "inet "
Der Befehl filtert die Ausgabe so, dass nur die Zeilen mit IPv4-Adressen angezeigt werden. Normalerweise sehen Sie mehrere: eine für die Loopback-Schnittstelle (lo), eine für Ihre Hauptnetzwerkschnittstelle (eth0) und möglicherweise weitere wie docker0.
inet 127.0.0.1/8 scope host lo
inet 172.16.50.202/24 metric 100 brd 172.16.50.255 scope global dynamic eth0
inet 172.17.0.1/16 brd 172.17.255.255 scope global docker0
Aus dieser Ausgabe können Sie mehrere IPv4-Adressen identifizieren:
127.0.0.1: Dies ist die Loopback-Adresse, die das System zur Kommunikation mit sich selbst verwendet.172.16.50.202/24: Dies ist die primäre IPv4-Adresse für dieeth0-Schnittstelle, die für die Kommunikation mit anderen Geräten im Netzwerk verwendet wird. Das/24ist die CIDR-Notation, die die Subnetzmaske für das Netzwerk definiert. Ihre Adresse wird anders sein.172.17.0.1/16: Dies ist die IPv4-Adresse für diedocker0-Bridge.
Die IPv6-Adresse finden (inet6)
In diesem letzten Schritt identifizieren Sie die Internet Protocol Version 6 (IPv6)-Adresse. IPv6 ist der Nachfolger von IPv4 und wurde entwickelt, um die absehbare Erschöpfung der IPv4-Adressen zu beheben. IPv6-Adressen sind 128 Bit lang und werden in hexadezimaler Notation geschrieben, getrennt durch Doppelpunkte (z. B. 2001:0db8:85a3:0000:0000:8a2e:0370:7334).
Genau wie bei IPv4 zeigt der Befehl ip a auch IPv6-Informationen an. Die Zeile mit einer IPv6-Adresse ist deutlich mit inet6 gekennzeichnet. Wir verwenden grep ein letztes Mal, um diese Informationen zu isolieren.
Führen Sie den folgenden Befehl in Ihrem Terminal aus, um alle IPv6-Adressen auf Ihrem System zu finden:
ip a | grep "inet6"
Dieser Befehl zeigt die Zeilen mit IPv6-Adressen für Ihre Schnittstellen an.
inet6 ::1/128 scope host
inet6 fe80::216:3eff:fe0e:d83c/64 scope link
Aus dieser Ausgabe können Sie zwei IPv6-Adressen identifizieren:
::1/128: Dies ist das komprimierte Format für die IPv6-Loopback-Adresse, äquivalent zu127.0.0.1in IPv4.fe80::216:3eff:fe0e:d83c/64: Dies ist eine Link-Local-IPv6-Adresse für dieeth0-Schnittstelle. Link-Local-Adressen werden automatisch auf allen IPv6-fähigen Schnittstellen konfiguriert und dienen nur der Kommunikation innerhalb desselben lokalen Netzwerksegments. Ihre Adresse wird anders sein.
Herzlichen Glückwunsch! Sie haben nun gelernt, wie Sie den Befehl ip a verwenden, um die MAC-Adresse, IPv4-Adresse und IPv6-Adresse auf einem Linux-System zu identifizieren.
Zusammenfassung
In diesem Lab haben Sie gelernt, wie Sie den Befehl ip a verwenden, um Netzwerkadressen unter Linux zu identifizieren. Sie haben ip a, ein modernes und bevorzugtes Werkzeug für die Netzwerkkonfiguration, ausgeführt, um umfassende Informationen über alle Netzwerkschnittstellen anzuzeigen. Die Ausgabe enthüllte Details sowohl für die Loopback-Schnittstelle (lo) als auch für die primäre Ethernet-Schnittstelle (eth0) und bot einen vollständigen Überblick über die Netzwerkeinrichtung des Systems.
Durch die Untersuchung der Ausgabe des Befehls ip a haben Sie gelernt, spezifische Netzwerkidentifikatoren zu lokalisieren. Sie haben erfolgreich die MAC-Adresse identifiziert, die in der mit link/ether gekennzeichneten Zeile zu finden ist. Darüber hinaus haben Sie die IPv4-Adresse des Systems neben dem Label inet und die IPv6-Adresse neben dem Label inet6 gefunden und damit die grundlegende Fähigkeit erworben, wichtige Netzwerkadressinformationen auf einem Linux-System abzurufen.



