Megértettem a /etc/network/interfaces
használatának alapvető koncepcióját, de az interneten csak példákat találok, például példa után, amelyből másolni-beilleszteni tudom. Hiányzik számomra a szintaxis magyarázata, a parancsok jelentésének magyarázata és a parancsok melyik sorrendje szükséges. Szeretném megérteni, mert a copy-paste legtöbbször nem elég, mert nem friss gépen dolgozom, ezért nem tudom csak felülírni a meglévő konfigurációkat, mert ez sok dolgot megtörne. A man interfaces
nem volt túl hasznos, mivel nagyon bonyolult.
Példakérdéseim vannak: mit csinál a inet
egy iface
sor pontosan azt jelenti (nem is találtam a kezelő oldalon), mit jelent manual
egy iface
sor pontosan azt jelenti (sok példa használja, de a manpage szerint ekkor szüksége van egy extra konfigurációs fájlra, amelyet a példák nem mutatnak be), mikor használom vagy szükségem van rájuk? Mikor nem? Amikor létrehozok híd, mi történik pontosan az interfészekkel?
Megjegyzések
Válasz
Nos, válasszuk szét darabokra, hogy könnyebben megértsük /etc/network/interfaces
:
Linkréteg + interfész típusopciók (általában az egyes interfész strófák közül az első, és a interfaces(5)
oldalak):
auto interface
– Indítsa el az interfész (ek) et indításkor. Ezért használja a lo
interfész ezt a fajta összekapcsolási konfigurációt.
allow-auto interface
– Ugyanaz, mint auto
allow-hotplug interface
– Indítsa el a felületet, amikor” hotplug “eseményt észlel. A való világban ezt ugyanazokban a helyzetekben használják, mint a auto
, de a különbség az, hogy várni fog egy olyan eseményre, mint “az udev hotplug api észleli” vagy a “kábellel összekapcsolt” . További információkért lásd: “ Kapcsolódó dolgok (hotplug) “.
Ezek az opciók nagyjából a “2. réteg” opciói, és a kapcsolati állapotok beállítása interfészeken, és nem kapcsolódnak a “3. réteghez” (útválasztás és címzés). Példaként megadhat egy link-összesítést, ahol a bond0 interfésznek fent kell lennie, függetlenül a kapcsolat állapotától, és tagjai fenn lehetnek egy link állapotú esemény után:
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
Tehát így létrehozok egy link összesítést , és az interfészek hozzáadódnak hozzá, és a kábelhálózati állapotoknál eltávolításra kerülnek.
A leggyakoribb interfész-típusok:
Az alábbi összes lehetőség egy meghatározott interfész utótagja (iface <Interface_family>
). Alapvetően a iface eth0
létrehoz egy strófát , amelyet eth0
-nek hívnak egy Ethernet-eszközön. . A iface ppp0
pontról pontra felületet kell létrehoznia, és különböző módon lehet megszerezni a címeket, például a inet wvdial
, amely továbbítja az interfész konfigurációját a wvdialconf
szkriptbe. A inet
/ inet6
+ option
szakasz meghatározza a IP-protokoll , amelyet használni fog, és a cím konfigurálásának módja (static
, dhcp
, scripts
…). A online Debian kézikönyvek további részleteket tartalmaznak erről.
Beállítások az Ethernet interfészeken:
inet static
– Statikus IP-címet határoz meg.
inet manual
– Nem határoz meg IP-címet az interfészhez. Általában olyan interfészek használják, amelyek híd- vagy összesítő tagok, olyan interfészek, amelyeknek elengedhetetlen módban kell működniük ( pl. Porttükrözés vagy hálózati TAP-ok ), vagy amelyeken VLAN-eszköz van konfigurálva. Ez az interfész fenntartása IP-cím nélkül.
inet dhcp
– IP-cím beszerzése DHCP protokollon keresztül.
inet6 static
– Statikus IPv6 címet határoz meg.
Példa:
# 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
Ez a példa felhozza a eth0
-t, és létrehoz egy VLAN interfész nevű vlan10
, amely a 10-es címkeszámot egy Ethernet-kereten dolgozza fel.
Általános lehetőségek egy interfész szakaszon belül (2. és 3. réteg):
address
– IP-cím egy statikus IP-konfigurált felülethez
netmask
– Hálózati maszk. Cidr címet használva megsemmisíthető. Példa:
iface eth1 inet static address 192.168.1.2/24 gateway 192.168.1.1
gateway
– A kiszolgáló alapértelmezett átjárója. Vigyázzon, hogy ebből a fickóból csak az egyiket használja.
vlan-raw-device
– A VLAN felületen meghatározza az “apját”.
bridge_ports
– Hídinterfészen határozza meg tagjait.
down
– A következő paranccsal le lehet léptetni az interfészt a ifdown
.
post-down
– A kezelőfelület leállása után közvetlenül végrehajtott műveletek.
pre-up
– Műveletek az interfész működésének megkezdése előtt.
up
– A következő paranccsal növelheti az interfészt a ifup
. A fantáziádon múlik, hogy használ-e bármilyen lehetőséget, amely elérhető a iputils
oldalon. Példaként használhatjuk az up ip link set $IFACE up mtu 9000
-t az jumbo keretek engedélyezéséhez a up
művelet (ahelyett, hogy maga a mtu
opciót használná). Hívhat bármely más szoftvert is, például a up sleep 5; mii-tool -F 100baseTx-FD $IFACE
-t, hogy a felület felállítása után 5 másodperccel 100Mbps teljes duplexet kényszerítsen.
hwaddress ether 00:00:00:00:00:00
– Változtassa meg az interfész mac címét ahelyett, hogy rom-ra kódolt vagy algoritmusok által létrehozott címet használna. A random
kulcsszóval randomizált mac címeket kaphat.
dns-nameservers
– a névszerverek IP-címei. Szüksége van a resolvconf
csomagra. Ez egy módja annak, hogy az összes információt koncentrálja a /etc/network/interfaces
fájlba, ahelyett, hogy a /etc/resolv.conf
-et használná a DNS-sel kapcsolatos konfigurációkhoz. Ne szerkessze a resolv.conf
konfigurációs fájlt manuálisan, mivel azt a rendszer programjai dinamikusan megváltoztatják.
dns-search example.net
– Csatolja az example.net-t tartományként a gazdagép lekérdezéseihez az FQDN létrehozásával. domain
opció a /etc/resolv.conf
wpa-ssid
lehetőségre – Vezeték nélküli: vezeték nélküli WPA SSID.
mtu
– MTU méret. mtu 9000
= Jumbo keret. Hasznos, ha a Linux doboz olyan kapcsolókkal van összekapcsolva, amelyek nagyobb MTU méreteket támogatnak. Megtörhet néhány protokollt (rossz tapasztalataim voltak az snmp és a jumbo keretekkel kapcsolatban).
wpa-psk
– Vezeték nélküli: Állítson be egy hexadecimális kódolású PSK-t az SSID-hez.
ip_rp_filter 1
– Fordított útvonal szűrő engedélyezve. Hasznos olyan helyzetekben, amikor 2 útvonal van egy gazdagéphez, és ez arra kényszeríti a csomagot, hogy visszatérjen onnan, ahonnan jött (ugyanaz az interfész, az útvonalakat használva). Példa: Csatlakoztál a lanodhoz (192.168.1.1/24
), és van egy dlna szervered, amelynek egyetlen felülete van a lan-on (192.168.1.10/24
) és más felület a dmz-n az adminisztratív feladatok végrehajtásához (172.16.1.1/24
). A számítógépről a dlna dmz ip-be kerülő ssh munkamenet során az információknak vissza kell térnie hozzád, de örökre lógni fognak, mert a dlna szerver megpróbálja a választ közvetlenül a LAN interfészén keresztül eljuttatni. Ha az rp_filter engedélyezve van, akkor biztosítani fogja hogy a kapcsolat onnan fog visszatérni, ahonnan jött. További információ itt .
Ezen opciók közül néhány nem kötelező. A Debian figyelmeztet ha például IP-címet ad egy interfészre netmaszk nélkül.
További jó példákat a hálózati konfigurációra itt találhat .
Kapcsolódó dolgok :
Linkek, amelyek a /etc/network/interfaces
hálózati konfigurációs fájl:
- HOGYAN: Vezeték nélküli biztonság – WPA1, WPA2, LEAP stb. .
- Hogyan kapcsolhatok össze két interfészt az ip / iproute2 szolgáltatással? .
- Mi az a hotplug esemény a felületről?
Megjegyzések
- Köszönöm, ezt sokat segít. Van-e
inet
köze a " internethez "?Olvastam valahol, hogy ez csak azt jelenti, hogy " IPv4 " ésinet6
" IPv6 ", de a " inet " kifejezés nagyon zavaró, amikor meglátja, és összekeveri rövidítéssel: " internet ". És az egyik által használt nevek, példáuleth0
, ezek definiálva vannak-e, vagy én választhatom ki magam? Ha egynél több LAN-adapterem van, akkor hogyan tudom megmondani, melyiketh
melyik LAN-adapterhez tartozik? - Mindkettő. Együtt definiálják az ip-cím megszerzésének módszerét (dhcp, statikus, ppp szkriptek, cím nélkül) és az ip protokoll verzióját (
inet
= v4 ésinet6
= v6). Az interfész nevek nagyban függenek az Ön által használt terjesztéstől, és audev
konfigurálásának módjától. A Debian aeth*
és awlan*
elemeket használja a kábel- és vezeték nélküli interfészekhez. A Fedora a biosdevname sémát használja, ahol aem0
az első beépített Ethernet interfész az alaplapon, és ap<slot>p<eth port>
a PCI neve. Javíthatja a hálózat nevét a/etc/udev/rules.d/70-persistent-net.rules
címen, vagy álnevet hozhat létre ainterfaces
címen. - A gateway – a szerver alapértelmezett átjárója. vigyázzon, hogy ebből a fickóból csak egyet használjon. " Ez strófánként egy vagy egy átjáró interfész az összes strófa között?
- Egy átjárónak kell lennie az összes strófa között, vagy, gondjai vannak az alapértelmezett útvonallal. A több átjáróval / több linkkel való együttműködéshez némi gondolkodás szükséges az iptables + csomag jelölés + ip szabályok használatával.
-
allow-hotplug
nem várja meg a háttérben a " kábel összekapcsolt " eseményeket az Ethernet portokon, és még soha nem tette meg. unix.stackexchange.com/a/520633/29483
Válasz
Azt is hozzátenném, hogy:
- az interfészek ifup / ifdown szolgáltatásokra vonatkoznak.
- Ha az allow-hotplug szoftvert használja, akkor ez nem az ifup / ifdown paranccsal kezdődik, a bcos-nak meg kell használnia a flag –allow = hotplug szót.
U nyomon követheti, hogy mi van Ha az ifup segítségével történik –verbose flag használatával.
Ezt nem 100% -ban védem, de úgy tűnik, hogy alapvetően akkor, ha az ifup-ot meghívják, az összes az / etc / network / interfész felől … ha nincs másképp megállapítva.
Nem tudom, hogy viszonyul hozzá: szolgáltatáshálózat …
Jó lenne, ha valaki felhívná a figyelmet a hívás után bekövetkező eseményekre:
service networking restart
az ifup / ifdown vonatkozásában.
Válasz
Ha opciókat kell hozzáadnia a resolvconf
csomag használatakor, azaz az Ubuntu-n ezt a konfigurációt a /etc/resolvconf/resolv.conf.d/base
fájlba helyezi:
# /etc/resolvconf/resolv.conf.d/base options timeout:1 attempts:1 rotate
manual
azt jelenti, hogy az ifupdown don ' nem tesz semmit velük szemben, kézzel kell megtennie.