SUSE Network Files: /etc/sysconfig/network (Artikel 139)
Tiefgehende Analyse der SUSE-Netzwerkkonfiguration auf Dateiebene. Erfahren Sie alles über das ifcfg-Format, statische Routen und die globale Konfiguration des Wicked-Dämons.
# SUSE Network Files: Hinter den Kulissen von Wicked
TL;DR / Management Summary Obwohl YaST (Artikel 134) das primäre Werkzeug ist, muss ein Senior Admin die Struktur unter
/etc/sysconfig/network/verstehen. SUSE nutzt ein hochgradig modulares System ausifcfg-*(Interface-Konfig),ifroute-*(Statische Routen) und der globalenconfig. Wer diese Dateien beherrscht, kann Netzwerkänderungen via Ansible automatisieren oder kaputte Setups reparieren, wenn YaST nicht mehr startet.
# 1. Einführung & Architektur
Wo die Bits und Bytes definiert werden.
SUSE nutzt wie Red Hat das ifcfg-Modell, hat aber eine eigene Syntax und Dateistruktur. Während RHEL auf den NetworkManager migriert ist, bleibt SUSE bei Wicked (für Server), das diese Dateien als “Source of Truth” nutzt.
# Dateipfade Übersicht
- /etc/sysconfig/network/config: Globale Einstellungen (z.B. Timeout, Debug-Level).
- /etc/sysconfig/network/ifcfg-
: Pro Interface (z.B. eth0). - /etc/sysconfig/network/ifroute-
: Statische Routen für dieses Interface. - /etc/sysconfig/network/routes: Globale statische Routen (Standard-Gateway).
# 2. Die Anatomie einer ifcfg Datei (SUSE Style)
Struktur und Optionen.
Beispiel: /etc/sysconfig/network/ifcfg-eth0
BOOTPROTO='static'
IPADDR='192.168.1.10/24'
STARTMODE='auto'
USERCONTROL='no'
NAME='Intel Ethernet Controller'
# Für VLAN Awareness auf der Karte
ETHERDEVICE='eth0'
# Wichtige Parameter
- STARTMODE:
auto(beim Booten),hotplug(wenn Kabel eingesteckt wird) odermanual. - IPADDR: Unterstützt CIDR-Notation (
/24).
# 3. Statisches Routing: Die ifroute Datei
Wegweiser im Netz.
Anstatt das Gateway in die ifcfg zu schreiben, nutzt SUSE separate Dateien für saubere Trennung.
Beispiel: /etc/sysconfig/network/ifroute-eth0
# Ziel Gateway Netmask Interface
default 192.168.1.1 - eth0
10.0.0.0/8 10.0.0.1 - eth0
# 4. Day-2 Operations: Automatisierung mit Ansible
Netzwerk als Code.
Da SUSE-Konfigurationen einfache Key-Value Paare sind, lassen sie sich perfekt mit dem template Modul von Ansible verwalten.
- name: Configure eth0 on SLES
template:
src: ifcfg-eth0.j2
dest: /etc/sysconfig/network/ifcfg-eth0
notify: Reload Wicked
# 5. Troubleshooting & “War Stories”
Wenn die Datei ignoriert wird.
# Story 1: “Die versteckte Quote-Falle”
Symptom: Das Interface bekommt eine IP, aber die Subnetzmaske ist falsch.
Ursache: In SUSE müssen Werte oft in einfachen Anführungszeichen stehen (z.B. IPADDR='10.0.0.5/24'). Fehlen diese oder werden doppelte genutzt, parst der alte Shell-Parser von Wicked die Zeile manchmal falsch.
Lösung: Nutzen Sie immer testparm für Samba oder in diesem Fall wicked show-config, um zu sehen, was das System wirklich verstanden hat.
# Story 2: “Der Device-Name-Change”
Symptom: Nach einem Kernel-Update heißt die Karte plötzlich enp3s0 statt eth0. Die ifcfg-eth0 wird ignoriert.
Ursache: Predictable Network Interface Naming.
Lösung: Sie haben zwei Möglichkeiten:
- Datei umbenennen zu
ifcfg-enp3s0. - Die Karte via MAC-Adresse in der Datei pinnen:
LLADDR='00:11:22:33:44:55'.
# 6. Fazit & Empfehlung
- YaST vs. Manual: Nutzen Sie YaST für die erste Konfiguration und manuelle Edits für Massen-Rollouts.
- Validierung: Führen Sie nach jedem Edit
wicked ifup allaus, um die Änderungen zu testen. - Sauberkeit: Löschen Sie alte Dateien wie
ifcfg-eth0.bak, da Wicked manchmal versucht, alle Dateien im Verzeichnis zu lesen.
# Anhang: Cheatsheet
| Aufgabe | Pfad / Befehl |
|---|---|
| Haupt-Konfig | /etc/sysconfig/network/config |
| DNS Resolver | /etc/resolv.conf |
| Statische Routen | /etc/sysconfig/network/ifroute-* |
| Aktive Config sehen | wicked show-config |
| Interface neu laden | wicked ifreload <if> |
| Hostname | /etc/hostname |