Nun, lassen Sie es uns in Teile zerlegen, um das Verständnis zu erleichtern /etc/network/interfaces
:
Optionen für Verknüpfungsebene + Schnittstellentyp (im Allgemeinen die erste jeder Schnittstellenzeilengruppe und aufgerufene Adressfamilie + Methode nach interfaces(5)
Hilfeseiten):
auto interface
- Starten Sie die Schnittstelle (n) beim Booten. Aus diesem Grund verwendet die lo
Schnittstelle diese Art der Verbindungskonfiguration.
allow-auto interface
- Gleich wie auto
allow-hotplug interface
- Starten Sie die Schnittstelle, wenn ein "Hotplug" -Ereignis erkannt wird. In der realen Welt wird dies in den gleichen Situationen verwendet, auto
aber der Unterschied besteht darin, dass es auf ein Ereignis wie "von udev hotplug api erkannt" oder "kabelgebunden" wartet. Weitere Informationen finden Sie unter " Related Stuff (Hotplug) ".
Diese Optionen sind so ziemlich "Layer 2" -Optionen, die Verbindungszustände auf Schnittstellen einrichten, und stehen in keinem Zusammenhang mit "Layer 3" (Routing und Adressierung). Als Beispiel könnten Sie eine Link-Aggregation haben, bei der die bond0-Schnittstelle unabhängig vom Link-Status aktiv sein muss und deren Mitglieder nach einem Link-Status-Ereignis aktiv sein können:
auto bond0
iface bond0 inet manual
down ip link set $IFACE down
post-down rmmod bonding
pre-up modprobe bonding mode=4 miimon=200
up ip link set $IFACE up mtu 9000
up udevadm trigger
allow-hotplug eth0
iface eth0 inet manual
up ifenslave bond0 $IFACE
down ifenslave -d bond0 $IFACE 2> /dev/null
allow-hotplug eth1
iface eth1 inet manual
up ifenslave bond0 $IFACE
down ifenslave -d bond0 $IFACE 2> /dev/null
Auf diese Weise erstelle ich eine Link-Aggregation und die Schnittstellen werden hinzugefügt und bei Kabelverbindungszuständen entfernt.
Häufigste Schnittstellentypen:
Alle folgenden Optionen sind ein Suffix für eine definierte Schnittstelle ( iface <Interface_family>
). Grundsätzlich iface eth0
wird eine Zeilengruppe erstellt, die eth0
auf einem Ethernet-Gerät aufgerufen wird. iface ppp0
sollte eine Punkt-zu-Punkt- Schnittstelle erstellen, und es könnte verschiedene Möglichkeiten zum Abrufen von Adressen geben inet wvdial
, um die Konfiguration dieser Schnittstelle an das wvdialconf
Skript weiterzuleiten . Das Tupel inet
/ inet6
+ option
wird die Version des definiert IP - Protokolls , das verwendet wird , und die Art und Weise dieser Adresse ( so konfiguriert werden static
, dhcp
, scripts
...). In den Online-Debian-Handbüchern erfahren Sie mehr darüber.
Optionen für Ethernet-Schnittstellen:
inet static
- Definiert eine statische IP-Adresse.
inet manual
- Definiert keine IP-Adresse für eine Schnittstelle. Wird im Allgemeinen von Schnittstellen verwendet, die Bridge- oder Aggregationsmitglieder sind, Schnittstellen, die im Promiscuous-Modus betrieben werden müssen ( z. B. Port Mirroring oder Netzwerk-TAPs ) oder auf denen ein VLAN-Gerät konfiguriert ist. Auf diese Weise bleibt die Schnittstelle ohne IP-Adresse erhalten.
inet dhcp
- Beziehen Sie die IP-Adresse über das DHCP-Protokoll.
inet6 static
- Definiert eine statische IPv6-Adresse.
Beispiel:
# Eth0
auto eth0
iface eth0 inet manual
pre-up modprobe 8021q
pre-up ifconfig eth0 up
post-down ifconfig eth0 down
# Vlan Interface
auto vlan10
iface vlan10 inet static
address 10.0.0.1
netmask 255.255.255.0
gateway 10.0.0.254
vlan-raw-device eth0
ip_rp_filter 0
In diesem Beispiel wird eth0
eine VLAN-Schnittstelle aufgerufen und erstellt vlan10
, die die Tag-Nummer 10 in einem Ethernet-Frame verarbeitet.
Häufige Optionen in einer Schnittstellenzeilengruppe (Layer 2 und 3):
address
- IP-Adresse für eine statische IP-konfigurierte Schnittstelle
netmask
- Netzwerkmaske. Kann weggelassen werden, wenn Sie eine cidr-Adresse verwenden. Beispiel:
iface eth1 inet static
address 192.168.1.2/24
gateway 192.168.1.1
gateway
- Das Standard-Gateway eines Servers. Achten Sie darauf, nur einen dieser Typen zu verwenden.
vlan-raw-device
- Definiert auf einer VLAN-Schnittstelle den "Vater".
bridge_ports
- Definieren Sie auf einer Bridge-Schnittstelle deren Mitglieder.
down
- Verwenden Sie den folgenden Befehl, um die Schnittstelle herunterzufahren ifdown
.
post-down
- Aktionen, die unmittelbar nach dem Ausfall der Schnittstelle ausgeführt werden.
pre-up
- Aktionen, bevor die Schnittstelle aktiv ist.
up
- Verwenden Sie den folgenden Befehl, um die Schnittstelle zu aktualisieren ifup
. Es liegt in Ihrer Phantasie, alle verfügbaren Optionen zu verwenden iputils
. Als Beispiel könnten wir verwenden up ip link set $IFACE up mtu 9000
, um Jumbo-Frames während des up
Vorgangs zu aktivieren (anstatt die mtu
Option selbst zu verwenden). Sie können auch jede andere Software aufrufen, die up sleep 5; mii-tool -F 100baseTx-FD $IFACE
5 Sekunden nach dem Hochfahren der Schnittstelle 100 Mbit / s Vollduplex erzwingen möchte .
hwaddress ether 00:00:00:00:00:00
- Ändern Sie die Mac-Adresse der Schnittstelle, anstatt die zu verwenden, die fest in rom codiert oder durch Algorithmen generiert wurde. Sie können das Schlüsselwort verwenden random
, um eine zufällige MAC-Adresse zu erhalten.
dns-nameservers
- IP-Adressen von Nameservern. Benötigt das resolvconf
Paket. Auf diese Weise können Sie alle Informationen konzentrieren, /etc/network/interfaces
anstatt sie /etc/resolv.conf
für DNS-bezogene Konfigurationen zu verwenden. Bearbeiten Sie die resolv.conf
Konfigurationsdatei nicht manuell, da sie von Programmen im System dynamisch geändert wird.
dns-search example.net
- Fügen Sie example.net als Domain an die Abfragen des Hosts an und erstellen Sie den FQDN. Option domain
von/etc/resolv.conf
wpa-ssid
- Drahtlos: Richten Sie eine drahtlose WPA-SSID ein.
mtu
- MTU- Größe. mtu 9000
= Jumbo Frame. Nützlich, wenn Ihre Linux-Box mit Switches verbunden ist, die größere MTU-Größen unterstützen. Kann einige Protokolle brechen (ich hatte schlechte Erfahrungen mit snmp und Jumbo-Frames).
wpa-psk
- Drahtlos: Legen Sie ein hexadezimal codiertes PSK für Ihre SSID fest.
ip_rp_filter 1
- Reverse Path Filter aktiviert. Nützlich in Situationen, in denen Sie 2 Routen zu einem Host haben, und dies das Paket zwingt, von dort zurückzukehren, wo es herkam (dieselbe Schnittstelle, die ihre Routen verwendet). Beispiel: Sie sind mit Ihrem LAN ( 192.168.1.1/24
) verbunden und haben einen DLNA-Server mit einer Schnittstelle in Ihrem LAN ( 192.168.1.10/24
) und einer anderen Schnittstelle in DMZ, um administrative Aufgaben auszuführen ( 172.16.1.1/24
). Während einer SSH-Sitzung von Ihrem Computer zu dlna dmz ip müssen die Informationen an Sie zurückgesendet werden, bleiben jedoch für immer hängen, da Ihr dlna-Server versucht, die Antwort direkt über die LAN-Schnittstelle zu übermitteln. Wenn rp_filter aktiviert ist, wird sichergestellt, dass die Verbindung von dort zurückkommt, wo sie herkommt. Mehr Infos hier .
Einige dieser Optionen sind nicht optional. Debian warnt Sie, wenn Sie beispielsweise eine IP-Adresse auf eine Schnittstelle ohne Netzmaske setzen.
Weitere gute Beispiele für die Netzwerkkonfiguration finden Sie hier .
Verwandte Sachen :
Links mit Informationen zur /etc/network/interfaces
Netzwerkkonfigurationsdatei:
manual
bedeutet, dass, wenn updown nichts dagegen unternimmt, Sie es manuell tun müssen.