Ich habe das grundlegende Konzept der Verwendung verstanden /etc/network/interfaces
, aber alles, was ich online finde, sind Beispiele, Beispiel für Beispiel, aus denen ich kopieren und einfügen kann. Was ich vermisse, ist eine Erklärung der Syntax, eine Erklärung der Bedeutung der Befehle und welche Reihenfolge die Befehle erfordern. Ich möchte verstehen, dass das Kopieren und Einfügen in der Regel nicht ausreicht, da ich nicht an einem neuen Computer arbeite. Daher kann ich vorhandene Konfigurationen nicht einfach überschreiben, da dies viele Probleme verursachen würde. man interfaces
war nicht sehr hilfreich, da es sehr kompliziert geschrieben ist.
Beispielfragen, die ich habe: Was bedeutet inet
in einer iface
Zeile genau (ich konnte es nicht einmal in der Manpage finden), was bedeutet manual
in einer iface
Zeile genau (viele Beispiele verwenden es, aber laut Manpage benötigt es dann eine zusätzliche Konfigurationsdatei, welche die Beispiele fehlen), wann verwende oder brauche ich sie? Wann nicht? Was passiert genau mit den Schnittstellen, wenn ich eine Brücke erstelle?
quelle
manual
bedeutet, dass, wenn updown nichts dagegen unternimmt, Sie es manuell tun müssen.Antworten:
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 dielo
Schnittstelle diese Art der Verbindungskonfiguration.allow-auto interface
- Gleich wieauto
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:
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ätzlichiface eth0
wird eine Zeilengruppe erstellt, dieeth0
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 gebeninet wvdial
, um die Konfiguration dieser Schnittstelle an daswvdialconf
Skript weiterzuleiten . Das Tupelinet
/inet6
+option
wird die Version des definiert IP - Protokolls , das verwendet wird , und die Art und Weise dieser Adresse ( so konfiguriert werdenstatic
,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:
In diesem Beispiel wird
eth0
eine VLAN-Schnittstelle aufgerufen und erstelltvlan10
, 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 Schnittstellenetmask
- Netzwerkmaske. Kann weggelassen werden, wenn Sie eine cidr-Adresse verwenden. Beispiel: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 herunterzufahrenifdown
.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 aktualisierenifup
. Es liegt in Ihrer Phantasie, alle verfügbaren Optionen zu verwendeniputils
. Als Beispiel könnten wir verwendenup ip link set $IFACE up mtu 9000
, um Jumbo-Frames während desup
Vorgangs zu aktivieren (anstatt diemtu
Option selbst zu verwenden). Sie können auch jede andere Software aufrufen, dieup 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 verwendenrandom
, um eine zufällige MAC-Adresse zu erhalten.dns-nameservers
- IP-Adressen von Nameservern. Benötigt dasresolvconf
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 dieresolv.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. Optiondomain
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:quelle
inet
das irgendwas mit "Internet" zu tun? Ich habe irgendwie gelesen, dass es nur "IPv4" undinet6
"IPv6" bedeutet, aber der Begriff "inet" ist wirklich verwirrend, wenn man es sieht und mit der Abkürzung "Internet" verwechselt. Und die Namen, die man benutzt,eth0
sind definiert oder kann ich sie selbst auswählen? Wenn ich mehr als einen LAN-Adapter habe, wie kann ich feststellen, welchereth
zu welchem LAN-Adapter gehört?inet
= v4 undinet6
= v6). Die Namen der Benutzeroberfläche hängen weitgehend von der von Ihnen verwendeten Distribution ab und die Art und Weiseudev
ist konfiguriert. Debian verwendeteth*
undwlan*
für Kabel- und Funkschnittstellen. Fedora verwendet das Schema biosdevname, bei demem0
es sich um die erste integrierte Ethernet-Schnittstelle auf Ihrem Motherboard handelt, undp<slot>p<eth port>
den Namen für eine PCI-Karte. Sie können Netzwerknamen unter festlegen/etc/udev/rules.d/70-persistent-net.rules
oder einen Alias erstelleninterfaces
.Ich würde auch hinzufügen, dass:
Sie können mithilfe des Flags --verbose verfolgen, was mit ifup geschieht.
Ich bin mir nicht 100% sicher, aber es scheint, dass wenn ifup aufgerufen wird, alles von / etc / network / interfaces mit up ausgeführt wird ... wenn nicht anders angegeben.
Ich weiß nicht, wie es sich bezieht: Service-Networking ...
Wäre nett, wenn jemand darauf hinweisen würde, was nach dem Anruf passiert:
in Bezug auf ifup / ifdown.
quelle