Getty Images/iStockphoto
8 Netzwerkaufgaben, die Sie schneller per CLI erledigen
Für Netzwerkaufgaben können Admins unter Linux, macOS und Windows die Kommandozeile nutzen. Automatisierung, Troubleshooting und Diensteverwaltung lassen sich dadurch optimieren.
Viele glauben, Linux sei kein modernes Betriebssystem, weil die Benutzer oft noch mit altmodischen Befehlen arbeiten. Aber Administratoren können viele Dinge, unter anderem Netzwerkaufgaben, per Befehls- beziehungsweise Kommandozeile (Command-line Interface, CLI) schneller erledigen als über eine grafische Benutzeroberfläche (GUI).
Die Arbeit per CLI bietet zahlreiche weitere Vorteile. Zum Beispiel verfügen die meisten Befehle über mehr Optionen oder Auswahlmöglichkeiten als ihre grafischen Pendants. Systeme wie Server können zudem von einer gewissen Leistungssteigerung profitieren, da sie keine GUI unterstützen müssen.
Der wichtigste Vorteil von CLI-Tools ist jedoch das Scripting. Es ist fast unmöglich, GUI-basierte Aufgaben zu scripten – denken Sie etwa daran, Mausbewegungen und -klicks zu automatisieren. Aber Sie können Befehle mit ihren Optionen und Argumenten in eine Textdatei schreiben und dann automatisch ausführen lassen. Dies ist eine wesentliche Funktion.
Darüber hinaus lassen sich in Befehlszeilenumgebungen die von den Kommandos zurückgelieferten Ergebnisse zur späteren Verwendung oder Analyse einfach in Dateien umleiten. Wenn Sie die unten aufgeführten Netzwerkbefehle ausführen, fügen Sie >> test.txt hinzu, um die Befehlsausgabe in eine Textdatei zu schreiben.
Wenn Sie zum Beispiel die IP-Adresse Ihres Windows-Systems überprüfen möchten, können Sie über mehrere Mausklicks und Fenster zur entsprechenden Stelle navigieren: Klicken Sie mit der rechten Maustaste auf Start / Netzwerkverbindungen / Ethernet, und wählen Sie dann die Netzwerkverbindung aus.
Um die IP-Adresse per CLI anzuzeigen, öffnen Sie ein Terminal über die Task-Leiste und geben ipconfig ein. Wenn Windows Server eine PowerShell-Konsole in der Task-Leiste anzeigt, gibt es möglicherweise eine Terminal-Verknüpfung auf Ihrem Desktop oder in Ihrer Task-Leiste.
Die CLI-Methode ist wesentlich schneller als vier oder mehr Mausklicks.
Die Tab-Vervollständigung und der Verlauf sind zwei der wichtigsten Funktionen der CLI. Netzwerkadministratoren, die schnell mit der CLI arbeiten möchten, sollten unbedingt lernen, diese Funktionen optimal zu nutzen.
In den Terminal-Umgebungen von Windows, Linux und macOS können Sie einen Teil eines Befehls-, Verzeichnis- oder Dateinamens eingeben und dann die Tabulatortaste (kurz: Tab) drücken, um die Zeichenfolge automatisch zu vervollständigen. Achten Sie darauf, so viel einzugeben, dass der Begriff eindeutig ist – oder drücken Sie zweimal Tab, um alle passenden Optionen zu sehen.
Die Terminals speichern außerdem die Befehle, die Sie eingegeben haben, und Linux sowie macOS schreiben diese in Dateien. Geben Sie den Befehl history ein, um die letzten Kommandos anzuzeigen. Verwenden Sie die Pfeiltasten nach oben und unten, um durch die Liste zu blättern. Manche Befehle wiederholen zudem bestimmte Kommandos, je nach Shell.
Dieser Artikel beschreibt gängige Netzwerkaufgaben, um die Sie sich wahrscheinlich regelmäßig auf Ihren Mac-, Linux- und Windows-Systemen kümmern und die Sie per CLI schneller erledigen können.
1. Hilfe aufrufen
Um sich mit der CLI vertraut zu machen, ist es wichtig zu lernen, wie man Hilfe erhält. Es ist schon schwierig genug, sich die vielen Befehle zu merken. Wenn dann noch diverse Optionen und Schalter hinzukommen, kann es noch komplizierter werden.
Auf Unix basierende Systeme wie Linux und macOS verwenden sogenannte Manpages (eine Sammlung von Hilfe- und Dokumentationsseiten) für die grundlegende Dokumentation. Diese Seiten bieten typischerweise eine kurze Erläuterung des Befehls, einige Beispiele und eine Liste der verfügbaren Optionen.
Um eine Manpage anzuzeigen, geben Sie man und den Namen des Befehls ein, wie im folgenden Beispiel:
man ifconfig
Windows-Befehle bieten eine ähnliche Funktionalität. Geben Sie /? nach einem Kommando ein, um eine Zusammenfassung, die Verwendung und Optionen anzuzeigen:
ipconfig /?
2. Netzwerkkonfigurationen anzeigen und testen
Einer der wichtigsten Schritte beim Netzwerk-Troubleshooting besteht darin, die IP-Adresse des Systems zu überprüfen. Falsch konfigurierte IP-Adressen sind häufig die Ursache für Probleme bei der Netzwerkkommunikation. Diese Aufgabe lässt sich auf Windows-, Linux- und macOS-Systemen fast immer schneller per CLI erledigen.
Geben Sie dazu auf einem Mac- oder einem älteren Linux-Rechner den folgenden Befehl ein:
Ifconfig
Auf einem neueren Linux-System geben Sie Folgendes ein:
ip addr
Auf einem Windows-Computer setzen Sie dieses Kommando ab:
ipconfig
Alle drei Befehle besitzen Optionen, um zusätzliche und detailliertere Informationen abzurufen, aber sie sind ein guter Anfang.
Der ipconfig-Befehl bietet viele nützliche Schalter.
Wenn Sie beispielsweise Probleme mit der IP-Adresse auf einem Windows-Rechner beheben wollen, könne Sie mit dem folgenden Befehl die IP-Adresse freigeben:
ipconfig /release
Wenn es sich bei dem System um einen DHCP-Client (Dynamic Host Configuration Protocol) handelt, beziehen Sie mit dem folgenden Kommando eine neue IP-Konfiguration vom DHCP-Server:
ipconfig /renew
Überprüfen Sie die Netzwerkkonnektivität mit dem folgenden Ping-Befehl:
ping 8.8.8.8
Sowohl Windows als auch Linux und macOS nutzen diesen Befehl. Beachten Sie, dass Windows standardmäßig vier Pings sendet, während Linux und macOS kontinuierlich Pings schicken, sofern Sie nichts anderes angeben.
Sie können die Konnektivität auch mit den folgenden PowerShell-Cmdlets testen:
Test-Connection 8.8.8.8
Test-Connection server01
Die folgende Tabelle enthält weitere Befehle für das Netzwerk-Troubleshooting.
Befehl | Erläuterung |
tracert 8.8.8.8 | Zeigt den Weg zu einem Zielrechner im Netzwerk unter Windows an. |
traceroute 8.8.8.8 | Zeigt den Weg zu einem Zielrechner im Netzwerk unter Linux und macOS an. |
pathping 8.8.8.8 | Zeigt die auf einem Weg verworfenen Pakete unter Windows an. |
mtr 8.8.8.8 | Zeigt die auf einem Weg verworfenen Pakete unter Linux und macOS (Homebrew und Installation erforderlich) an. |
Um den mtr-Befehl unter macOS nutzen zu können, müssen sie Homebrew installiert haben, hier ist eine Anleitung. Anschließen geben Sie diesen Befehl ein, um auch mtr zu installieren:
brew install mtr
Es ist nützlich, den Host-Namen des Systems anzuzeigen. Alle drei Plattformen unterstützen zu diesem Zweck den Befehl hostname.
3. Software installieren
Linux-Anwender verwalten Software häufig mit Paketmanagern per CLI, während Mac-Benutzer Homebrew verwenden. Diese Werkzeuge erleichtern die Installation von Software. Manchmal ist es effizienter, Software mit Paketmanagern über die CLI zu installieren.
Linux arbeitet je nach gewählter Distribution mit verschiedenen Paketmanagern. Sie können ein Tool wie Vim verwenden, um Netzwerkkonfigurationsdateien zu bearbeiten, etwa die Datei sshd_config, die die SSH-Sicherheitseinstellungen (Secure Shell) auf Linux-Servern regelt.
Die folgenden zwei Befehle werden häufig genutzt, um das Vim-Paket unter Linux zu installieren:
apt install vim
dnf install vim
Um ein Paket wie Neovim auf einem Mac mit Homebrew zu installieren, geben Sie Folgendes ein:
brew install neovim
Auf Windows-Systemen finden sich in der Regel keine CLI-Paketmanager. Bei Bedarf können Sie aber ein Tool wie winget oder Chocolatey nachrüsten.
Wenn auf Ihrem System winget installiert ist, verwenden Sie diesen Befehl:
winget install vim.vim
Paketmanager bieten viele Vorteile, beispielsweise die Automatisierung von Softwareinstallationen nach der Bereitstellung eines neuen Systems.
Mit der PowerShell lassen sich Windows-Komponenten einfach installieren. Wenn Sie zum Beispiel die Funktion Windows Server Backup auf Ihrem System hinzufügen wollen, geben Sie folgendes Kommando ein:
Install-WindowsFeature Windows-Server-Backup
Mit dem Uninstall-Befehl können Sie eine Komponente entfernen.
4. Systemverwaltung
Viele Aufgaben für das Netzwerkmanagement lassen sich einfacher per CLI durchführen. Sie können den Status von Prozessen überprüfen, sich abmelden, das System herunterfahren und Performance-Informationen erfassen.
Die Befehle in der nachstehenden Tabelle zeigen Prozesse an, die auf dem System laufen.
Befehl | Erläuterung |
netstat | Zeigt die aktuellen aktiven Verbindungen an. |
nslookup | Zeigt Informationen zur DNS-Namensauflösung an und ermöglicht ein Troubleshooting. |
ps | Zeigt Prozessstatistiken unter Linux und macOS an. |
tasklist | Zeigt Prozessinformationen unter Windows an. |
logoff | Meldet den aktuellen Benutzer unter Windows ab. |
shutdown -h now | Fährt Linux und macOS herunter. |
shutdown -r now | Startet Linux und macOS neu. |
shutdown /s | Fährt Windows herunter. |
shutdown /r | Startet Windows neu. |
Sie können feststellen, welche Netzwerkanwendungen oder -dienste die meiste CPU-Zeit und den meisten Speicher verbrauchen, indem Sie den Befehl top unter Linux und macOS verwenden. Mit dem Befehl q lässt sich top wieder beenden.
Sie können auch Details zu einem Windows-System abrufen. Dazu dient der Befehl systeminfo.
5. Dienste verwalten
Durch den Neustart eines Computers lassen sich zwar viele Probleme beheben, doch es kann sein, dass Sie nur einen bestimmten Netzwerkdienst neu starten müssen, der Probleme verursacht. Neustarts führen zu Downtime, was Serveradministratoren vermeiden sollten. Daher ist es eventuell besser, Dienste neu zu starten, um Probleme zu beheben oder Konfigurationen zu aktualisieren.
Um einen SSH-Serverdienst unter Linux neu zu starten, geben Sie das folgende Kommando ein:
systemctl restart sshd
Um per PowerShell den Status eines Dienstes anzuzeigen oder einen Windows-Dienst neu zu starten, nutzen Sie die folgenden Befehle (hier der DHCP-Server als Beispiel):
Get-Service -Name "Dhcp Server"
Restart-Service -Name "Dhcp Server"
6. Netzwerkkonfigurationsdateien bearbeiten
Texteditoren wie Vim sind nützlich, weil sich mit ihnen Konfigurationsdateien für Netzwerkdienste wie Apache, SSH und die Namensauflösung ändern lassen. Texteditoren ermöglichen ein schnelles und unkompliziertes Arbeiten mit einfachen Textdateien. Das klappt zwar meist auch problemlos mit Textverarbeitungsprogrammen wie Microsoft Word und LibreOffice Writer. Diese eignen sich allerdings nicht immer, wenn Sie Informationen eingeben möchten.
Sie sollten sich daher mit Editoren wie Vim und Nano vertraut machen und sie nutzen, um einfache Dokumente zu erstellen und Netzwerkkonfigurationsdateien zu bearbeiten.
7. Befehle können auch unterhaltsam sein
Wenn Sie mit den vorgestellten Netzwerkbefehlen auf einem oder mehreren Ihrer Systeme experimentiert haben, sieht Ihr Terminal-Fenster nun wahrscheinlich ziemlich unübersichtlich aus. Eines der hilfreichsten Kommandos ist der clear- beziehungsweise cls-Befehl, mit dem Sie den gesamten Bildschirminhalt löschen können.
Befehl | Erläuterung |
clear | Löscht die angezeigten Befehlsausgaben auf dem Bildschirm unter Linux und macOS – und funktioniert auch unter Windows. |
cls | Löscht die angezeigten Befehlsausgaben auf dem Bildschirm unter Windows. |
Hierbei wird der Befehlsverlauf nicht gelöscht, so dass Ihre vorherigen Befehle weiterhin verfügbar sind.
Auf vielen Linux- und macOS-Systemen benötigen Sie den Befehl sudo, um höhere Berechtigungen zu erhalten, die notwendig sind, um Netzwerkbefehle auszuführen. Sie können eine lustige Option in die Konfigurationsdatei sudoers einfügen, die Benutzer beleidigt, wenn sie das falsche Passwort eingeben.
Ergänzen Sie dazu die folgende Zeile in der sudoers-Datei. Sie können die Datei mit diesem visudo-Befehl bearbeiten:
Defaults insults
Speichern Sie Ihre Änderungen, und schließen Sie die Datei. Nun führen Sie einen sudo-Befehl aus und geben absichtlich ein falsches Kennwort ein.
8. Befehle über die GUI nutzen
Nicht jeder Administrator möchte Netzwerkaufgaben per CLI erledigen, und nicht alle Situationen eignen sich gleichermaßen. Trotzdem kann es auch für GUI-Nutzer sinnvoll sein, Befehle einzutippen.
Öffnen Sie einen Ordner im Windows-Terminal. Dann klicken Sie bei gedrückter Umschalttaste mit der rechten Maustaste in den Ordner. Das Kontextmenü bietet die Option, hier ein Befehlsfenster zu öffnen. Wechseln Sie zum Ordner C:\Windows\system32\drivers\etc, in dem sich die Datei für die Namensauflösung des Hosts befindet.
Eine andere Möglichkeit, einen Ordner in der Windows-CLI zu öffnen, besteht darin, im Windows-Explorer zum Ordner zu navigieren und ihn dann per Drag-and-Drop in das Terminal-Fenster zu ziehen.
Sie können mit einem einzigen Befehl eine Windows-Verwaltungskonsole, ein Systemsteuerungs-Applet oder einen Ordner öffnen. Drücken Sie die Windows-Taste + R, um den Ausführen-Dialog aufzurufen.
Die folgende Tabelle enthält Befehle, mit denen Sie netzwerkbasierte Konsolen öffnen können.
Befehl im Ausführen-Dialog | Erläuterung |
ncpa.cpl | Öffnet das Systemsteuerungs-Applet Netzwerkverbindungen. |
control firewall.cpl | Öffnet das Systemsteuerungs-Applet Windows Defender Firewall. |
compmgmt.msc | Öffnet das MMC-Snap-in Computerverwaltung. |
services.msc | Öffnet das MMC-Snap-in Dienste. |
dsa.msc | Öffnet das MMC-Snap-in Active Directory-Benutzer und -Computer auf einem Domänen-Controller. |
C:\Users\Administrator\Downloads | Öffnet den Downloads-Ordner des Administrators. |
Starten Sie den Server-Manager und klicken Sie anschließend nacheinander auf Extras und Dienste, um die Konsole zu öffnen. Auch hier geht es schneller, wenn Sie die Windows-Taste + R drücken und services.msc eingeben.
Fazit
Für Netzwerkadministratoren kann es sinnvoll sein, über die Befehlszeile zu arbeiten. Netzwerkaufgaben per CLI zu erledigen, bietet unter anderem folgende Vorteile:
- Skriptfähige Befehle: Sie können diese Befehle in Skripte integrieren, um Aufgaben zu automatisieren.
- Mehr Optionen: Eingabeaufforderungen ermöglichen fast immer mehr Optionen für Befehle als ihre GUI-Pendants. GUI-Tools unterstützen im Allgemeinen nur die gängigsten Optionen.
- Umleiten der Ausgabe in eine Datei: Mit dem Umleitungsoperator >> können Sie die Befehlsausgabe in eine Datei schreiben, was praktisch ist, wenn Sie die Informationen für spätere Referenzzwecke oder Analysen aufbewahren möchten.
- Schneller, da kein Wechsel des Eingabegeräts: Es ist zeitaufwendiger, erst zur Maus zu wechseln und damit zu navigieren, als direkt mit der Tastatur weiterzuarbeiten.
- Tab-Vervollständigung: Mit der Tab-Vervollständigung können Sie schneller arbeiten und Tippfehler reduzieren.
- Verlauf: Dank einer Verlaufsfunktion ist es einfacher, die letzten Befehle zu wiederholen.
Die CLI kann mit den zahlreichen Netzwerkbefehlen, die man sich merken muss, abschreckend wirken. Doch je intensiver Sie sich damit befassen, desto schneller werden Sie mit der Kommandozeile vertraut. Befehle lassen sich im Gegensatz zu Mausklicks scripten, was sie zu einem wichtigen Bestandteil von Automatisierungs- und Orchestrierungsprozessen macht.
Suchen Sie nach Möglichkeiten, das Terminal so anzupassen, dass es für Sie bequem und nützlich ist. Zum Beispiel lassen sich die Schriftgröße und die Hintergrundfarbe ändern. Es besteht zudem die Möglichkeit, lange Befehle mit Aliasen zu versehen, um sie sich leichter merken und eingeben zu können. Vergessen Sie nicht die Tab-Vervollständigung und den Verlauf.
Sie können Netzwerkaufgaben per CLI am besten bewältigen, indem Sie mit kleinen Schritten beginnen. Suchen Sie sich mehrere Netzwerkmanagementaufgaben, die Sie regelmäßig übernehmen, und notieren Sie sich die entsprechenden Befehle. Machen Sie es sich zur Gewohnheit, Ihre Aufgaben mithilfe der Befehle anstatt der Maus zu erledigen. Legen Sie eine Verknüpfung zum Terminal in der Task-Leiste oder dem Dock ab, damit Sie daran erinnert werden, sie zu verwenden. Je mehr Sie üben, desto nützlicher werden Sie die CLI empfinden.