Difference between revisions of "Kommandozeilenwerkzeuge"

From
Jump to: navigation, search
(Mini-Spickzettel)
(ip)
Line 1: Line 1:
 
== Kommandozeilenwerkzeuge ==
 
== Kommandozeilenwerkzeuge ==
  
=== ip ===
 
 
= Linux: ip (iproute2) Spickzettel =
 
= Linux: ip (iproute2) Spickzettel =
  

Revision as of 12:11, 15 January 2026

Kommandozeilenwerkzeuge

Linux: ip (iproute2) Spickzettel

Hinweis: Der Befehl ip ersetzt alte Tools wie ifconfig, route, arp & Co. und unterstützt sowohl IPv4 als auch IPv6. Änderungen sind **nicht persistent** – für dauerhafte Konfigurationen z. B. NetworkManager, systemd-networkd oder /etc/network/interfaces nutzen.

Allgemeine Syntax

ip [OPTIONEN] OBJEKT BEFEHL

Typische Objekte:

  • addr (a) → IP-Adressen
  • link (l) → Interfaces
  • route (r) → Routing
  • neigh (n) → ARP / Neighbor
  • rule → Policy Routing

---

Interfaces (Link-Ebene)

Aktion Befehl Beschreibung
Alle Interfaces anzeigen ip link show
ip l
Zeigt alle Netzwerkinterfaces.
Einzelnes Interface anzeigen ip link show eth0 Details zu einem Interface.
Interface aktivieren / deaktivieren ip link set eth0 up
ip link set eth0 down
Interface hoch- oder runterfahren.
MTU setzen ip link set eth0 mtu 1500 Maximum Transmission Unit ändern.
MAC-Adresse ändern ip link set eth0 address aa:bb:cc:dd:ee:ff MAC-Adresse anpassen.

---

IP-Adressen (Layer 3)

Aktion Befehl Beschreibung
IP-Adressen anzeigen ip addr show
ip a
Zeigt alle IP-Adressen eines Hosts.
IP-Adresse hinzufügen ip addr add 192.168.1.10/24 dev eth0 Neue IP-Adresse einem Interface zuweisen.
IP-Adresse löschen ip addr del 192.168.1.10/24 dev eth0 IP-Adresse entfernen.
Nur IPv4 / IPv6 ip -4 addr
ip -6 addr
Filtert nach IP-Version.

---

Routing

Aktion Befehl Beschreibung
Routing-Tabelle anzeigen ip route show
ip r
Zeigt alle Routen.
Default-Gateway setzen ip route add default via 192.168.1.1 Standard-Gateway festlegen.
Route zu Netzwerk hinzufügen ip route add 10.0.0.0/24 via 192.168.1.254 Neue Route eintragen.
Route löschen ip route del 10.0.0.0/24 Route entfernen.

---

ARP / Neighbor-Tabelle

Aktion Befehl Beschreibung
Nachbarn anzeigen ip neigh show
ip n
Zeigt ARP / Neighbor-Tabelle.
ARP-Eintrag hinzufügen ip neigh add 192.168.1.20 lladdr aa:bb:cc:dd:ee:ff dev eth0 Statischen ARP-Eintrag setzen.
ARP-Eintrag löschen ip neigh del 192.168.1.20 dev eth0 ARP-Eintrag entfernen.
ARP-Cache leeren ip neigh flush all Alle Einträge löschen.

---

Policy Routing

Aktion Befehl Beschreibung
Routing-Regeln anzeigen ip rule show Zeigt Policy Routing Regeln.
Regel hinzufügen ip rule add from 192.168.2.0/24 table 100 Neue Regel definieren.
Tabelle anzeigen ip route show table 100 Routen der Tabelle 100 anzeigen.

---

Netzwerk-Namespaces

Aktion Befehl Beschreibung
Namespaces anzeigen ip netns list Alle vorhandenen Network Namespaces.
Namespace erstellen ip netns add testns Neuen Namespace erstellen.
Befehl im Namespace ausführen ip netns exec testns ip addr IP-Adressen innerhalb eines Namespace prüfen.

---

Monitoring & Debugging

Aktion Befehl Beschreibung
Link-Status live beobachten ip monitor Zeigt alle Änderungen in Echtzeit.
Nur Adress-Änderungen beobachten ip monitor addr Live-Überwachung von IP-Adressen.

---

Häufige Kurzformen

Langform Kurz
ip addr ip a
ip link ip l
ip route ip r
ip neigh ip n

---

Vergleich zu alten Befehlen

Alt Neu
ifconfig ip addr, ip link
route ip route
arp ip neigh
brctl ip link

---

Mini-Spickzettel

  • ip a – Adressen
  • ip l – Interfaces
  • ip r – Routing
  • ip n – ARP / Neighbor
  • ip monitor – Live-Events

oben


ifconfig

ifconfig gehört zum veralteten Paket net-tools. 
Es wird durch ip (iproute2) ersetzt. 

### Interfaces anzeigen
Alle aktiven Interfaces
ifconfig

Alle Interfaces (auch inaktive)
ifconfig -a

### Einzelnes Interface anzeigen
ifconfig eth0

### Interface aktivieren / deaktivieren
Aktivieren
ifconfig eth0 up

Deaktivieren
ifconfig eth0 down

### IP-Adresse setzen (IPv4)
IP-Adresse zuweisen
ifconfig eth0 192.168.1.10

Mit Netzmaske
ifconfig eth0 192.168.1.10 netmask 255.255.255.0

Mit Broadcast-Adresse
ifconfig eth0 192.168.1.10 netmask 255.255.255.0 broadcast 192.168.1.255


!!! Nicht persistent – gilt nur bis zum Neustart oder Interface-Reset.

### MAC-Adresse ändern
MAC-Adresse setzen
ifconfig eth0 hw ether aa:bb:cc:dd:ee:ff
(Oft muss das Interface vorher down sein)


### MTU setzen
ifconfig eth0 mtu 1500


### Promiscuous Mode
Aktivieren
ifconfig eth0 promisc

Deaktivieren
ifconfig eth0 -promisc


### Statistik anzeigen
ifconfig eth0


### Loopback konfigurieren (selten nötig)
ifconfig lo 127.0.0.1 up



### Moderne Entsprechung (empfohlen)
ifconfig	                ip
ifconfig	                ip addr show
ifconfig -a	                ip link show
ifconfig eth0 up	        ip link set eth0 up
ifconfig eth0 down	        ip link set eth0 down
ifconfig eth0 192.168.1.10	ip addr add 192.168.1.10/24 dev eth0
ifconfig eth0 mtu 1500	        ip link set eth0 mtu 1500



### Empfehlung 

Nur zum Lesen / Legacy: ifconfig

Aktiv konfigurieren: ip

Skripte neu schreiben: iproute2

oben


tcpdump

Standard-Werkzeug zur Paketmitschnitt-Analyse

### Grundsyntax
tcpdump [OPTIONEN] [FILTER]

### Interfaces & Basisoptionen
Verfügbare Interfaces anzeigen
tcpdump -D

Auf bestimmtem Interface mitschneiden
tcpdump -i eth0

Alle Interfaces (Linux)
tcpdump -i any

Ohne Namensauflösung (empfohlen)
tcpdump -n

MAC-Adressen anzeigen
tcpdump -e


### Ausgabe steuern
Mehr Details (Verbose)
tcpdump -v
tcpdump -vv
tcpdump -vvv

Nur Header, kein Payload
tcpdump -q

Paketinhalt anzeigen (ASCII / HEX)
tcpdump -A      # ASCII
tcpdump -X      # HEX + ASCII

Paketlänge begrenzen (Snaplen)
tcpdump -s 96


### Paketanzahl & Laufzeit
Anzahl begrenzen
tcpdump -c 100

Zeitstempel anzeigen
tcpdump -tttt


### Mitschnitt in Datei (pcap)
In Datei schreiben
tcpdump -w capture.pcap

Aus Datei lesen
tcpdump -r capture.pcap

Rotierende Dateien
tcpdump -w dump.pcap -G 60 -W 10


### Klassische Filter (BPF)
Nach Protokoll
tcpdump tcp
tcpdump udp
tcpdump icmp
tcpdump arp

Nach Host
tcpdump host 192.168.1.10
tcpdump src host 192.168.1.10
tcpdump dst host 192.168.1.10

Nach Port
tcpdump port 80
tcpdump tcp port 443

Nach Netz
tcpdump net 192.168.1.0/24


### Kombinierte Filter
AND / OR / NOT
tcpdump tcp and port 22
tcpdump host 192.168.1.10 and not port 22
tcpdump tcp port 80 or port 443


### TCP-spezifische Filter
SYN-Pakete
tcpdump 'tcp[tcpflags] & tcp-syn != 0'

SYN ohne ACK (Verbindungsaufbau)
tcpdump 'tcp[tcpflags] & tcp-syn != 0 and tcp[tcpflags] & tcp-ack == 0'

RST-Pakete
tcpdump 'tcp[tcpflags] & tcp-rst != 0'


### Typische Praxisbeispiele 
„Kommt Traffic an?“
tcpdump -i eth0 -n icmp

HTTP-Traffic sehen
tcpdump -i eth0 -n tcp port 80

DNS-Abfragen debuggen
tcpdump -i eth0 -n udp port 53

ARP-Probleme analysieren
tcpdump -i eth0 -n -e arp


### Performance & Sicherheit
Nur erste Pakete ansehen
tcpdump -c 20

Payload komplett mitschneiden
tcpdump -s 0

Root vermeiden (Capabilities)
sudo setcap cap_net_raw,cap_net_admin=eip $(which tcpdump)


### Häufige Stolperfallen 

Ohne -n → langsame DNS-Lookups

Große Mitschnitte ohne -c / -G

-s 0 erzeugt sehr große Dateien

Traffic auf lo nicht vergessen


### Mini-Spickzettel 🧾
tcpdump -i eth0 -n
tcpdump -i any icmp
tcpdump -w file.pcap
tcpdump -r file.pcap
tcpdump tcp port 443

ping

Aktion Befehl Beschreibung
Einfacher Ping zu einer IP ping 8.8.8.8 Sendet ICMP Echo Requests an die IP-Adresse 8.8.8.8, läuft unendlich, bis mit Ctrl+C gestoppt.
Ping mit begrenzter Anzahl von Paketen ping -c 4 8.8.8.8 Sendet nur 4 Pakete und beendet automatisch.
Ping mit definierter Paketgröße ping -s 100 8.8.8.8 Sendet Pakete mit 100 Bytes Payload.
Ping mit Timeout ping -w 5 8.8.8.8 Beendet Ping nach 5 Sekunden.
Ping mit definierter Intervalldauer ping -i 2 8.8.8.8 Sendet alle 2 Sekunden ein Paket.
Ping an einen Hostnamen ping www.example.com Löst den Hostnamen in eine IP-Adresse auf und pingt diese.
Ping nur einmal ping -c 1 8.8.8.8 Sendet ein einzelnes Ping-Paket, praktisch für Skripte.
Ping über IPv6 ping6 google.com Ping über IPv6-Adressen.
Ping ohne Namensauflösung ping -n 8.8.8.8 Zeigt nur IP-Adressen, keine Hostnamen.
Ping im Quiet Mode ping -q 8.8.8.8 Zeigt nur die Statistik am Ende.
Ping mit Zeitstempel ping -D 8.8.8.8 Zeigt Zeitstempel für jedes Paket.


oben


termshark

Termshark ist im Grunde ein Terminal-basiertes Wireshark für Linux, 
das auf tshark aufsetzt, aber mit einer interaktiven TUI (Text User Interface) arbeitet. 
Damit kann man Netzwerkpakete live mitschneiden, filtern und analysieren, 
ohne eine grafische Oberfläche zu brauchen.


### Starten von Termshark
Live Capture auf Interface
termshark -i eth0


-i → Interface

Listet beim Start alle verfügbaren Interfaces auf, wenn keines angegeben ist.

Aus pcap-Datei öffnen
termshark -r capture.pcap


-r → read from file


### Interface-Auswahl & Optionen
Liste der Interfaces anzeigen
termshark -D

Capture mit BPF-Filter
termshark -i eth0 -f "tcp port 80"


-f → BPF-Filter (wie bei tcpdump)

Capture nur bestimmte Pakete speichern
termshark -i eth0 -w output.pcap


-w → write to file


### Navigation im Interface

Pfeiltasten ↑↓ → durch Pakete scrollen

Enter → Details eines Pakets aufklappen

Tab → zwischen Packet List / Packet Details / Packet Bytes wechseln

q → beenden


### Filtern
Display-Filter

Funktioniert wie Wireshark (nicht BPF)

tcp.port == 443
ip.addr == 192.168.1.10
http


Tastenkombination: / → Filter eingeben

Filter kann live angepasst werden

Filter löschen

Ctrl+L → Clear Filter


### Paket-Detailansicht

Enter auf Paket → Details aufklappen

Pfeil rechts/links → Layer auf-/zuklappen

Hexdump → Payload anzeigen

Copy Field → Tastenkombination y → kopiert ausgewähltes Feld


### Speichern & Exportieren

Pcap speichern während Capture → -w filename.pcap

Export Packet Bytes / Fields → im Menü möglich


### Suchen

Suchen nach Text/Byte-Mustern → Ctrl+F

Beispiel: alle Pakete mit HTTP/1.1 im Payload finden


### Sortierung & Markierung

Pakete können nach Spalten sortiert werden (Src, Dst, Protocol)

Markieren für spätere Analyse → m

Clear Marks → Shift+M


### Typische Praxis-Beispiele
HTTP-Traffic live analysieren
termshark -i eth0 -f "tcp port 80"

DNS-Abfragen aus PCAP untersuchen
termshark -r capture.pcap -Y "dns"

Nur bestimmte IPs filtern
termshark -i eth0 -Y "ip.addr == 192.168.1.10"


### Nützliche Shortcuts (TUI)
Shortcut	Funktion
↑↓	Scroll Pakete
Enter	Paketdetails aufklappen
Tab	Zwischen Views wechseln
/	Display-Filter eingeben
Ctrl+F	Suchen
Ctrl+L	Filter löschen
m	Paket markieren
y	Feld kopieren
q	Beenden


### Unterschiede zu Wireshark

Terminal-basiert, kein GUI

Nutzt Tshark als Engine

Unterstützt alle Wireshark-Displayfilter

Ideal für Server ohne GUI oder SSH-Sessions

oben


termshark Spickzettel

Termshark Spickzettel (Linux / Terminal)

### Starten von Termshark
Zweck	                                Befehl / Option
Live Capture auf Interface	        termshark -i eth0
Capture auf allen Interfaces anzeigen	termshark -D
Capture aus Datei lesen	                termshark -r capture.pcap
Pakete während Capture speichern	termshark -i eth0 -w output.pcap
Capture mit BPF-Filter	                termshark -i eth0 -f "tcp port 80"
Display-Filter beim Start	        termshark -r file.pcap -Y "http"


### Display-Filter (Wireshark-artig)
Filter	         Beispiel
TCP-Port	tcp.port == 443
IP-Adresse	ip.addr == 192.168.1.10
Nur Protokoll	http / dns / icmp
Kombination	ip.src == 192.168.1.10 and tcp.port == 80

Shortcut für Filtereingabe: /
Filter löschen: Ctrl+L


### Navigation & Paketansicht
Aktion	                  Shortcut / Methode
Pakete scrollen	          ↑ / ↓
Paketdetails aufklappen	  Enter
Layer auf-/zuklappen	  → / ←
Zwischen Views wechseln	  Tab (Packet List / Details / Bytes)
Payload als Hex/ASCII	  In Detailansicht anzeigen
Feld kopieren	          y


### Suche
Aktion	                    Shortcut / Methode
Text / Pattern suchen	    Ctrl+F
Nächste Übereinstimmung	    n
Vorherige Übereinstimmung   Shift+n


### Markieren & Sortieren
Aktion	                    Shortcut / Methode
Paket markieren	            m
Markierungen löschen	    Shift+M
Sortierung nach Spalte	    Spaltenkopf auswählen / Pfeiltasten


### Capture beenden
Aktion	                Methode
Live Capture stoppen	q


### Shortcuts – Übersicht (TUI)
Shortcut	Funktion
↑ / ↓	        Scroll Pakete
Enter	        Paketdetails aufklappen
→ / ←	        Layer auf-/zuklappen
Tab	        Zwischen Views wechseln
/	        Display-Filter eingeben
Ctrl+L	        Filter löschen
Ctrl+F	        Suchen
n / Shift+n	Nächste / vorherige Übereinstimmung
m	        Paket markieren
Shift+M	        Markierungen löschen
y	        Feld kopieren
q	        Beenden


### Tipps

Live Capture: Filter möglichst früh setzen (-f), um Datenmenge zu reduzieren

Display-Filter vs. BPF-Filter:

-f "tcp port 80" → nur Pakete auf Interface aufnehmen

-Y "tcp.port == 80" → nachträglich filtern

Große Captures: Mit -r file.pcap arbeiten, statt alles live zu sehen


### Extra Tipp: Du kannst Termshark auch über SSH auf einem Server nutzen 
    und die .pcap-Dateien danach auf deinem Laptop mit Wireshark öffnen.

oben


termshark Bedienung

Termshark
ist eine terminalbasierte Benutzeroberfläche (TUI) für tshark, die stark an Wireshark angelehnt ist. Es ermöglicht die Analyse von Netzwerkverkehr direkt auf der Kommandozeile, was besonders auf Servern oder via SSH nützlich ist. 
1. Installation
Termshark setzt voraus, dass tshark (Teil des Wireshark-Pakets) auf dem System installiert ist. 

    Debian/Ubuntu: sudo apt install termshark
    macOS (Homebrew): brew install termshark
    Arch Linux: pacman -S termshark
    Go-Installation (Universal): go install github.com 

2. Starten und Erfassen
Sie können Termshark entweder live auf einer Schnittstelle starten oder eine vorhandene PCAP-Datei öffnen. 

    Live-Capture: termshark -i eth0 (ersetzen Sie eth0 durch Ihre Schnittstelle)
    Datei öffnen: termshark -r datei.pcap
    Schnittstellen auflisten: termshark -D 

3. Bedienung (Wichtige Tastenkürzel)
Die Navigation erfolgt hauptsächlich über die Tastatur: 

    Tab: Wechselt zwischen den Ansichten (Paketliste, Paketdetails, Hex-Dump).
    Pfeiltasten: Scrollen durch Pakete oder Details.
    / (Slashtaste): Fokus auf das Filterfeld setzen. Hier können dieselben Display-Filter wie in Wireshark verwendet werden (z. B. ip.addr == 192.168.1.1 oder tcp.port == 80).
    Enter: Öffnet Details eines ausgewählten Pakets.
    c: Wechselt zur Ansicht "Conversations" (Netzwerkgespräche).
    q: Beendet Termshark.
    ?: Ruft die integrierte Hilfe auf. 

4. Hauptvorteile gegenüber tshark
Im Gegensatz zum reinen tshark, das nur Text ausgibt, bietet Termshark eine interaktive Oberfläche: 

    Reassembly: TCP- und UDP-Streams können einfach zusammengesetzt und inspiziert werden.
    Kopieren: Bereiche (wie IP-Adressen oder Hex-Daten) können direkt in die Zwischenablage kopiert werden.
    Visualisierung: Die Struktur der Pakete wird hierarchisch dargestellt, genau wie in der grafischen Wireshark-Oberfläche. 

oben

route

### Klassische route-Befehle

Anzeigen der Routing-Tabelle

route -n   //-n zeigt die IP-Adressen numerisch an (ohne DNS-Namenauflösung).


Standardgateway setzen

sudo route add default gw 192.168.1.1

192.168.1.1 ist das Gateway.


Route zu einem bestimmten Netzwerk hinzufügen

sudo route add -net 10.0.0.0 netmask 255.255.255.0 gw 192.168.1.1


Fügt eine Route zum Netzwerk 10.0.0.0/24 über Gateway 192.168.1.1 hinzu.


Route löschen

sudo route del -net 10.0.0.0 netmask 255.255.255.0



### Moderne Alternative: ip route

Routing-Tabelle anzeigen

ip route show


Standardgateway setzen

sudo ip route add default via 192.168.1.1


Route zu einem bestimmten Netzwerk hinzufügen

sudo ip route add 10.0.0.0/24 via 192.168.1.1


Route löschen

sudo ip route del 10.0.0.0/24


### Merksatz:

route → älter, noch in vielen Tutorials.

ip route → moderner, flexibler, unterstützt mehr Features wie Multipath-Routing und Policy Routing.

route - Spickzettel

Aktion route-Befehl ip route-Befehl Beschreibung
Routing-Tabelle anzeigen route -n ip route show Zeigt alle Routen ohne DNS-Auflösung.
Standardgateway setzen sudo route add default gw 192.168.1.1 sudo ip route add default via 192.168.1.1 Setzt das Standardgateway für alle nicht lokal bekannten Ziele.
Standardgateway löschen sudo route del default sudo ip route del default Entfernt das Standardgateway.
Route zu einem Netzwerk hinzufügen sudo route add -net 10.0.0.0 netmask 255.255.255.0 gw 192.168.1.1 sudo ip route add 10.0.0.0/24 via 192.168.1.1 Fügt eine Route zu einem bestimmten Netzwerk hinzu.
Route zu einem Netzwerk löschen sudo route del -net 10.0.0.0 netmask 255.255.255.0 sudo ip route del 10.0.0.0/24 Löscht eine Route zu einem bestimmten Netzwerk.
Route für ein Interface erzwingen sudo route add -net 10.0.0.0 netmask 255.255.255.0 dev eth0 sudo ip route add 10.0.0.0/24 dev eth0 Leitet den Verkehr über ein bestimmtes Interface, ohne Gateway.
Temporäre Route entfernen (Interface) sudo route del -net 10.0.0.0 netmask 255.255.255.0 dev eth0 sudo ip route del 10.0.0.0/24 dev eth0 Löscht die zuvor erstellte Route.


oben

netstat

netstat (Network Statistics) ist ein klassisches Linux-Tool, um Netzwerkverbindungen, Routing-Tabellen, offene Ports und Netzwerkstatistiken anzuzeigen. Es ist praktisch, um zu sehen, welche Programme mit dem Netzwerk kommunizieren und welche Ports offen sind. In modernen Linux-Distributionen wird es teilweise durch ss ersetzt, aber netstat ist immer noch weit verbreitet.

Wichtige grundlegende Befehle:

netstat -tuln → Zeigt alle offenen TCP/UDP-Ports numerisch an.

netstat -anp → Zeigt alle Verbindungen inklusive PID/Prozess.

netstat -r → Zeigt die Routing-Tabelle.

netstat -i → Zeigt Netzwerkschnittstellenstatistiken.
Aktion Befehl Beschreibung
Offene TCP/UDP-Ports anzeigen netstat -tuln Zeigt alle offenen TCP/UDP-Ports numerisch an.
Alle Verbindungen inklusive Prozess anzeigen netstat -anp Zeigt alle Verbindungen und die zugehörigen Prozesse (PID/Name).
Routing-Tabelle anzeigen netstat -r Zeigt die aktuelle Routing-Tabelle.
Netzwerkschnittstellenstatistiken netstat -i Zeigt Informationen zu allen Netzwerkinterfaces.

oben


nmap


nmap (Network Mapper) ist ein mächtiges Tool zur Netzwerkerkundung und Sicherheitsüberprüfung. Mit nmap kannst du Hosts in einem Netzwerk scannen, offene Ports finden, Betriebssysteme erkennen und Dienste identifizieren. Es wird häufig in Netzwerksicherheit und Troubleshooting eingesetzt.

Wichtige grundlegende Befehle:

nmap 192.168.1.1 → Scan eines einzelnen Hosts auf Standardports.

nmap -sS 192.168.1.0/24 → SYN-Scan eines gesamten Netzwerks.

nmap -p 22,80 192.168.1.1 → Scan bestimmter Ports auf einem Host.

nmap -O 192.168.1.1 → Versucht das Betriebssystem zu erkennen.
Aktion Befehl Beschreibung
Einzelnen Host scannen nmap 192.168.1.1 Scan eines Hosts auf Standardports.
SYN-Scan eines gesamten Netzwerks nmap -sS 192.168.1.0/24 Erkundet alle Hosts im Subnetz per SYN-Scan.
Bestimmte Ports scannen nmap -p 22,80 192.168.1.1 Prüft nur bestimmte Ports auf einem Host.
Betriebssystemerkennung nmap -O 192.168.1.1 Versucht, das Betriebssystem des Hosts zu erkennen.

oben


dhclient


dhclient ist der DHCP-Client unter Linux. Es wird genutzt, um IP-Adressen automatisch von einem DHCP-Server zu beziehen oder eine bestehende IP-Konfiguration zu erneuern. Praktisch bei mobilen Geräten, Notebooks oder dynamischen Netzwerken.

Wichtige grundlegende Befehle:

sudo dhclient → Holt eine neue IP-Adresse für alle Schnittstellen.

sudo dhclient -r → Gibt die aktuelle IP-Adresse frei (Release).

sudo dhclient eth0 → Holt eine neue IP für die Schnittstelle eth0.

sudo dhclient -v → Startet den Client im verbose-Modus, zeigt Details.
Aktion Befehl Beschreibung
Neue IP-Adresse anfordern sudo dhclient Holt eine neue IP-Adresse für alle Schnittstellen.
IP-Adresse freigeben sudo dhclient -r Gibt die aktuelle IP-Adresse frei.
IP-Adresse für spezifische Schnittstelle anfordern sudo dhclient eth0 Holt eine neue IP-Adresse für die Schnittstelle eth0.
DHCP-Client im verbose-Modus starten sudo dhclient -v Zeigt detaillierte Informationen während der DHCP-Anfrage.

oben


traceroute

### Einfacher Traceroute
traceroute 8.8.8.8

Zeigt alle Hops von deinem Rechner zu 8.8.8.8.

Standardmäßig werden ICMP oder UDP-Pakete genutzt, abhängig vom System.


### Traceroute zu einem Hostnamen
traceroute www.example.com

Löst den Hostnamen in eine IP-Adresse auf und zeigt den Pfad.


### Traceroute mit begrenzter Anzahl von Hops
traceroute -m 10 8.8.8.8

-m 10 → maximal 10 Hops werden angezeigt.

Standard: 30 Hops.


### Traceroute mit kleinerer Paketgröße
traceroute -q 1 8.8.8.8

-q 1 → sendet nur 1 Paket pro Hop statt standardmäßig 3.


### Traceroute mit festem Timeout
traceroute -w 2 8.8.8.8

-w 2 → wartet maximal 2 Sekunden auf Antwort pro Hop.


### Traceroute über ICMP statt UDP
traceroute -I 8.8.8.8

-I → verwendet ICMP Echo Requests (ähnlich wie ping).

Nützlich, wenn Firewalls UDP blockieren.


### Traceroute über IPv6
traceroute6 google.com

Verwendet IPv6-Adressen.

Entspricht traceroute für IPv6.


### Traceroute mit Angabe eines bestimmten Ports
traceroute -p 443 www.example.com


-p 443 → sendet Pakete an Port 443 (HTTPS) statt Standard-33434 UDP.

Hilfreich, wenn Firewalls ICMP blockieren, aber TCP erlaubt ist.


### Kurztipps:

-n → IP-Adressen numerisch anzeigen (kein DNS-Lookup).

-f <StartTTL> → Start-Hops niedriger setzen, um z. B. nur das lokale Netz zu prüfen.

-A → AS-Nummern (Autonomous System) anzeigen, wenn verfügbar.

[#top | oben]]

Traceroute-Befehle

Aktion Befehl Beschreibung
Einfacher Traceroute zu einer IP traceroute 8.8.8.8 Zeigt alle Hops von deinem Rechner zu 8.8.8.8.
Traceroute zu einem Hostnamen traceroute www.example.com Löst den Hostnamen in eine IP-Adresse auf und zeigt den Pfad.
Maximale Anzahl von Hops begrenzen traceroute -m 10 8.8.8.8 Zeigt maximal 10 Hops statt Standard 30.
Weniger Pakete pro Hop senden traceroute -q 1 8.8.8.8 Sendet nur 1 Paket pro Hop (statt 3), spart Zeit.
Timeout pro Hop festlegen traceroute -w 2 8.8.8.8 Wartet maximal 2 Sekunden auf Antwort pro Hop.
ICMP statt UDP verwenden traceroute -I 8.8.8.8 Nutzt ICMP Echo Requests, wenn UDP blockiert ist.
Traceroute über IPv6 traceroute6 google.com Zeigt den Pfad zu einem Host über IPv6.
Traceroute zu bestimmtem Port traceroute -p 443 www.example.com Sendet Pakete an Port 443, nützlich bei Firewalls.
IP-Adressen numerisch anzeigen traceroute -n 8.8.8.8 Keine DNS-Auflösung, nur IP-Adressen anzeigen.

oben

arp

Übersetzt IP-Adressen in MAC-Adressen

### Klassischer ARP-Befehl (arp)
    Teil des Pakets net-tools (gilt als deprecated, aber oft noch installiert)

ARP-Tabelle anzeigen
arp
arp -n    //-n → keine Namensauflösung (schneller, übersichtlicher)

ARP-Eintrag hinzufügen
arp -s 192.168.1.10 aa:bb:cc:dd:ee:ff

ARP-Eintrag löschen
arp -d 192.168.1.10

Bestimmtes Interface nutzen
arp -i eth0


### Moderner Ersatz: ip neigh (empfohlen)
    Teil von iproute2 – heute Standard auf Linux

Nachbarn (ARP / NDP) anzeigen
ip neigh show  oder kurz: ip n

ARP-Eintrag hinzufügen
ip neigh add 192.168.1.10 lladdr aa:bb:cc:dd:ee:ff dev eth0

ARP-Eintrag ändern
ip neigh replace 192.168.1.10 lladdr aa:bb:cc:dd:ee:ff dev eth0

ARP-Eintrag löschen
ip neigh del 192.168.1.10 dev eth0

ARP-Cache leeren
ip neigh flush all


### ARP-Pakete aktiv senden: arping
    Sehr nützlich für Tests und Fehlersuche

Erreichbarkeit prüfen (Layer 2)
arping 192.168.1.1

Interface festlegen
arping -I eth0 192.168.1.1

Gratuitous ARP senden
arping -U 192.168.1.10


### Netzwerk-Diagnose & Analyse
ARP-Traffic mitschneiden
tcpdump -n -e arp

ARP-Tabelle über /proc anzeigen
cat /proc/net/arp


### Typische ARP-Statuswerte (bei ip neigh)

Status	         Bedeutung
REACHABLE	 Host erreichbar
STALE	         Eintrag alt, wird geprüft
DELAY	         Prüfung geplant
INCOMPLETE	 ARP-Antwort fehlt
FAILED	         ARP fehlgeschlagen
PERMANENT	 Statischer Eintrag

oben

ethtool

Kommando               Funktion
ethtool eth0           Status und Einstellungen auf der 
                       Bitüberragungsschicht ausgeben

ethtool -P eth0        MAC-Adresse ausgeben

ethtool -S eth0        Statistische Daten ausgeben

ethtool -i eth0        Informationen zu Treiber und Firmware

ethtool -p eth0        LED blinken lassen

oben

iftop

Überwachung des Datenverkehrs in Echtzeit

iftop -i eth0

oben


dig

dig (Domain Information Groper) ist ein Linux-Tool zur DNS-Abfrage. Mit dig kannst du herausfinden, welche IP-Adresse zu einem Hostnamen gehört, welche Nameserver antworten, oder detaillierte DNS-Records (A, AAAA, MX, TXT, etc.) prüfen. Es ist eines der wichtigsten Tools für Netzwerkdiagnosen, wenn es um Namensauflösung geht.

Grundlegende Befehle:

dig example.com → Standard-DNS-Abfrage (A-Record) für example.com.

dig example.com MX → Prüft den Mail-Server (MX-Record).

dig +short example.com → Zeigt nur die IP(s) an, kompakte Ausgabe.

dig @8.8.8.8 example.com → Abfrage über spezifischen DNS-Server.
Aktion Befehl Beschreibung
Standard-DNS-Abfrage (A-Record) dig example.com Zeigt die IP-Adresse(n) eines Hostnamens.
MX-Record prüfen dig example.com MX Zeigt die Mailserver für die Domain.
Kompakte Ausgabe (nur IP) dig +short example.com Zeigt nur die IP(s) ohne zusätzliche Informationen.
DNS-Abfrage über spezifischen Server dig @8.8.8.8 example.com Fragt den Hostnamen über den DNS-Server 8.8.8.8 ab.

oben


ftp

ftp ist das klassische Linux-Tool für Dateiübertragungen über das FTP-Protokoll. Es ermöglicht das Hoch- und Runterladen von Dateien zu/von einem FTP-Server. Heute wird es wegen Sicherheitsrisiken oft durch sftp oder scp ersetzt, aber für Legacy-Systeme ist ftp noch relevant.

Grundlegende Befehle:

ftp ftp.example.com → Verbindung zu einem FTP-Server herstellen.

login → Benutzername/Passwort eingeben.

get datei.txt → Datei vom Server herunterladen.

put datei.txt → Datei auf den Server hochladen.

ls → Auflisten der Dateien im aktuellen Verzeichnis des Servers.
Aktion Befehl Beschreibung
Verbindung zu FTP-Server ftp ftp.example.com Stellt eine Verbindung zum FTP-Server her.
Datei herunterladen get datei.txt Lädt eine Datei vom FTP-Server herunter.
Datei hochladen put datei.txt Lädt eine Datei auf den FTP-Server hoch.
Verzeichnis auflisten ls Listet Dateien im aktuellen Server-Verzeichnis auf.
Benutzerlogin login Meldet sich mit Benutzername und Passwort am Server an.

oben


nc (netcat)

nc (netcat) ist ein universelles Tool für TCP/UDP-Verbindungen. Es kann verwendet werden, um Ports zu scannen, als einfacher TCP/Server oder Client zu fungieren, Daten zu übertragen oder Netzwerkprobleme zu debuggen. Oft als „Schweizer Taschenmesser für Netzwerke“ bezeichnet.

Grundlegende Befehle:

nc -zv 192.168.1.1 22 → Prüft, ob Port 22 auf 192.168.1.1 offen ist.

nc -l 1234 → Startet einen TCP-Server auf Port 1234.

nc 192.168.1.2 1234 → Verbindet sich mit einem TCP-Server auf Port 1234.

echo "Hallo" | nc 192.168.1.2 1234 → Sendet Text an einen TCP-Server.
Aktion Befehl Beschreibung
Prüft, ob ein Port offen ist nc -zv 192.168.1.1 22 Prüft, ob Port 22 auf 192.168.1.1 erreichbar ist.
TCP-Server starten nc -l 1234 Startet einen TCP-Server auf Port 1234.
Mit TCP-Server verbinden nc 192.168.1.2 1234 Verbindet sich zu einem TCP-Server auf Port 1234.
Text an Server senden nc 192.168.1.2 1234 Sendet Text an einen TCP-Server.

oben


netperf

netperf ist ein Tool zur Netzwerkperformancemessung. Es wird genutzt, um Durchsatz (Throughput), Latenzzeiten und TCP/UDP-Performance zwischen zwei Hosts zu messen. Meist wird netperf zusammen mit einem Server (netserver) betrieben: ein Host läuft als Server, der andere als Client.

Grundlegende Befehle:

netserver → Startet den netperf-Server auf einem Host.

netperf -H 192.168.1.2 → Misst die TCP-Performance zum Host 192.168.1.2.

netperf -H 192.168.1.2 -t UDP_STREAM → Misst UDP-Durchsatz.

netperf -H 192.168.1.2 -t TCP_RR → Misst TCP-Request/Response-Latenz.

Aktion Befehl Beschreibung
Netperf-Server starten netserver Startet den netperf-Server auf einem Host.
TCP-Performance messen netperf -H 192.168.1.2 Misst TCP-Durchsatz zum Host.
UDP-Durchsatz messen netperf -H 192.168.1.2 -t UDP_STREAM Misst UDP-Stream Performance.
TCP-Request/Response-Latenz messen netperf -H 192.168.1.2 -t TCP_RR Misst Latenz von TCP-Requests.

oben


nslookup

nslookup ist ein klassisches Linux-Tool zur DNS-Abfrage, ähnlich wie dig. Es wird genutzt, um die IP-Adresse eines Hostnamens zu ermitteln, DNS-Server zu testen oder die DNS-Konfiguration zu überprüfen. Anders als dig bietet nslookup einen interaktiven Modus, in dem mehrere Abfragen nacheinander ausgeführt werden können.

Grundlegende Befehle:

nslookup example.com → Standard-DNS-Abfrage für example.com.

nslookup → Startet den interaktiven Modus, in dem man mehrere Abfragen durchführen kann.

nslookup example.com 8.8.8.8 → Abfrage über einen spezifischen DNS-Server (z. B. Google DNS).

set type=MX → Im interaktiven Modus den MX-Record für eine Domain abfragen.
Aktion Befehl Beschreibung
Standard-DNS-Abfrage nslookup example.com Zeigt die IP-Adresse(n) eines Hostnamens.
Interaktiver Modus starten nslookup Startet den interaktiven Modus für mehrere Abfragen.
DNS-Abfrage über spezifischen Server nslookup example.com 8.8.8.8 Fragt den Hostnamen über den DNS-Server 8.8.8.8 ab.
MX-Record im interaktiven Modus set type=MX Stellt Abfrage auf MX-Record um.

oben


ssh

ssh (Secure Shell) ist das Standardtool, um verschlüsselte Remote-Verbindungen zu Linux-Servern herzustellen. Es wird genutzt, um auf entfernte Systeme zuzugreifen, Befehle auszuführen oder sichere Tunnel (Port-Forwarding) einzurichten. SSH ersetzt fast vollständig alte unsichere Tools wie rlogin oder telnet für Remote-Administration.

Grundlegende Befehle:

ssh user@host → Verbindung zum Host als Benutzer user herstellen.

ssh -p 2222 user@host → Verbindung über einen spezifischen Port (hier 2222).

ssh -i keyfile.pem user@host → Verbindung unter Nutzung eines privaten Schlüssels.

ssh -L 8080:localhost:80 user@host → Lokales Port-Forwarding einrichten.
Aktion Befehl Beschreibung
Verbindung zum Host herstellen ssh user@host Stellt eine verschlüsselte Verbindung zum Remote-Host her.
Verbindung über spezifischen Port ssh -p 2222 user@host Verbindung über Port 2222 herstellen.
Verbindung mit privatem Schlüssel ssh -i keyfile.pem user@host Verbindet sich unter Nutzung eines privaten SSH-Schlüssels.
Lokales Port-Forwarding ssh -L 8080:localhost:80 user@host Leitet lokalen Port 8080 auf Port 80 des Hosts weiter.

oben


telnet

telnet ist ein älteres Tool, um unsichere Textverbindungen zu einem Server herzustellen. Heutzutage wird es fast nur noch zu Testzwecken genutzt, zum Beispiel um zu prüfen, ob ein Port erreichbar ist. Für sichere Remote-Verbindungen wird ssh verwendet.

Grundlegende Befehle:

telnet host 23 → Verbindung zum Host auf Port 23 (Standard-Telnet-Port).

open host port → Im Telnet-Client Verbindung zu einem bestimmten Port herstellen.

quit → Telnet-Sitzung beenden.
Aktion Befehl Beschreibung
Verbindung zu Host auf Port 23 telnet host 23 Stellt eine Verbindung zum Telnet-Server her.
Verbindung zu Host auf beliebigem Port open host port Verbindet im Telnet-Client zu einem bestimmten Port.
Telnet-Sitzung beenden quit Beendet die Telnet-Verbindung.

oben