Software

Die 10 wichtigsten Linux-Befehle für Netzwerk und Internet

Seine erste Berührung mit Informatik erfolgte an einem C64 samt Floppy VC 1541. Von Anfang an nutzte er diesen faszinierenden Heimcomputer nicht nur zum Daddeln, sondern auch für die Basic-Programmierung. Unter anderem half er seinen damals etwas müden Kopfrechnen-Fähigkeiten auf die Sprünge, indem er ein Programm schrieb, das immer zwei zufällig ausgewählte Zahlen zur Multiplikation stellte. Im Hintergrund lief ein Timer. Nur wenn er das Ergebnis innerhalb des vorgegebenen Zeitraums, der leider manchmal zu knapp bemessen war, richtig eintippte, bekam er einen Punkt gutgeschrieben. Seine Highscore-Ergebnisse waren durchwachsen, seine Programmierkenntnisse dafür umso besser. Der Lehrstuhl, an dem er als studentische Hilfskraft angestellt war, gehörte seinerzeit zu den Vorreitern in Sachen IT. Man übersetzte damals die griechischen Inschriften der antiken Stadt Hierapolis – heute ist dieses türkische Pamukkale bekannt durch seine Kalksinter-Terrassen. Die wissenschaftlich korrekt erfassten und kommentierten Inschriften bearbeiteten Dirscherl und Kollegen zunächst in Wordperfect. Anschließend landeten die Texte in einer Datenbank, die auf CD gepresst und für sündhaft viel Geld weltweit verkauft wurde. Über dieses epigraphische Datenbankprojekt, diverse C-Programmierereien auf Unix-Systemen und seine ersten Experimente mit Linux landete er schließlich professionell bei der IT. Seit den späten 1990-ern nutzt er Linux als Produktivsystem, seit Anfang der 2000-er Jahre ist Linux sein hauptsächliches OS. Nach vielen Jahren mit Suse Linux und Open Suse und zwischendurch Ausflügen zu Red Hat und Debian landete er bei Ubuntu und erledigt damit alle Arbeiten. Linux und C ist er bis heute treu geblieben – nach einem Ausflug zu PHP und MySQL. Mittlerweile bastelt er auch mit Arduino. Bei pcwelt.de betreut er vor allem Business-IT-Themen und hat den Auto & Technik-Bereich von Null beginnend aufgebaut. Seine Tests der Infotainmentsysteme in modernen Fahrzeugen gehören zu den ausführlichsten Tests, die man dazu überhaupt finden kann. Daneben schreibt er zudem fast täglich aktuelle Meldungen aus der IT-Welt.
Die zehn wichtigsten Linux-Befehle für Netzwerk und Internet. Damit finden Linux-Einsteiger und Umsteiger von Windows schnell die wichtigsten Informationen über die Konfiguration ihres Netzwerkzugangs und testen ihre Internetverbindung. Bequem von der Kommandozeile aus. Auf jedem Linux-System.
Foto: Profit Image - shutterstock.com

Linux ist von Anfang an für die Vernetzung mit anderen Rechnern geschaffen worden. Dementsprechend benötigen Sie auf einem Linux-Rechner keinesfalls eine Software mit einer grafischen Benutzeroberfläche, um sich die Netzwerk-Konfiguration anzusehen oder zu ändern oder um die Internetverbindung zu testen.

Natürlich gibt es hervorragende Desktops für Linux. Doch vieles lässt sich auf der Kommandozeile schneller erledigen. Zum Beispiel mit den zehn wichtigsten Linux-Befehlen für Netzwerk und Internet.
Natürlich gibt es hervorragende Desktops für Linux. Doch vieles lässt sich auf der Kommandozeile schneller erledigen. Zum Beispiel mit den zehn wichtigsten Linux-Befehlen für Netzwerk und Internet.

Linux stellt Ihnen stattdessen auf der Kommandozeile alle nötigen Befehle für die Netzwerk-Konfiguration zur Verfügung. Natürlich fällt es gerade Linux-Einsteigern, die von Windows kommen, anfangs leichter die notwendigen Einstellungen in Fenstermenüs vorzunehmen. Doch wenn man erst einmal die Anfangshürde genommen und sich mit den Shell-Befehlen von Linux vertraut gemacht hat, weiß man diese als schnelle und unkomplizierte Werkzeuge zu schätzen.

Die Shell-Befehle alias Kommandozeilen-Befehle haben zwei wesentliche Vorteile:

1. Sie stehen auf allen Linux-Systemen mit der gleichen Syntax zur Verfügung beziehungsweise lassen sich schnell mit Paketmanagementsystemen wie apt nachinstallieren. Unabhängig davon, welche Distribution Sie verwenden. Sie müssen sich also nicht mit den unterschiedlichen Konfigurations-Tools der diversen Desktop-Managern vertraut machen.

2. Sie können diese Befehle auch dann noch nutzen, wenn beispielsweise Ihr Desktop-Manager beschädigt ist und Sie keine grafische Benutzeroberfläche mehr starten können (was beispielsweise nach einem großen Update, das schief geht, der Fall sein kann. Oder wenn Sie eine neue Grafikkarte einbauen, für die Linux noch keine Treiber zur Verfügung hat).

Im professionellen Umfeld, also bei der Server-Administration, sind die Kommandozeilen-Befehle sogar der Standard-Weg zur Administration. Wer also die typischen Linux-Befehle für die Netzwerk-Konfiguration und die Überprüfung der Internetverbindung kennt, dem fällt der berufliche Einstieg hier leichter. Die eigentlichen Serverbefehle wie ssh oder das Starten des Apache-Webservers sowie Befehle aus dem Kontext Samba stellen wir in diesem Artikel aber nicht vor. Zudem beschränken wir uns darauf, die Grundfunktionen der einzelnen Befehle vorzustellen. Denn für die meisten Linux-Befehle gibt es viele Parameter und Optionen, die gerade Einsteiger schnell verwirren.

Hinweis 1: Die hier vorgestellten Linux-Befehle sollten auf allen Linux-Distributionen funktionieren; unsere Testbasis waren zwei Ubuntu-Notebooks. Gegebenenfalls müssen Sie das entsprechende Programmpaket über die Paketverwaltung Ihres Linux-Systems erst noch installieren. Das erledigen Sie auf Debian-basierten Linux-Distributionen wie zum Beispiel Ubuntu entweder direkt auf der Kommandozeile mit "apt" oder eben über das entsprechende Programm in ihrer Desktop-Oberfläche.

Hinweis 2: Die grundlegende Funktionsweise der Linux-Shell beziehungsweise Kommandozeile sollte Ihnen vertraut sein. Falls Sie noch nie einen Linux-Befehl eingetippt haben, sollten Sie zunächst diesen Artikel lesen: Die 10 wichtigsten Linux-Befehle für Einsteiger. Und danach hier wieder weiterlesen.

Und los geht es mit den zehn wichtigsten Befehlen für Netzwerk und Internet:

1. ifconfig: Netzwerkschnittstellen verwalten

Mit ifconfig informieren Sie sich schnell über alle vorhandenen Netzwerkschnittstellen und können diese bei Bedarf auch konfigurieren. Und zwar sowohl für Kabelnetzwerke (LAN) als auch Funk-Netzwerke (WLAN). Achtung: Verwechseln Sie die Syntax des Befehls nicht mit ipconfig - so lautet der entsprechende CMD-Befehl auf Windows-Rechnern.

ifconfig
ifconfig

Wenn Sie ifconfig -a eingeben, dann liefert Ihnen der Befehl die Konfigurationsdaten zu allen auf dem Linux-Rechner konfigurierten Schnittstellen. Mit ifconfig ohne Zusatz bekommen Sie nur die aktiven Schnittstellen angezeigt. Mit der Eingabe dieses Befehls prüfwen Sie auch gleich, ob das Linux-System den Netzwerkadapter überhaupt erkannt hat.

Das sind dann die LAN-Verbindung (als eth0 bezeichnet), das Loopback (lo) und die WLAN-Verbindung (wlan0). Sie sehen zu den LAN- und WLAN-Schnittstellen die Mac-Adressen ("Hardware Adresse") und die zugewiesenen IP- und IPv6-Adressen sowie Fehlerinformationen. Außerdem die Broadcast-Adresse und die Subnetzmaske.

Fehlt bei eth0 die IP-Adresse, dann funktioniert die Verbindung zum Router nicht. Sitzt das LAN-Kabel fest oder hat es einen Knick? Prüfen Sie das nach.

Über die Broadcast-Schnittstellen werden an alle weiteren Netzwerkadressen im lokalen Netzwerk Nachrichten versandt. Die Subnetzmaske dient dazu, um Netzwerkadresse und Rechneradresse in der IP-Adresse zu unterscheiden.

Steht "UP" bei einer Netzwerkschnittstelle, dann ist sie aktiviert, "BROADCAST" signalisiert, dass Broadcast-Meldungen entgegengenommen werden. "RUNNING" bedeutet, dass die Netzwerkschnittstelle vom Kernel erkannt wurde. "MULTICAST" wiederum zeigt an, dass Multicast-Meldungen entgegengenommen werden (also Meldungen an mehrere Empfänger - im Unterschied zu Broadcast an alle Empfänger). "MTU" gibt die maximale unfragmentierte Größe eines Datenpaketes an. Wichtig sind noch "RX" und "TX": Die Anzahl der empfangen und der gesendeten Datenpakete, jeweils mit Angabe der Fehler und verlorenen Pakete.

Die Loopback-Schnittstelle (IP-Adresse: 127.0.0.1) existiert nicht physisch, weshalb Ihnen ifconfig dafür auch keine Hardware-Adresse anzeigt. Bei Loopback handelt es sich um eine zum lokalen System zurückführende Schnittstelle. Alle darüber versendeten Daten werden wieder vom lokalen System empfangen. Lokal auf dem Linux-Rechner ablaufende Prozesse können damit via TCP/IP miteinander kommunizieren. Wollen Sie zum Beispiel Daten zur Loopback-Schnittstelle abrufen, dann tippen Sie ifconfig lo ein. Eine funktionierende Loopback-Adresse ist für eine funktionierende Netzwerkverbindung nötig.

Gibt man ifconfig zusammen mit einer einzelnen Netzwerkschnittstelle wie zum Beispiel eth0 an, dann kann man sich gezielt nur die Informationen dazu anzeigen lassen.

Zudem kann man mit ifconfig auch eine konkrete Netzwerkschnittstelle konfigurieren. Dazu gibt man neben der Bezeichnung der Schnittstelle, also zum Beispiel eth0, auch noch die erforderlichen Angaben wie IP-Adresse und Netzwerkmaske sowie Broadcastadresse an.

Tipp: Mit "ifconfig --help" können Sie sich alle möglichen Optionen anzeigen lassen.

Den Befehl ifconfig darf jeder Benutzer auf einem Linux-Rechner eintippen, sofern der Befehl nur zum Anzeigen der Informationen verwendet wird. Will man dagegen die Netzwerkschnittstelle konfigurieren, dann benötigt man Root-Rechte.

2. Ip addr: Netzwerkschnittstellen anzeigen

Mit ip addr lassen Sie sich ebenfalls schnell alle vorhandenen Netzwerkschnittstellen anzeigen und konfigurieren. Auch hier gilt - ebenso wie bei dem oben vorgestellten ifconfig - dass eth0 die erste LAN-Netzwerkkarte bezeichnet, lo das Loopback und wlan0 den ersten WLAN-Chip.

3. iwconfig: Alle WLAN-Daten ausgeben

Iwconfig entspricht grundsätzlich ifconfig, nur halt ausschließlich in Bezug auf WLAN-Verbindungen.

4. rfkill: Drahlose Schnittstellen abfragen, ein- und ausschalten

Mit rfkill schalten Sie drahtlose Schnittstellen wie Bluetooth und WLAN aber auch UMTS ein und aus. Damit senken Sie den Stromverbrauch, was besonders bei Notebooks wichtig ist. Und vermeiden zudem unnötige Sicherheitslücken.

Wir haben mit rfkill Bluetooth und Wlan ein- und dann wieder ausgeschaltet. Als wir den Screenshot auf unserem Tuxedo-Notebook erstellt haben, war WLAN aktiv und Bluetooth inaktiv.
Wir haben mit rfkill Bluetooth und Wlan ein- und dann wieder ausgeschaltet. Als wir den Screenshot auf unserem Tuxedo-Notebook erstellt haben, war WLAN aktiv und Bluetooth inaktiv.

Rfkill list zeigt den Zustand aller drahtlosen Schnittstellen des Linux-Rechners an. Und zwar aufgetrennt danach, ob die betreffende Schnittstelle soft blocked oder hard blocked ausgeschaltet ist (oder eingeschaltet ist).

Mit "soft blocked" ist das Abschalten per Kommandobefehl rfkill gemeint. Rfkill block 0 schaltet zum Beispiel das WLAN ab, wenn der WLAN-Adapter in rfkill list mit 0 gekennzeichnet ist. Rfkill unblock 0 schaltet das WLAN wieder ein. Auf dem Screenshot oben demonstrieren wir das Ein- und Auschalten der WLAN- und Bluetooth-Apdater.

"Hard blocked" dagegen meint das Abschalten über den am Notebook angebrachten physischen WLAN-Schalter. "Hard blocked" übertrumpft immer "soft blocked".

5. Ping: Netzwerkverbindung prüfen

Zu den Klassikern der Netzwerkbefehle unter Linux (und auch Windows) gehört ping (Paket Internet Groper). Dieser Befehl gehört zum Internet Control Message Protocol (ICMP). ICMP wird für die Übertragung von kurzen Nachrichten verwendet, in erster Linie handelt es sich dabei um Status- und Fehlerinformationen.

Ping geben Sie ein, wenn Sie schnell prüfen wollen, a) ob Ihr Rechner überhaupt eine Verbindung zum Internet herstellen kann. Und b) Sie überprüfen damit die Verfügbarkeit einer Webseite. Diese Anfrage nennt man Echo Request. Der angepingte Host antwortet, wenn er erreichbar ist, mit einem Echo Reply. Wenn die Verbindung einwandfrei funktioniert, sollten Sie eine Ausgabe bekommen, die anzeigt, ob von der angepingten Website Datenpakete als Antwort erhalten wurden.

ping
ping

Zu a) Netzwerkverbindung prüfen

Geben Sie ping und die URL einer bekannten Webseite ein, von der Sie annehmen dürfen, dass sie verfügbar ist. Zum Beispiel ping www.google.de. Der Befehl Ping schickt dann so genannte ICMP-Echo-Request-Pakete an die besagte Internatadresse. Sofern die Verbindung zum Internet funktioniert, liefert Ihnen die Ausgabe die IP-Adresse zur URL. Und Sie sehen, wie Sie Datenpakete (ICMP-Echo-Response-Paketen) von der angepingten Webseite empfangen und wie lange diese benötigen. Außerdem sehen Sie, ob Pakete verloren gehen. Mit STRG+C brechen Sie die fortlaufende Ausgabe ab.

Die Angabe "Zeit/time" in der Ausgabe des Ping-Befehls sagt, wie lange die 32 Bytes großen Datenpakete und deren Antwort benötigen. Je kleiner die Zahl, desto besser. TTL (Time-To-Live) gibt die Anzahl der Zwischenstationen (Hops) an, die das Datenpaket zwischen Absender und Empfänger benötigt. Dieser Wert wird immer um 1 pro Router/Gerät reduziert, wobei ein Wert wie 64 zum Start vorgegeben ist. Die Ping-Statistik sollte keine verlorenen Datenpakate aufweisen. Sind die Antwortzeiten okay und gehen keine Pakete verloren, dann passt alles.

Funktioniert ping dagegen nicht oder es kommt die Meldung "unknown host" oder eine Zeitüberschreitung, dann stimmt etwas mit ihrer Internetverbindung nicht oder die angepingte Website ist nicht verfügbar.

In diesem Fall sollten Sie prüfen, ob Sie Ihr Gateway anpingen können. Die Adresse des Gateways ermitteln Sie mit dem route- beziehungsweise netstat-Befehl (siehe unten). Wenn das Anpingen des Gateways auch nicht klappt, so haben Sie keine Verbindung von Client zum Gateway. Prüfen sie also die Verkabelung beziehungsweise ob eine WLAN-Verbindung zum Router besteht und ob die Konfigurationen ihrer Clientrechner und des Gateways in Ordnung sind.

Antwortet aber das Gateway, dann könnte vielleicht die Namensauflösung nicht funktionieren. Oder aber die angepingte Webseite ist offline. Probieren Sie dann eine andere bekannte Webseite aus.

Sie können mit ping auch Ihren lokalen Host prüfen indem Sie die Loopback-Adresse anpingen: ping localhost oder ping 127.0.0.1. Kommt daraufhin die korrekte Antwort, ist IP auf dem Host einwandfrei installiert, was eine Voraussetzung für eine funktionierende Internetverbindung ist. Das Testen des Loopback garantiert aber noch nicht, dass Sie auch ins Internet können, weil durch den Ping auf localhost beispielsweise keine Aussage über Ihr Gateway getroffen wird. Pingen Sie dafür wieder die IP-Adresse Ihres Gateways an. Ist dieses erreichbar, funktioniert zumindest die Verbindung zwischen PC und Gateway.

Standardmäßig liefert ping auf einem Linuxsystem eine fortlaufende Ausgabe, die Sie mit STRG+C abbrechen können (auf Windows-Rechnern wird nach vier Zeilen abgebrochen). Indem Sie bei ping den Zusatz "-c 3" anfügen, liefert die Ausgabe nur drei Zeilen. Sie sparen sich dann das Abbrechen der Ausgabe mit STRG+c.

b) Verfügbarkeit einer Webseite prüfen

Funktioniert genauso wie a.