Linux Netzwerk Befehle
Linux Netzwerk-Befehle: Das komplette Toolkit
Netzwerk-Probleme debuggen gehört zum Admin-Alltag. Hier finden Sie alle wichtigen Befehle für Netzwerk-Analyse und Konfiguration.
Netzwerk-Konfiguration anzeigen
ip (modern)
# Alle Interfaces und IPs ip addr ip a # Kurzform # Nur IPv4 ip -4 addr # Nur ein Interface ip addr show eth0 # Routing-Tabelle ip route ip r # ARP-Cache ip neigh
ifconfig (veraltet, aber verbreitet)
# Installation falls nicht vorhanden sudo apt install net-tools ifconfig ifconfig eth0
Verbindungen prüfen
ping - Erreichbarkeit
# Host erreichbar? ping google.com # Nur 4 Pakete ping -c 4 google.com # Mit Timeout ping -W 2 -c 4 192.168.1.1
traceroute - Weg zum Ziel
# Route anzeigen traceroute google.com # Schneller mit mtr mtr google.com
telnet/nc - Port-Test
# Port offen? telnet example.com 80 nc -zv example.com 443 # Mehrere Ports nc -zv example.com 20-25
Offene Ports und Verbindungen
ss (modern)
# Alle lauschenden TCP-Ports ss -tuln # Mit Prozess-Info ss -tulnp # Alle etablierten Verbindungen ss -t # Nach Port filtern ss -tuln | grep :80 # Optionen: # -t = TCP # -u = UDP # -l = Listening # -n = Numerisch (keine DNS-Auflösung) # -p = Prozess anzeigen
netstat (veraltet)
netstat -tuln netstat -tulnp
DNS abfragen
dig
# A-Record dig example.com # Bestimmter Record-Typ dig example.com MX dig example.com TXT dig example.com NS # Kurzform dig +short example.com # Mit bestimmtem DNS-Server dig @8.8.8.8 example.com # Reverse DNS dig -x 93.184.216.34
nslookup
nslookup example.com nslookup -type=MX example.com
host
host example.com host -t MX example.com
HTTP-Anfragen
curl
# GET Request
curl https://example.com
# Nur Header
curl -I https://example.com
# Header und Body
curl -i https://example.com
# POST Request
curl -X POST -d "param=value" https://api.example.com
# Mit JSON
curl -X POST \
-H "Content-Type: application/json" \
-d '{"key": "value"}' \
https://api.example.com
# Download
curl -O https://example.com/file.zip
curl -o custom-name.zip https://example.com/file.zip
# Mit Auth
curl -u user:password https://api.example.com
# Folge Redirects
curl -L https://example.com
# Verbose (Debug)
curl -v https://example.com
# SSL ignorieren (nur Test!)
curl -k https://self-signed.example.com
wget
# Download wget https://example.com/file.zip # Rekursiv (ganze Website) wget -r -l 2 https://example.com # Im Hintergrund wget -b https://example.com/large-file.zip
Netzwerk-Analyse
tcpdump - Packet Capture
# Alle Pakete auf Interface sudo tcpdump -i eth0 # Nur bestimmter Host sudo tcpdump host 192.168.1.1 # Nur bestimmter Port sudo tcpdump port 80 # In Datei speichern sudo tcpdump -w capture.pcap # Datei lesen tcpdump -r capture.pcap
iftop - Bandbreite pro Verbindung
sudo apt install iftop sudo iftop -i eth0
nethogs - Bandbreite pro Prozess
sudo apt install nethogs sudo nethogs eth0
Netzwerk konfigurieren
IP-Adresse setzen
# Temporär sudo ip addr add 192.168.1.100/24 dev eth0 sudo ip link set eth0 up # Route hinzufügen sudo ip route add default via 192.168.1.1 # Permanent (Ubuntu 18.04+): /etc/netplan/ sudo nano /etc/netplan/01-config.yaml
Netplan Beispiel
# /etc/netplan/01-config.yaml
network:
version: 2
ethernets:
eth0:
addresses:
- 192.168.1.100/24
gateway4: 192.168.1.1
nameservers:
addresses:
- 8.8.8.8
- 8.8.4.4
sudo netplan apply
Firewall prüfen
# UFW Status sudo ufw status verbose # iptables Regeln sudo iptables -L -n -v # Firewalld (CentOS/RHEL) sudo firewall-cmd --list-all
Nützliche Kombinationen
# Welcher Prozess nutzt Port 80? sudo ss -tulnp | grep :80 # Offene Verbindungen zu einem Host ss -t | grep 192.168.1.1 # DNS-Cache leeren sudo systemd-resolve --flush-caches # Alle IPs im Netzwerk finden nmap -sn 192.168.1.0/24 # Ports eines Hosts scannen nmap -sT 192.168.1.1
💡 Tipp:
Für dauerhafte Überwachung Ihrer Server nutzen Sie den Enjyn Server Monitor – kostenlos und ohne Installation.