Red Hat Enterprise Linux 3: Referenzhandbuch | ||
---|---|---|
Zurück | Kapitel 8. Netzwerk-Schnittstellen | Nach vorne |
Schnittstellen-Konfigurationsdateien steuern die Software-Schnittstellen der einzelnen Netzwerkschnittstellengeräte. Wenn das System bootet, verwendet es diese Dateien, um zu erfahren, welche Schnittstellen automatisch gestartet werden und wie diese zu konfigurieren sind. Diese Dateien heißen normalerweise ifcfg <Gerät>, wobei <Gerät> sich auf den Namen des Geräts bezieht, das von der Konfigurationsdatei gesteuert wird.
Zu den am meisten verwendeten Schnittstellendateien gehört auch ifcfg-eth0, mit der die erste Ethernet Netzwerk-Schnittstellen-Karte im System, auch NIC genannt, gesteuert wird. In einem System mit mehreren NICs gibt es entsprechend mehrere ifcfg eth<X> Dateien (wobei <X> eine eindeutige Nummer ist, je nach der entsprechenden Schnittstelle). Da jedes Gerät über eine eigene Konfigurationsdatei verfügt, können Sie die Funktionalität jeder einzelnen Schnittstelle steuern.
Nachfolgend ist eine ifcfg-eth0-Beispielsdatei für ein System mit einer festen IP-Adresse:
DEVICE=eth0 BOOTPROTO=none ONBOOT=yes NETWORK=10.0.1.0 NETMASK=255.255.255.0 IPADDR=10.0.1.27 USERCTL=no |
Die in einer Schnittstellen-Konfigurationsdatei benötigten Werte können sich auf der Grundlage von anderen Werten ändern. Die ifcfg-eth0-Datei für eine Schnittstelle mit DHCP sieht beispielsweise etwas anders aus, weil die IP-Information vom DHCP-Server zur Verfügung gestellt wird:
DEVICE=eth0 BOOTPROTO=dhcp ONBOOT=yes |
Network Administration Tool (redhat-config network) macht es recht einfach, in den verschiedenen Schnittstellen-Konfigurationsdateien Änderungen vorzunehmen (Anleitungen zur Verwendung dieses Tools finden Sie im Kapitel Netzwerk-Konfiguration im Red Hat Enterprise Linux Handbuch zur System-Administration).
Sie können die Konfigurationsdateien für eine bestimmte Netzwerkschnittstelle auch manuell bearbeiten.
Folgend ist eine Liste mit konfigurierbaren Parametern für eine Konfigurationsdatei einer Ethernet-Schnittstelle:
BOOTPROTO=<Protokoll>, wobei<Protokoll> für eine der folgenden Varianten stehen kann:
none — Es sollte kein Boot-Time-Protokoll verwendet werden.
bootp — Das BOOTP-Protokoll sollte verwendet werden.
dhcp — Das DHCP-Protocoll sollte verwendet werden.
BROADCAST=<Adresse>, wobei <Adresse> für die Broadcast-Adresse steht. Diese Anweisung wird missbilligt.
DEVICE=<Name>, wobei <Name> der der Name des physischen Geräts ist (ausgenommen dynamisch-zugewiesene PPP- Geräte, bei denen es der logische Name) ist.
DHCP_HOSTNAME — Benutzen Sie diese Option lediglich, wenn der DHCP-Server den Client erfordert vor dem Erhalten einer IP-Adresse einen Hostnamen anzugeben. (Der DHCP-Server-Daemon in Red Hat Enterprise Linux unterstützt dieses Feature nicht.)
DNS{1,2}=<Adresse>, wobei <Adresse> eine Name-Server-Adresse ist, die in /etc/resolv.conf gesetzt wird, wenn die Anweisung PEERDNS auf yes steht.
HWADDR=<MAC-address>, wobei <MAC-address> die Hardware-Adresse des Ethernet-Geräts ist. Diese hat das Format AA:BB:CC:DD:EE:FF. Diese Anweisung ist für Rechner mit mehreren NICs nützlich, um sicherzustellen, dass die Schnittstellen den richtigen Gerätenamen zugewiesen werden, unabhängig von der Lade-Reihenfolge der NIC-Module. Diese Anweisung sollte nicht in Verbindung mit MACADDR verwendet werden.
IPADDR=<Adresse>, wobei <Adresse> die IP-Adresse ist.
MACADDR=<MAC-address>, wobei <MAC-address> die Hardware-Adresse des Ethernet-Geräts ist. Diese hat das Format AA:BB:CC:DD:EE:FF. Diese Anweisung wird verwendet um einer Schnittstelle eine MAC-Adresse zuzuweisen, wobei die der physischen NIC überschrieben wird. Diese Anweisung sollte nicht in Verbindung mit HWADDR verwendet werden.
MASTER=<bond-interface>, wobei <bond-interface> das Channel-Bonding-Interface ist, zu dem die Ethernet-Schnittstelle verbunden ist.
Diese Anweisung wird zusammen mit der SLAVE-Anweisung verwendet.
Sehen Sie Abschnitt 8.2.3 für Weiteres zu Channel-Bonding-Interfaces.
NETMASK=<Maske>, wobei <Make> der Wert der Netzmaske ist.
NETWORK=<Adresse>, wobei <Adresse> die Netzwerkadresse ist. Diese Anweisung wird nicht länger verwendet.
ONBOOT=<Antwort>, wobei <Antwort> Folgendes bedeuten kann:
yes — Dieses Gerät sollte beim Booten aktiviert werden.
no — Dieses Gerät sollte nicht beim Booten aktiviert werden.
PEERDNS=<Antwort>, wobei <Antwort> Folgendes bedeuten kann:
yes — Ändern Sie /etc/resolv.conf, wenn die DNS-Anweisung gesetzt ist. Verwenden Sie DCHP, dann ist yes Standard.
no — ändern Sie /etc/resolv.conf nicht.
SLAVE=<bond-interface>, wobei <bond-interface> Folgendes bedeuten kann:
yes — Dieses Gerät wird vom in der MASTER-Direktive angegebenen Channel-Bonding-Interface gesteuert.
no — Dieses Gerät wird nicht vom in der MASTER-Direktive angegebenen Channel-Bonding-Interface gesteuert.
Diese Anweisung wird zusammen mit der MASTER-Anweisung verwendet.
Sehen Sie Abschnitt 8.2.3 für Weiteres zu Channel-Bonding-Interfaces.
SRCADDR=<Adresse>, wobei <Adresse> die angegebene Ausgangs-IP-Adresse für ausgehende Pakete ist.
USERCTL=<Antwort>, wobei <Antwort> Folgendes bedeuten kann:
yes — Nicht-root dürfen dieses Gerät kontrollieren.
no — Nicht-root dürfen dieses Gerät nicht kontrollieren.
Mit Red Hat Enterprise Linux ist es möglich zu anderen Hosts oder Netzwerken über eine sichere IP-Verbindung, als IPsec bekannt, zu verbinden. Anleitungen zur Einrichtung einer IPsec-Verbindung mit Network Administration Tool (redhat-config-network) sehen Sie das Kapitel Netzwerk-Konfiguration im Red Hat Enterprise Linux Handbuch zur System-Administration. Für das manuelle Einrichten von IPsec-Verbindungen, sehen Sie das Kapitel Virtuelle Private Netzwerke im Red Hat Enterprise Linux Sicherheitshandbuch.
Die Folgende ist die Datei ifcfg für eine Netzwerk-zu-Netzwerk IPsec-Verbindung für LAN A. Der eindeutige Name, mit dem die Verbindung in diesem Beispiel identifiziert wird ist ipsec1, weswegen die entsprechende Datei /etc/sysconfig/network-scripts/ifcfg-ipsec1 ist.
TYPE=IPsec ONBOOT=yes IKE_METHOD=PSK SRCNET=192.168.1.0/24 DSTNET=192.168.2.0/24 DST=X.X.X.X |
In diesem Beispiel ist X.X.X.X die öffentliche IP-Adresse des Ziel-IPsec-Routers.
Folgend ist eine Liste mit konfigurierbaren Parametern für eine IPsec-Schnittstelle:
DST=<address>, wobei <address> die IP-Adresse des IPsec Ziel-Host oder Router ist. Dies wird sowohl für Host-zu-Host, als auch für Netzwerk-zu-Netzwerk IPsec-Konfigurationen verwendet.
DSTNET=<network>, wobei <network> die Netzwerk-Adresse des IPsec Ziel-Netzwerks ist. Dies wird lediglich für Netzwerk-zu-Netzwerk IPsec-Konfigurationen verwendet.
SRC=<address>, wobei <address> die IP-Adress des IPsec Quellen-Host oder Router ist. Diese Einstellung ist optional und wird lediglich für Host-zu-Host IPsec-Konfigurationen verwendet.
SRCNET=<network>, wobei <network> die Netzwerk-Adresse des IPsec Ziel-Netzwerks ist. Dies wird lediglich für Netzwerk-zu-Netzwerk IPsec-Konfigurationen verwendet.
TYPE=<interface-type>, wobei <interface-type> IPSEC ist.
Siehe /usr/share/doc/initscripts-<version-number>/sysconfig.txt (ersetze <version-number> mit der Version des installierten initscripts-Pakets) für Konfigurationsparameter, wenn manuelle Key-Verschlüsselung mit IPsec verwendet wird.
Wenn racoon verwendet wird, um Key-Verschlüsselung automatisch zu verwalten, sind folgende Optionen erfordert:
IKE_METHOD=<encryption-method>, wobei <encryption-method> entweder PSK, X509 oder GSSAPI ist. Wenn PSK angegeben ist, muss der IKE_PSK-Parameter gesetzt sein. Wenn X509 angegeben ist, muss der IKE_CERTFILE-Parameter auch gesetzt sein.
IKE_PSK=<shared-key>, wobei <shared-key> der gemeinsame, geheime Wert für die PSK (Preshared Keys) Methode ist.
IKE_CERTFILE=<cert-file>, wobei <cert-file> eine gültige X.509 Zertifikatsdatei für den Host ist.
IKE_PEER_CERTFILE=<cert-file>, wobei <cert-file> eine gültige X.509 Zertifikatsdatei für den Remote-Host ist.
IKE_DNSSEC=<answer>, wobei <answer> yes ist. Der racoon-Daemon empfängt das X.509 Zertifikat des Remote-Host über DNS. Wenn ein IKE_PEER_CERTFILE angegeben ist, schließen Sie diesen Parameter nicht ein.
Für weitere Informationen zu Verschlüsselungsalgorithmen, die für IPsec verfügbar sind, sehen Sie die setkey man-Seite. Für weitere Informationen zu racoon, sehen Sie racoon und die racoon.conf man-Seiten.
Red Hat Enterprise Linux erlaubt Administratoren mehrere Netzwerk-Schnittstellen in einem einzelnen Kanal zusammenzuführen, indem die bonding Kernelmodule und eine spezielle Netzwerk-Schnitstelle, Channel-Bonding-Interface genannt, verwendet werden. Channel Bonding erlaubt es mehreren Netzwerk-Schnittstellen als eine zu arbeiten, die Bandbreite zu erhöhen und Redundanz zu gewähren.
Um ein Channel-Bonding-Interface zu erstellen, erzeugen Sie eine Datei im Verzeichnis /etc/sysconfig/network-scripts/ mit dem Namen ifcfg-bond<N>, wobei Sie <N> mit der Nummer der Schnittstelle, z.B. 0, ersetzen.
Der Inhalt der Datei kann dem Typ der Schnittstelle entsprechen, die in einem Channel-Bonding-Interface verwendet wird, wie einer Ethernet-Schnittstelle. Der einzige Unterschied ist, dass die DEVICE=-Direktive auf bond<N> gesetzt werden muss, wobei <N> die Nummer der Schnittstelle ist.
Die Folgende ist ein Beispiel einer Channel-Bonding Konfigurationsdatei:
DEVICE=bond0 BOOTPROTO=none ONBOOT=yes NETWORK=10.0.1.0 NETMASK=255.255.255.0 IPADDR=10.0.1.27 USERCTL=no |
Nachdem das Channel-Bonding-Interface erzeugt wurde, müssen die zu bindenden Netzwerk-Schnittstellen konfiguriert werden, indem die MASTER=-und SLAVE=-Anweisungen zu deren Konfigurationsdateien hinzugefügt werden. Die Konfigurationdateien der gebundenen Schnittstellen können fast identisch sein.
Wenn, zum Beispiel, zwei Ethernet-Schnittstellen gebunden werden, können beide, eth0 und eth1, wie im folgenden Beispiel aussehen:
DEVICE=eth<N> BOOTPROTO=none ONBOOT=yes MASTER=bond0 SLAVE=yes USERCTL=no |
In diesem Beispiel steht <N> für die Nummer der Schnittstelle.
Damit ein Channel-Bonding-Interface gültig ist, muss das Kernelmodul geladen sein. Um sicherzustellen, dass das Kernelmodul geladen ist, wenn das Channel-Bonding-Interface hochgefahren wird, muss folgende Zeile zur Datei /etc/modules.conf hinzugefügt werden:
alias bond<N> bonding |
<N> steht hierbei für die Nummer der Schnittstelle, wie 0. Für jedes konfigurierte Channel-Bonding-Interface muss ein entsprechender Eintrag in der Datei /etc/modules.conf stehen.
Ist /etc/modules.conf, das Channel-Bonding-Interface und sind die Netzwerk-Schnittstellen erst einmal konfiguriert, kann der Befehl ifup verwendet werden, um das Channel-Bonding-Interface hochzufahren.
![]() | Wichtig |
---|---|
Wichtige Aspekte des Channel-Bonding-Interface werden durch das Kernelmodul kontrolliert. Für weitere Informationen zur Kontrolle der bonding-Module, sehen Sie Abschnitt A.3.2. |
Zwei weniger verwendete Arten von Schnittstellen-Konfigurationsdateien sind Alias- und Clone Dateien.
Alias-Schnittstellen-Konfigurationsdateien haben das Format ifcfg-<if-name>:<alias-value>. Diese werden hauptsächlich verwendet, um mehrere Adressen zu einer einzelnen Schnittstelle zu binden.
Eine ifcfg-eth0:0-Datei kann z.B. so konfiguriert werden, dass sie DEVICE=eth0:0 und eine statische IP-Adresse 10.0.0.2 spezifieren kann und somit als Alias einer bereits konfigurierten Ethernet-Schnittstelle dienen kann, um ihre IP- Informationen über DHCP in ifcfg-eth0 zu empfangen. An dieser Stelle ist das eth0-Gerät mit einer dynamischen IP-Adresse verknüpft, kann aber jederzeit über die feste 10.0.0.2 IP-Adresse auf das System zurückgreifen.
![]() | Achtung |
---|---|
Alias-Schnittstellen unterstützen DHCP nicht. |
Bei der Namensgebung einer Clone-Schnittstellen-Konfigurationsdatei sollten folgende Konventionen eingehalten werden: ifcfg-<if-name>-<clone-name>. Während mit einer Alias-Datei auf eine bereits bestehende Schnittstellen-Konfigurationsdatei zurückgegriffen werden kann, wird eine Clone-Datei zum Festlegen zusätzlicher Optionen während der Angabe einer Schnittstelle verwendet. Die standardmäßige DHCP Ethernet-Schnittstelle mit dem Namen eth0 kann deshalb wie folgt oder ähnlich aussehen:
DEVICE=eth0 ONBOOT=yes BOOTPROTO=dhcp |
Da USERCTL auf no eingestellt ist, können Benutzer, wenn nichts anderes angegeben wird, diese Schnittstelle nicht starten oder beenden. Um den Benutzern dies zu ermöglichen, erstellen Sie einen Clone durch Kopieren von ifcfg-eth0 nach ifcfg-eth0-user und fügen Sie folgende Zeile zu ifcfg-eth0-user hinzu:
USERCTL=yes |
Wenn ein Benutzer mit dem Befehl /sbin/ifup eth0-user die eth0-Schnittstelle startet, werden die Konfigurationsoptionen von ifcfg-eth0 und ifcfg-eth0-user kombiniert. Dies ist zwar nur ein sehr einfaches Beispiel, diese Methode kann über für viele verschiedene Optionen und Schnittstellen verwendet werden.
Der einfachste Weg zur Erstellung von Alias- und Clone-Schnittstellen-Konfigurationsdateien ist die Verwendung des grafischen Network Administration Tool. Weitere Informationen zur Verwendung dieses Tools finden Sie im Kapitel Netzwerk-Konfiguration im Red Hat Enterprise Linux Handbuch zur System-Administration.
Wenn Sie über einen Dialup-Account mit dem Internet verbinden, brauchen Sie eine Konfigurationsdatei für diese Schnittstelle.
PPP-Schnittstellendateien haben das Format ifcfg-ppp<X> (wobei <X> eine eindeutige, einer spezifischen Schnittstelle entsprechende Nummer ist).
Die Konfigurationsdatei der PPP-Schnittstelle wird automatisch erzeugt, wenn Sie wvdial, Network Administration Tool oder Kppp verwenden, um einen Dialup-Account zu erzeugen. Sie können diese Datei aber auch manuell erstellen und bearbeiten.
Folgend ist eine typische ifcfg-ppp0-Datei:
DEVICE=ppp0 NAME=test WVDIALSECT=test MODEMPORT=/dev/modem LINESPEED=115200 PAPNAME=test USERCTL=true ONBOOT=no PERSIST=no DEFROUTE=yes PEERDNS=yes DEMAND=no IDLETIMEOUT=600 |
Serial Line Internet Protocol (SLIP) ist eine weitere Dialup-Schnittstelle, wird im allgemeinen aber seltener verwendet. Ein typischer Name für die Schnittstellen-Konfigurationsdatei der SLIP-Dateien ist z.B. ifcfg-sl0.
Folgende Optionen können in diesen Dateien verwendet werden:
DEFROUTE=<Antwort>, wobei <Antwort> Folgendes bedeuten kann:
yes — Stellt diese Schnittstelle als Standardroute ein.
no — Stellt diese Schnittstelle nicht als Standardroute ein.
DEMAND=<Antwort>, wobei <Antwort> Folgendes bedeuten kann:
yes — Mit dieser Schnittstelle kann pppd eine Verbindung starten, wenn darauf zugegriffen wird.
no — Verbindungen mit dieser Schnittstelle müssen manuell hergestellt werden.
IDLETIMEOUT=<Wert>, wobei <Wert> die Sekunden ohne Aktivität darstellt, nach denen die Schnittstelle die Verbindung selbst unterbricht.
INITSTRING=<Zeichenkette>, wobei <Zeichenkette> die erste Zeichenfolge ist, die an das Modem übergeben wird. Diese Option wird hauptsächlich von SLIP-Schnittstellen verwendet.
LINESPEED=<Wert>, wobei <Wert> die Baudrate des Gerätes angibt. Zu den möglichen Standardwerten gehören 57600, 38400, 19200 und 9600.
MODEMPORT=<Gerät>, wobei <Gerät> der Name des Serial-Geräts ist, das die Verbindung für die Schnittstelle herstellt.
MTU=<Wert>, wobei <Wert> die Maximum Transfer Unit (MTU)-Einstellung für die Schnittstelle ist. Die MTU bezieht sich auf die größtmögliche Zahl von Daten (in Bytes), die ein Frame übertragen kann, die Header-Information nicht mitgezählt. Bei einigen Dial-up-Situationen hat die Einstellung dieses Werts auf 576 zur Folge, dass weniger Pakete ausgelassen werden (DROP) und die Durchlässigkeit für Verbindungen leicht erhöht wird.
NAME=<Name>, wobei <Name> sich auf den Oberbegriff der Konfigurationssammlung für Dialup-Verbindungen bezieht.
PAPNAME=<Name>, wobei <Name> für den Benutzernamen steht, der während der Änderung des Password Authentication Protocol (PAP) vergeben wurde und Ihnen die Verbindung zu einem Remote-System ermöglicht.
PERSIST=<Antwort>, wobei <Antwort> Folgendes bedeuten kann:
yes — Diese Schnittstelle sollte ständig aktiviert sein, auch wenn nach einem Abbruch das Modem deaktiviert wird.
no — Diese Schnittstelle sollte nicht ständig aktiv sein.
REMIP=<Adresse>, wobei <Adresse> die IP-Adresse des Remote-Systems ist. Wird üblicherweise nicht festgelegt.
WVDIALSECT=<Name>, wobei <Name> dieser Schnittstelle in /etc/wvdial.conf eine Anwähl-Konfiguration zuweist, die die anzuwählende Telefonnummer und andere wichtige Informationen für die Schnittstelle enthält.
Weitere übliche Schnittstellen-Konfigurationsdateien, die diese Optionen verwenden, sind die folgenden:
ifcfg-lo — Ein lokale Loopback-Schnittstelle wird oft zum Testen verwendet, wie auch in Applikationen, die eine zum System zurückweisende IP-Adresse benötigen. Jegliche Daten, die zum Loopback-Gerät gesendet werden, werden augenblicklich zur Netzwerkschicht des Host zurückgegeben.
![]() | Warnung |
---|---|
Bearbeiten Sie niemals das Loopback-Schnittstellenskript /etc/sysconfig/network-scripts/ifcfg-lo von Hand. Andernfalls kann die richtige Funktionsweise des Systems beeinträchtigt werden. |
ifcfg-irlan0 — Eine Infrarot-Schnittstelle sorgt dafür, dass Informationen zwischen Geräten wie Laptop und Drucker über einen Infrarot-Link fließen, welcher ähnlich arbeitet wie ein Ethernet-Gerät, mit dem Unterschied, dass es normalerweise über eine Peer-to-Peer-Verbindung läuft.
ifcfg-plip0 — Eine Parallel-Line-Interface-Protocol (PLIP)-Verbindung arbeitet auf ähnliche Weise, mit dem Unterschied, dass sie eine parallelen Schnittstelle verwendet.
ifcfg-tr0 — Token Ring Topologien sind nicht mehr so verbreitet auf Local Area Networks (LANs), da sie durch Ethernet verdrängt wurden.
Zurück | Zum Anfang | Nach vorne |
Netzwerk-Schnittstellen | Nach oben | Schnittstellen-Kontrollskripts |