Appearance
Kapitel 10: Netzwerkkonfiguration und -test
10.1 Netzwerkinformationen anzeigen (ip, ifconfig-Befehl)
ip - Moderne Netzwerkkonfiguration (empfohlen):
bash
ip addr # Alle Netzwerkschnittstellen und IP-Adressen anzeigen
ip link # Netzwerkschnittstellenstatus anzeigen
ip route # Routing-Tabelle anzeigenifconfig - Klassische Netzwerkkonfiguration (veraltet, aber noch häufig verwendet):
bash
ifconfig # Alle Netzwerkschnittstellen anzeigen
ifconfig eth0 # Informationen für eine bestimmte Schnittstelle anzeigenHinweis: ifconfig ist veraltet. Verwenden Sie nach Möglichkeit ip.
Netzwerkparameter interpretieren:
inet: IPv4-Adresseinet6: IPv6-Adresseether: MAC-AdresseUP: Schnittstelle ist aktivLOWER_UP: Physische Verbindung ist aktiv
10.2 Netzwerkverbindung testen (ping-Befehl, um zu beurteilen, ob das Netzwerk normal ist)
ping - Netzwerkverbindung testen:
bash
ping google.com # Verbindung zu google.com testen
ping 8.8.8.8 # Verbindung zu einer IP-Adresse testen
ping -c 4 google.com # 4 Pakete senden und dann stoppenInterpretation der Ergebnisse:
- Erfolgreich:
bytes from ... icmp_seq=... ttl=... time=... - Fehlgeschlagen:
Destination Host UnreachableoderRequest timeout
Häufige Probleme:
- Keine Internetverbindung
- DNS-Probleme (kann Domain nicht auflösen)
- Firewall blockiert ICMP-Pakete
Alternative Testmethoden:
bash
curl google.com # HTTP-Verbindung testen
traceroute google.com # Netzwerkroute verfolgen10.3 Anschlussbelegung anzeigen (netstat, ss-Befehl, häufig von Anfängern verwendet)
ss - Moderne Anschlussbelegungsanzeige (empfohlen):
bash
ss # Alle Verbindungen anzeigen
ss -tuln # Alle lauschenden TCP/UDP-Ports anzeigen
ss -tunp # Verbindungen mit Prozessinformationen anzeigennetstat - Klassische Anschlussbelegungsanzeige (veraltet):
bash
netstat # Alle Verbindungen anzeigen
netstat -tuln # Alle lauschenden TCP/UDP-Ports anzeigen
netstat -tunp # Verbindungen mit Prozessinformationen anzeigenOptionen verstehen:
-t: TCP-Verbindungen-u: UDP-Verbindungen-l: Lauschende (listening) Ports-n: Numerische Adressen (keine Namensauflösung)-p: Prozess-ID und Name anzeigen
Beispielausgabe interpretieren:
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 1234/sshd0.0.0.0:22: Lauscht auf allen Interfaces auf Port 22 (SSH)LISTEN: Dienst wartet auf Verbindungen
10.4 Temporäre/permanente IP-Adresskonfiguration (Anleitung für Anfänger, leicht verständlich)
Temporäre IP-Adresskonfiguration (geht nach Neustart verloren):
Unter Ubuntu/Debian (mit ip):
bash
sudo ip addr add 192.168.1.100/24 dev eth0 # IP-Adresse hinzufügen
sudo ip link set eth0 up # Schnittstelle aktivieren
sudo ip route add default via 192.168.1.1 # Standard-Gateway festlegenUnter CentOS/RHEL (mit ip):
bash
sudo ip addr add 192.168.1.100/24 dev ens33
sudo ip link set ens33 up
sudo ip route add default via 192.168.1.1Permanente IP-Adresskonfiguration:
Unter Ubuntu/Debian (20.04+ mit Netplan):
- Konfigurationsdatei bearbeiten:bash
sudo vim /etc/netplan/*.yaml - Beispielkonfiguration: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] - Konfiguration anwenden:bash
sudo netplan apply
Unter CentOS/RHEL (mit NetworkManager):
- Konfigurationsdatei bearbeiten:bash
sudo vim /etc/sysconfig/network-scripts/ifcfg-ens33 - Beispielkonfiguration:
BOOTPROTO=static IPADDR=192.168.1.100 NETMASK=255.255.255.0 GATEWAY=192.168.1.1 DNS1=8.8.8.8 ONBOOT=yes - Netzwerkdienst neu starten:bash
sudo systemctl restart NetworkManager
10.5 Fehlerbehebung bei fehlgeschlagener Remote-Verbindung (häufige Probleme für Anfänger)
Problem 1: SSH-Verbindung abgelehnt ("Connection refused")
- Mögliche Ursachen:
- SSH-Dienst läuft nicht
- Firewall blockiert Port 22
- Lösungen:bash
sudo systemctl status sshd # SSH-Dienststatus prüfen sudo systemctl start sshd # SSH-Dienst starten sudo ufw allow 22 # Firewall für Port 22 öffnen (Ubuntu) sudo firewall-cmd --add-port=22/tcp # Firewall für Port 22 öffnen (CentOS)
Problem 2: "Connection timeout"
- Mögliche Ursachen:
- Netzwerkverbindung unterbrochen
- Falsche IP-Adresse oder Hostname
- Netzwerk-Firewall blockiert
- Lösungen:bash
ping server-ip # Netzwerkverbindung testen ip addr # Lokale IP-Adresse prüfen sudo ss -tuln | grep 22 # Prüfen, ob SSH lauscht
Problem 3: "Permission denied (publickey,password)"
- Mögliche Ursachen:
- Falsches Passwort
- SSH-Schlüssel nicht konfiguriert
- Root-Login deaktiviert
- Lösungen:
- Passwort überprüfen
- SSH-Schlüssel kopieren:
ssh-copy-id benutzer@server - SSH-Konfiguration prüfen:
vim /etc/ssh/sshd_config
Allgemeine Fehlerbehebungsschritte:
- Lokale Netzwerkkonfiguration prüfen (
ip addr) - Netzwerkverbindung testen (
ping) - Ziel-Server-Erreichbarkeit prüfen (
ping ziel-server) - Ziel-Server-Dienststatus prüfen (
systemctl status dienst) - Lokale Firewall-Einstellungen prüfen (
sudo ufw status) - Ziel-Server-Firewall-Einstellungen prüfen
