Der Befehl ifconfig zeigt Informationen zu Netzwerkschnittstellen an und ermöglicht deren Konfiguration. Du kannst damit IP-Adressen zuweisen, Schnittstellen aktivieren oder deaktivieren und Netzwerkparameter wie MTU oder MAC-Adresse ändern.
Hinweis: Der Befehl ifconfig gilt als veraltet und wurde durch den moderneren ip-Befehl ersetzt. Auf neueren Distributionen ist ifconfig oft nicht vorinstalliert.
Installation von ifconfig
Falls ifconfig nicht installiert ist, erhältst du die Fehlermeldung ifconfig: command not found. Das Paket net-tools enthält den Befehl.
Ubuntu/Debian:
sudo apt install net-tools
CentOS/RHEL:
sudo dnf install net-tools
Syntax des ifconfig-Befehls
ifconfig [SCHNITTSTELLE] [ADRESSE] [OPTIONEN]
SCHNITTSTELLE- Name der Netzwerkschnittstelle (z.B.eth0,enp0s3)ADRESSE- IP-Adresse, die zugewiesen werden sollOPTIONEN- Flags wieup,down,netmaskodermtu
Änderungen mit ifconfig sind nicht persistent. Nach einem Neustart gehen alle Konfigurationen verloren. Für dauerhafte Änderungen musst du die Netzwerkkonfigurationsdateien deiner Distribution bearbeiten.
Wichtig: Nur root oder Benutzer mit sudo-Rechten können Netzwerkschnittstellen konfigurieren.
Netzwerkschnittstellen anzeigen
Ohne Argumente zeigt ifconfig alle aktiven Netzwerkschnittstellen:
ifconfig
Mit der Option -a werden auch inaktive Schnittstellen angezeigt:
ifconfig -a
Die Ausgabe enthält für jede Schnittstelle:
eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 192.168.1.100 netmask 255.255.255.0 broadcast 192.168.1.255
inet6 fe80::4ebb:58ff:fe9c:f555 prefixlen 64 scopeid 0x20<link>
ether 4c:bb:58:9c:f5:55 txqueuelen 1000 (Ethernet)
RX packets 84110 bytes 70667629 (70.6 MB)
TX packets 59727 bytes 20886290 (20.8 MB)
Die wichtigsten Felder sind:
inet- IPv4-Adresse der Schnittstellenetmask- Subnetzmaskeether- MAC-Adresse (Hardware-Adresse)mtu- Maximum Transmission Unit (maximale Paketgröße)RX/TX packets- Empfangene und gesendete Pakete
Um nur eine bestimmte Schnittstelle anzuzeigen, gibst du deren Namen an:
ifconfig eth0
IP-Adresse und Netzmaske zuweisen
Eine IP-Adresse weist du mit folgendem Befehl zu:
sudo ifconfig eth0 192.168.1.50 netmask 255.255.255.0
Du kannst einer Schnittstelle auch eine zusätzliche IP-Adresse über einen Alias zuweisen:
sudo ifconfig eth0:0 192.168.1.51 netmask 255.255.255.0
Der Alias eth0:0 verhält sich wie eine virtuelle Schnittstelle, die physisch dieselbe Netzwerkkarte nutzt.
Schnittstelle aktivieren und deaktivieren
Um eine Netzwerkschnittstelle zu deaktivieren:
sudo ifconfig eth0 down
Um sie wieder zu aktivieren:
sudo ifconfig eth0 up
Das Deaktivieren und erneute Aktivieren setzt die Schnittstelle zurück, was bei Verbindungsproblemen helfen kann.
MTU ändern
Die MTU (Maximum Transmission Unit) legt die maximale Paketgröße in Bytes fest. Der Standardwert für Ethernet beträgt 1500 Bytes.
sudo ifconfig eth0 mtu 9000
Größere MTU-Werte (Jumbo Frames) können den Durchsatz in lokalen Netzwerken erhöhen, werden aber nicht von allen Netzwerkgeräten unterstützt.
MAC-Adresse ändern
Die MAC-Adresse identifiziert eine Netzwerkschnittstelle eindeutig auf Hardware-Ebene. Um sie zu ändern, deaktivierst du zuerst die Schnittstelle:
sudo ifconfig eth0 down
sudo ifconfig eth0 hw ether 00:11:22:33:44:55
sudo ifconfig eth0 up
Das Ändern der MAC-Adresse kann für Netzwerktests oder zum Umgehen von MAC-Filtern nützlich sein.
Promiscuous-Modus aktivieren
Im Promiscuous-Modus empfängt eine Schnittstelle alle Pakete im Netzwerk, nicht nur die an sie adressierten. Das ist für Netzwerkanalyse und Debugging hilfreich.
Aktivieren:
sudo ifconfig eth0 promisc
Deaktivieren:
sudo ifconfig eth0 -promisc
Zusammenfassung
Der Befehl ifconfig zeigt Netzwerkinformationen an und konfiguriert Schnittstellen. Für neue Systeme empfiehlt sich der modernere ip-Befehl, der mehr Funktionen bietet. Die vollständige Dokumentation findest du in der Manpage mit man ifconfig.