Linux/Netzwerk/Konfiguration/Adressen

Aus Foxwiki

Mehrere Adressen

Mehrere IP-Adressen auf einer Schnittstelle

Schnittstellen-Aliasing ermöglicht es, dass eine Schnittstelle mehrere IP-Adressen hat. Dies ist nützlich, wenn mehr als ein Server „über“ das Internet sichtbar sein soll. Beachten Sie, dass virtuelle Hosts mehrere Apache-Server mit einer einzigen IP-Adresse unterstützen können. Apache reagiert auf den vom Client im HTTP-Header angegebenen Domainnamen. In vielen anderen Situationen wird für jeden Server, der einen Port verwendet, eine externe IP benötigt.

Veraltete Methode

Dieser /etc/network/interfaces-Text weist eth0 drei IP-Adressen zu.

auto eth0 allow-hotplug eth0 iface eth0 inet static address 192.168.1.42/24 gateway 192.168.1.1

auto eth0:0 allow-hotplug eth0:0 iface eth0:0 inet static address 192.168.1.43/24

auto eth0:1 allow-hotplug eth0:1 iface eth0:1 inet static address 192.168.1.44/24

Eine Alias-Schnittstelle sollte nicht über „gateway“ oder „dns-nameservers“ verfügen; eine dynamische IP-Zuweisung ist zulässig.

Die oben genannte Konfiguration ist die vorherige traditionelle Methode, die die traditionelle Verwendung von „ifconfig“ zur Konfiguration von Netzwerkgeräten widerspiegelt. „ifconfig“ hat das Konzept von „aliased“ oder „virtuellen“ Schnittstellen eingeführt. Diese Arten von virtuellen Schnittstellen haben Namen in der Form „interface:integer“ und ifconfig behandelt sie sehr ähnlich wie reale Schnittstellen.

Heutzutage verwendet „ifupdown“ anstelle von „ifconfig“ das Dienstprogramm „ip“ aus dem Paket „iproute2“. Das neuere Dienstprogramm „ip“ verwendet nicht dasselbe Konzept von Aliasen oder virtuellen Schnittstellen. Es unterstützt jedoch die Zuweisung beliebiger Namen zu den Schnittstellen (diese werden als Labels bezeichnet). „ifupdown“ verwendet diese Funktion, um Alias-Schnittstellen zu unterstützen, während „ip“ verwendet wird.


iproute2-Methode

Außerdem unterstützt „ifupdown“ die Angabe mehrerer Schnittstellen durch Wiederholung von „iface“-Abschnitten mit demselben Schnittstellennamen. Der Hauptunterschied zur oben beschriebenen Methode besteht darin, dass alle diese Abschnitte von „ifupdown“ als eine einzige Schnittstelle behandelt werden, sodass der Benutzer sie nicht einzeln hinzufügen oder entfernen kann. Die Befehle „up“/„down“ sowie Skripte werden jedoch wie bisher für jeden Abschnitt aufgerufen.

Beachten Sie jedoch, dass diese Methode „gefährlich“ ist! Bestimmte Treiber-/Hardwarekombinationen können manchmal die Verbindung nicht herstellen, wenn den Alias-Schnittstellen keine Bezeichnungen zugewiesen sind. (Dies wurde bei Debian Wheezy und Jessie mit RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller (rev 01) mit automatischer Aushandlung auf 10/full beobachtet. Eine ähnliche Warnung einer anderen Person ist im Verlauf dieser Seite vorhanden.)

Dieser /etc/network/interfaces-Text weist eth0 drei IP-Adressen zu.

auto eth0 allow-hotplug eth0 iface eth0 inet static address 192.168.1.42/24 gateway 192.168.1.1

iface eth0 inet static address 192.168.1.43/24

iface eth0 inet static address 192.168.1.44/24

  1. Das Hinzufügen von IP-Adressen aus verschiedenen Subnetzen ist ebenfalls möglich

iface eth0 inet static address 10.10.10.14/24

Manuelle Vorgehensweise auto eth0 allow-hotplug eth0 iface eth0 inet static address 192.168.1.42/24 gateway 192.168.1.1 up ip addr add 192.168.1.43/24 dev $IFACE label $IFACE:0 down ip addr del 192.168.1.43/24 dev $IFACE label $IFACE:0 up ip addr add 192.168.1.44/24 dev $IFACE label $IFACE:1 down ip addr del 192.168.1.44/24 dev $IFACE label $IFACE:1 up ip addr add 10.10.10.14/24 dev $IFACE label $IFACE:2 down ip addr del 10.10.10.14/24 dev $IFACE label $IFACE:2