Gentoo Linux alpha Kézikönyv: Hálózat beállítása
A kézikönyv következő része az OpenRC init rendszert futtató operációs rendszerek 'egyszerű' hálózati beállítását írja le, a netifrc hálózatkezelő rendszer használatával.
Azok az olvasók, akik systemd init rendszert használnak, tekintsék meg a hálózati részét a systemd cikkben.
A netifrc használatának megkezdése
A netifrc egy egyszerű keretrendszer, amely OpenRC alapú operációs rendszerek hálózati interfészeinek beállítására és kezelésére szolgál. A sys-apps/openrc automatikusan telepíti a net-misc/netifrc szoftvercsomagot, mivel a netifrc
USE jelölőzászló alapértelmezés szerint engedélyezett.
Interfész init szkript létrehozása
Az interfészek netifrc-vel való kezeléséhez egy init szkriptet kell létrehozni az adott interfészhez. Alapértelmezés szerint a netifrc telepíti a /etc/init.d/net.lo fájlt, amely szimbolikus hivatkozással használható új interfészek init szkriptjeinek létrehozásához.
Egy új init szkript létrehozásához az eth0 interfészhez egyszerűen készítsen szimbolikus hivatkozást az alapértelmezett net.lo szkriptre:
root /etc/init.d #
ln -s net.lo net.eth0
Az interfésznevek meghatározhatók a
ip link show
(ip l
rövidítve) vagy a ls /sys/class/net
parancs futtatásával.Az interfésznevek operációs rendszerenként eltérőek lesznek. A kernel alapú eszköznevek, amelyek eth<n> vagy wlan<n> kezdettel indulnak, az újraindítások során indexenként változhatnak. A udev beállíthat interfészneveket, amelyek wlp vagy enp kezdetűek, és ezek a nevek újraindítások között állandóak maradnak.
Netifrc interfészek beállítása
Az Ethernet interfészek gyakran működnek további beállítás nélkül, mivel a netifrc automatikusan DHCP szolgáltatást használ azokon az interfészeken, amelyekhez nincs megadott beállítás.
Ha további beállításra van szükség, például statikus IP-címek beállításához, akkor a /etc/conf.d/net fájl szerkeszthető:
/etc/conf.d/net
Statikus IP-cím beállítása az eth0 interfészhez# For static IP using CIDR notation
config_eth0="192.168.0.7/24"
routes_eth0="default via 192.168.0.1"
dns_servers_eth0="192.168.0.1 8.8.8.8"
# Statikus IP használata alhálózati maszk jelöléssel
config_eth0="192.168.0.7 netmask 255.255.255.0"
routes_eth0="default via 192.168.0.1"
dns_servers_eth0="192.168.0.1 8.8.8.8"
Ha egy interfészhez nincs megadva konfiguráció, akkor DHCP szolgáltatást használnak.
Netifrc interfészszolgáltatás-kezelés
A létrehozott és beállított interfész init szkriptekkel a netifrc szolgáltatások kezelhetők a rc-service segítségével. Az eth0 indításához:
root #
rc-service net.eth0 start
Hálózati hibakereséskor nézze meg a /var/log/rc.log fájlt. Hacsak a rc_logger változó nincs
NO
értékre állítva a /etc/rc.conf fájlban, akkor a rendszerindítási tevékenység adatai el lesznek mentve ebbe a naplófájlba.Az eth0 automatikus indításának az érdekében hozzáadható az alapértelmezett futási szinthez:
root #
rc-update add net.eth0 default
Fejlett beállítás
A config_{interface} változó - ahol a {interface}
egy interfész neve, például eth0
- az interfész beállításának a központi eleme. A változó értéke egy magas szintű utasításlista a megadott interfész beállításához.
Itt van egy lista a beépített utasításokról:
Érték | Leírás |
---|---|
null
|
Semmit se nem csinál. |
noop
|
Ha az interfész aktív, és van cím, akkor a beállítást sikeresen megszakítja. |
IPv4 vagy IPv6 cím. | Cím hozzáadása az interfészhez. |
dhcp , adsl vagy apipa (vagy egy harmadik fél moduljából származó egyéni érték).
|
Futtassa azt a modult, amely biztosítja a parancsot. Például a dhcp egy olyan modult fog futtatni, amely DHCP szolgáltatást biztosít (például dhcpcd, dhclient stb. révén).
|
A parancs sikertelenségének kezeléséhez egy megfelelő tartalékérték adható meg a fallback_{interface} változó segítségével. Az értéknek pontosan meg kell egyeznie a megfelelő config_{interface} változó szerkezetével.
Lehetséges ezeket az értékeket összeláncolni. Íme néhány valós példa:
/etc/conf.d/net
Példák a beállításra# Adding three IPv4 addresses
config_eth0="192.168.0.2/24
192.168.0.3/24
192.168.0.4/24"
# Adding an IPv4 address and two IPv6 addresses
config_eth0="192.168.0.2/24
4321:0:1:2:3:4:567:89ab
4321:0:1:2:3:4:567:89ac"
# Keep our kernel assigned address, unless the interface goes
# down so assign another via DHCP. If DHCP fails then add a
# static address determined by APIPA
config_eth0="noop
dhcp"
fallback_eth0="null
apipa"
A tartalék sorrendje fontos! Ha a null opció nem lett megadva, akkor az
apipa
csak akkor futna, ha a noop
meghiúsul.Amikor az
ifconfig
modult használja és több címet ad hozzá, akkor az extra címekhez interfész aliasok jönnek létre. Tehát a fenti két példa alapján a felhasználók eth0, eth0:1 és eth0:2 interfészeket kapnak. Ezekkel az interfészekkel nem lehet semmi különlegeset tenni, mivel a kernel és más programok egyszerűen eth0:1 és eth0:2 interfészekként kezelik őket.A APIPA (kézikönyv) és a DHCP (kézikönyv) a moduláris hálózati rész című részben kerülnek megvitatásra.
Hálózati függőségek
Az /etc/init.d/ könyvtárban található init szkriptek függhetnek egy adott hálózati interfésztől vagy egyszerűen a "net"-től. Minden hálózati interfész a Gentoo init rendszerében biztosítja a "net" nevű szolgáltatást.
Ha az /etc/rc.conf fájlban a rc_depend_strict változó értéke YES
-re van állítva, akkor minden olyan hálózati interfésznek, amely biztosítja a "net" szolgáltatást, aktívnak kell lennie, mielőtt a "net" függőség teljesítettnek tekinthető. Más szóval, ha egy rendszernek van net.eth0 és net.eth1 interfésze, és egy init szkript a "net"-től függ, akkor mindkettőt engedélyezni kell.
Másrészt, ha a rc_depend_strict="NO"
van beállítva, akkor a "net" függőség már akkor teljesítettnek tekinthető, amikor legalább egy hálózati interfész működésbe lép.
Egy hálózati interfész, mint például a net.br0, függhet a net.eth0 és net.eth1 interfészektől. Ha a net.eth1 egy vezeték nélküli vagy PPP eszköz, amely konfigurálást igényel, mielőtt hozzáadható a hídhoz, ezt nem lehet megtenni az /etc/init.d/net.br0 fájlban, mivel ez egy szimbolikus link a net.lo-hoz.
A megoldás az, hogy meghatározza az rc_net_{interface}_need beállítást az /etc/conf.d/net fájlban:
/etc/conf.d/net
Adding a net.br0 dependencyrc_net_br0_need="net.eth0 net.eth1"
Ez önmagában nem elegendő. A Gentoo hálózati init szkriptjei virtuális függőséget használnak "net" néven, hogy tájékoztassák a rendszert, amikor a hálózat elérhető. A fenti esetben egyértelműen csak akkor szabadna a hálózatot elérhetőnek jelölni, amikor a net.br0 működik, nem pedig amikor a többi. Ezt a következőképpen kell beállítani az /etc/conf.d/net fájlban is:
/etc/conf.d/net
Virtuális függőségek és rendelkezések frissítése a hálózathozrc_net_eth0_provide="!net"
rc_net_eth1_provide="!net"
A függőségek részletesebb ismertetésének az érdekében tekintse meg a Gentoo Kézikönyv init szkriptek írásáról szóló szakaszát.
Változónevek és értékek
A változók nevei dinamikusak. Általában a következő szerkezetet követik: {variable}_{interface|mac|essid|apmac}
. Például a dhcpcd_eth0 változó az eth0-hoz tartozó dhcpcd opciók értékét tartalmazza, míg a dhcpcd_essid változó a dhcpcd opciók értékét tartalmazza, amikor bármelyik interfész csatlakozik az "essid" ESSID-hez.
Nincs szabály arra vonatkozóan, hogy az interfészneveknek ethx
formátumúnak kell lenniük. Például az alapértelmezett beállítás szerint a kernel a vezeték nélküli interfészeket olyan nevekkel látja el, mint wlanx
. Továbbá, a felhasználók által definiált interfészek, például hidak, bármilyen nevet kaphatnak. Hogy az élet még érdekesebb legyen, a vezeték nélküli hozzáférési pontok nevei tartalmazhatnak nem alfanumerikus karaktereket is - ez azért fontos, mert a felhasználók beállíthatják a hálózati paramétereket egyes ESSID-ekhez.
A Gentoo a hálózatkezeléshez Bash változókat használ, és a Bash-ban a változónevek nem tartalmazhatnak mást, mint angol alfanumerikus karaktereket. Ezt a korlátozást úgy kerüljük meg, hogy minden nem angol alfanumerikus karaktert _
(aláhúzás) karakterré alakítunk át.
A Bash másik hátránya a változók tartalma - bizonyos karaktereket ki kell kerülni. Ezt úgy lehet megoldani, hogy a \ (hátrafelé perjel) karaktert az elkerülendő karakter elé helyezzük. Az alábbi karaktereket kell így elkerülni: ", ' és \.
Például az My "\ NET
ESSID megadásához:
/etc/conf.d/net
Változók nevei# This does work, but the domain is invalid
dns_domain_My____NET="My \"\\ NET"
A fenti példa beállítja a DNS domént My "\ NET-re, amikor egy vezeték nélküli kártya csatlakozik egy AP-hez, amelynek ESSID-je My "\ NET.
Hálózati interfész nevek
Hogyan működik?
A hálózati interfész nevek nem véletlenszerűen vannak választva: A Linux kernel és az eszközkezelő (a legtöbb rendszerben az udev az eszközkezelő, bár mások is elérhetőek) rögzített szabályrendszeren keresztül választják ki az interfész nevét.
Amikor egy hálózati kártyát érzékel a rendszeren, a Linux kernel összegyűjti a szükséges adatokat erről a kártyáról. Ez magában foglalja:
- Az alaplapra ráforrasztott hálózati kártya regisztrált neve, amely később az ID_NET_NAME_ONBOARD értékben látható.
- Az a hely, ahol a hálózati kártya be van dugva, amely később az ID_NET_NAME_SLOT értékben látható.
- Az elérési útvonal, amelyen keresztül a hálózati kártya eszköz elérhető, amely később az ID_NET_NAME_PATH értékben látható.
- A (gyártó által biztosított) hálózati kártya MAC-címe, amely később az ID_NET_NAME_MAC értékben látható.
Ezen információk alapján az eszközkezelő dönti el, hogy miként nevezze el az interfészt a rendszeren. Alapértelmezés szerint az első három változó egyikének első találatát használja (ID_NET_NAME_ONBOARD, _SLOT vagy _PATH). Például, ha az ID_NET_NAME_ONBOARD értéke megtalálható és eno1
-re van állítva, akkor az interfész neve eno1 lesz.
Egy aktív interfész neve esetén a megadott változók értékei megjeleníthetők az udevadm segítségével:
root #
udevadm test-builtin net_id /sys/class/net/enp3s0 2>/dev/null
ID_NET_NAME_MAC=enxc80aa9429d76 ID_OUI_FROM_DATABASE=Quanta Computer Inc. ID_NET_NAME_PATH=enp3s0
Mivel a felső három változó közül az első (és valójában az egyetlen) találat az ID_NET_NAME_PATH, az értékét használjuk interfész névként. Ha egyik változó sem tartalmaz értéket, akkor a rendszer visszatér a kernel által megadott elnevezéshez (eth0, eth1, stb.).
Régi típusú kernel elnevezés használata
A változás előtt a hálózati interfész kártyákat maga a Linux kernel nevezte el, attól függően, hogy milyen sorrendben töltődnek be az illesztőprogramok (és más, esetleg homályosabb okokból). Ezt a viselkedést Ön még mindig engedélyezheti, ha a bootloader-ben a net.ifnames=0
boot paramétert be állítja.
Egyéni nevek használata
Az elnevezési séma megváltozásának nem az a célja, hogy az embereket összezavarja, hanem az interfész nevek könnyebb megváltoztatása. Tegyük fel, hogy egy rendszer két interfésszel rendelkezik, amelyeket egyébként eth0 és eth1 néven lennének elnevezve. Az egyik a hálózat vezetékes elérésére szolgál, a másik pedig a vezeték nélküli hozzáférésre. Az interfész elnevezés támogatásával a felhasználók ezeket lan0 (vezetékes) és wifi0 (vezeték nélküli) nevekkel hívhatják. Érdemes kerülni a korábban jól ismert nevek, mint például az eth* és wlan* használatát, mivel ezek még mindig ütközhetnek a javasolt nevekkel.
Tudja meg, mik a hálózati kártyák paraméterei, majd használja fel ezeket az információkat egy egyedi elnevezési szabály beállításához:
root #
udevadm test-builtin net_id /sys/class/net/eth0 2>/dev/null
ID_NET_NAME_MAC=enxc80aa9429d76 ID_OUI_FROM_DATABASE=Quanta Computer Inc.
root #
vim /etc/udev/rules.d/70-net-name-use-custom.rules
# First one uses MAC information, and 70- number to be before other net rules SUBSYSTEM=="net", ACTION=="add", ATTR{address}=="c8:0a:a9:42:9d:76", NAME="lan0"
root #
vim /etc/udev/rules.d/76-net-name-use-custom.rules
# Second one uses ID_NET_NAME_PATH information, and 76- number to be between # 75-net-*.rules and 80-net-*.rules SUBSYSTEM=="net", ACTION=="add", ENV{ID_NET_NAME_PATH}=="enp3s0", NAME="wifi0"
Mivel a szabályok az alapértelmezett előtt vannak aktiválva (a szabályok alfanumerikus sorrendben aktiválódnak, tehát a 70 megelőzi a 80-at), a szabályfájlban megadott nevek lesznek használva az alapértelmezettek helyett. A fájlnak adott számnak 76 és 79 között kell lennie (a környezeti változók egy 75-tel kezdődő szabály által vannak definiálva, és az alapértelmezett elnevezés egy 80-as számmal rendelkező szabályban történik).
Hálózati modulok
Netifrc támogatja a moduláris hálózati szkripteket, ami azt jelenti, hogy új interfésztípusok és beállításmodulok támogatása könnyen hozzáadható, miközben megmarad a kompatibilitás a meglévőkkel.
A modulok alapértelmezés szerint betöltődnek, ha a szükséges szoftvercsomag telepítve van. Ha a felhasználók itt megadnak egy modult, amelynek szoftvercsomagja nincs telepítve, akkor hibaüzenetet kapnak, amely jelzi, melyik szoftvercsomagot kell telepíteniük. Ideális esetben a modulok beállítása csak akkor használatos, ha két vagy több olyan szoftvercsomag van telepítve, amelyek ugyanazt a szolgáltatást nyújtják, és egyiket előnyben kell részesíteni a másikkal szemben.
Minden itt tárgyalt beállítás az /etc/conf.d/net fájlban van tárolva, kivéve, ha másként van megadva.
/etc/conf.d/net
Moduldefiníciók# Prefer ifconfig over iproute2
# modules="ifconfig"
# You can also specify other modules for an interface
# In this case we prefer dhclient over dhcpcd
modules_eth0="dhclient"
# You can also specify which modules not to use - for example you may be
# using a supplicant or linux-wlan-ng to control wireless configuration but
# you still want to configure network settings per ESSID associated with.
modules="!iwconfig"
Interfészkezelők
Két interfészkezelőt biztosítunk: ifconfig és iproute2. Ezek közül valamelyikre szükség van a hálózati beállítások elvégzéséhez.
Mindkettő alapértelmezés szerint telepítve van a rendszerprofil részeként. Az iproute2 egy erősebb és rugalmasabb szoftvercsomag. Az ifconfig és a net-tools már nem ajánlottak hálózati beállításokhoz.
Mivel az iproute2 és az ifconfig nagyon hasonló dolgokat végez, ezért lehetővé tesszük alapvető beállításaik együttműködését. Például az alábbi beállítás a használt modultól függetlenül működik.
/etc/conf.d/net
Példa beállításconfig_eth0="192.168.0.2/24"
config_eth0="192.168.0.2 netmask 255.255.255.0"
DHCP
A DHCP egy eszköz IP-címének és más hálózati információk (DNS-szerver(ek), átjáró stb.) megszerzésére szolgáló módszer egy szerverről. Egy DHCP-szerver futása esetén a hálózaton a felhasználónak csak annyit kell tennie, hogy minden eszközt beállít a DHCP-beállítás információk megszerzésére, amelyet az eszköz automatikus beállítására használnak. Természetesen ehhez hálózati kapcsolat szükséges (pl. vezeték nélküli hozzáférési ponton, PPPoE-n stb. keresztül).
A DHCP szolgáltatást a dhclient vagy a dhcpcd biztosíthatja. Mindkét DHCP modulnak megvannak a maga előnyei és hátrányai. Itt egy rövid összefoglaló:
DHCP modul | Szoftvercsomag | Érvek | Ellenérvek |
---|---|---|---|
dhclient | net-misc/dhcp | Az ISC által készített szoftver, ugyanazok az emberek, akik a BIND DNS szoftvert is készítik. Nagyon konfigurálható. Használható DHCPv4 vagy DHCPv6 biztosítására. | A konfiguráció túlságosan bonyolult, a szoftver meglehetősen terjedelmes, nem tud NTP szervereket szerezni a DHCP-ből, alapértelmezés szerint nem küld hostnevet. Már nem karbantartják upstream. |
dhcpcd | net-misc/dhcpcd | Hosszú ideig Gentoo alapértelmezett, nincs szükség külső eszközökre, aktívan fejlesztve Gentoo által. Egyidejűleg biztosít DHCPv4-et és DHCPv6-ot. | Néha lassú lehet, és nem fut háttérfolyamatként, amikor a bérlet végtelen. |
Ha több DHCP-kliens van telepítve, akkor meg lehet határozni, hogy melyik klienst használja az "modules" változó beállításával, pl. modules="dhcpcd"
. Egyébként, ha a dhcpcd telepítve van, akkor az alapértelmezés szerint használva lesz.
A specifikus opciók DHCP modulnak történő elküldéséhez használja a module_eth0="..." formátumot, ahol module a használt DHCP modul neve - például "dhcpcd_eth0".
Igyekszünk a DHCP-t viszonylag semlegessé tenni - ennek érdekében támogatjuk az alábbi parancsokat a dhcp_eth0 változóval. Alapértelmezés szerint egyik sem kerül beállításra:
release
- Az IP-cím felszabadítása újbóli felhasználás céljából.
nodns
- Ne írja felül az /etc/resolv.conf fájlt.
nontp
- Ne írja felül az /etc/ntp.conf fájlt.
nonis
- Ne írja felül az /etc/yp.conf fájlt.
/etc/conf.d/net
Példa DHCP (v4) beállítás# Only needed if more than one DHCP module is installed
modules="dhcpcd"
config_eth0="dhcp"
dhcpcd_eth0="-t 10" # Timeout after 10 seconds
dhcp_eth0="release nodns nontp nonis" # Only get an address
dhcpcd alapértelmezés szerint elküldi az aktuális hostnevet a DHCP-szervernek, így ezt már nem szükséges megadni.
/etc/conf.d/net
Példa DHCPv6 beállítás# Only needed if more than one DHCP module is installed
modules="dhclient"
config_eth0="dhcpv6"
# To use both DHCPv4 and DHCPv6 on a dual-stack network, remove the above line and uncomment the following lines
#config_eth0="dhcp
#dhcpv6"
# Futásidejű argumentumok továbbítása a dhclient számára a DHCPv6-hoz
dhclientv6_eth0="-t 10" # Időtúllépés 10 másodperc után
# Általános DHCPv6 opciók beállítása
dhcpv6_eth0="release nodns nontp nonis nogateway nosendhost"
ADSL a PPPoE/PPPoA segítségével
Először telepítse az ADSL szoftvert:
root #
emerge --ask net-dialup/ppp
Másodszor, hozza létre a PPP hálózati szkriptet és a hálózati szkriptet az Ethernet interfészhez, amelyet a PPP fog használni.
root #
ln -s /etc/init.d/net.lo /etc/init.d/net.ppp0
root #
ln -s /etc/init.d/net.lo /etc/init.d/net.eth0
Győződjön meg róla, hogy az rc_depend_strict értéke YES
legyen az /etc/rc.conf fájlban.
Most már be kell állítanunk a /etc/conf.d/net fájlt.
/etc/conf.d/net
Egy alapvető PPPoE beállításconfig_eth0=null (Specify the ethernet interface)
config_ppp0="ppp"
link_ppp0="eth0" (Specify the ethernet interface)
plugins_ppp0="pppoe"
username_ppp0='user'
password_ppp0='password'
pppd_ppp0="
noauth
defaultroute
usepeerdns
holdoff 3
child-timeout 60
lcp-echo-interval 15
lcp-echo-failure 3
noaccomp noccp nobsdcomp nodeflate nopcomp novj novjccomp"
rc_net_ppp0_need="net.eth0"
Lehetséges a jelszót a /etc/ppp/pap-secrets fájlban beállítani.
/etc/ppp/pap-secrets
Példa a pap-secrets jelszó beállításra# The * is important
"username" * "password"
Ha a PPPoE valamilyen USB modemmel van használva, akkor ügyeljen arra, hogy telepítse a br2684ctl szoftvercsomagot. Kérjük, olvassa el a /var/db/repos/gentoo/net-dialup/speedtouch-usb/files/README fájlt, hogy megismerje a megfelelő beállításnak a módját.
Kérjük, figyelmesen olvassa el az ADSL és PPP szakaszt a /usr/share/doc/netifrc-*/net.example.bz2 fájlban. Ez tartalmazza az összes beállítás részletesebb magyarázatát, amelyre bármely adott PPP beállításnak szüksége lehet.
APIPA (Automatic Private IP Addressing)
APIPA megpróbál szabad címet találni a 169.254.0.0-169.254.255.255 tartományban azzal, hogy az interfészen egy véletlenszerű címet pingel az arping segítségével. Ha nem érkezik válasz, akkor azt a címet hozzárendeli az interfészhez.
Ez csak olyan LAN-ok esetében hasznos, ahol:
- Nincs DHCP szerver.
- A rendszer nem csatlakozik közvetlenül az internethez.
- Az összes többi számítógép az APIPA-t használja.
Az APIPA támogatásának érdekében telepítse a net-misc/iputils szoftvercsomagot az arping
USE jelölőzászlóval, vagy telepítse a net-analyzer/arping szoftvercsomagot.
/etc/conf.d/net
APIPA beállítása# Try DHCP first - if that fails then fallback to APIPA
config_eth0="dhcp"
fallback_eth0="apipa"
# Just use APIPA
config_eth0="apipa"
Kötés (bonding)
A kapcsolat összekapcsolása (bonding) a hálózati sávszélesség növelése vagy a hardverhibákkal szembeni ellenálló képesség javítása érdekében történik. Ha egy rendszer két hálózati kártyával rendelkezik, akkor amelyek ugyanarra a hálózatra csatlakoznak, ezek összekapcsolhatók: Az alkalmazások csak egyetlen egy interfészt fognak látni, de valójában mind a két hálózati kártya használatban lesz.
A kapcsolat összekapcsolásának számos módja van. Néhányuk, mint például a 802.3ad LACP mód, támogatást és a hálózati kapcsoló további beállítását igényli. Az egyes opciókra vonatkozó hivatkozásokat a /usr/src/linux/Documentation/networking/bonding.txt fájl helyi másolata találja.
Először törölje a résztvevő interfészek beállítását:
/etc/conf.d/net
Interfész beállításának törléseconfig_eth0="null"
config_eth1="null"
config_eth2="null"
Ezután határozza meg a kapcsolódást az interfészek között:
/etc/conf.d/net
Kapcsolat definiálásaslaves_bond0="eth0 eth1 eth2"
config_bond0="192.168.100.4/24"
# Pick a correct mode and additional configuration options which suit your needs
mode_bond0="balance-alb"
Távolítsa el a net.eth* szolgáltatásokat a megfelelő futási szintről, majd hozzon létre egy net.bond0 szolgáltatást, és adja hozzá a megfelelő futási szinthez.
Áthidalás (802.1d támogatás)
Az áthidalás (hídkapcsolat) arra szolgál, hogy a különálló hálózatokat egyesítsünk. Például egy hálózat rendelkezhet egy szerverrel, amely egy ADSL modem segítségével csatlakozik az internethez, és egy vezeték nélküli adapterrel is, amely lehetővé teszi más eszközök számára, hogy ezen a modemen keresztül csatlakozzanak az internethez. Létrehozhatunk egy hidat, hogy az interfészeket összekapcsoljuk.
/etc/conf.d/net
Hid beállítása# Configure the bridge - "man brctl" for more details
bridge_forward_delay_br0=0
bridge_hello_time_br0=200
bridge_stp_state_br0=1
# To add ports to bridge br0
bridge_br0="eth0 eth1"
# You need to configure the ports to null values so dhcp does not get started
config_eth0="null"
config_eth1="null"
# Finally give the bridge an address - you could use DHCP as well
config_br0="192.168.0.1/24"
# Depend on eth0 and eth1 as they may require extra configuration
rc_net_br0_need="net.eth0 net.eth1"
A híd egyes beállításainak használatához tekintse meg a változónév dokumentációját.
IPv6 híd használatakor az SLAAC azt igényli, hogy az STP értéke
1
legyen, amint azt a fenti példa mutatja.= MAC-cím
A hálózati beállítás fájlban is lehetséges az interfészek MAC címének megváltoztatása.
/etc/conf.d/net
MAC cím megváltoztatásának a példája# To set the MAC address of the interface
mac_eth0="00:11:22:33:44:55"
# To randomize the last 3 bytes only
mac_eth0="random-ending"
# To randomize between the same physical type of connection (e.g. fibre,
# copper, wireless) , all vendors
mac_eth0="random-samekind"
# To randomize between any physical type of connection (e.g. fibre, copper,
# wireless) , all vendors
mac_eth0="random-anykind"
# Full randomization - WARNING: some MAC addresses generated by this may
# NOT act as expected
mac_eth0="random-full"
Alagutazás
Az alagutak létrehozása nem igényel további szoftver telepítését, mivel az interfész kezelője képes azt elvégezni.
/etc/conf.d/net
Alagút beállítása# For GRE tunnels
iptunnel_vpn0="mode gre remote 207.170.82.1 key 0xffffffff ttl 255"
# For IPIP tunnels
iptunnel_vpn0="mode ipip remote 207.170.82.2 ttl 255"
# To configure the interface
config_vpn0="192.168.0.2 peer 192.168.1.1"
VLAN (802.1q támogatás)
A VLAN támogatásához győződjön meg arról, hogy a sys-apps/iproute2 szoftvercsomag telepítve van, és hogy az iproute2 be van állítva beállító modul-ként (nem pedig az ifconfig).
A VLAN, vagy virtuális LAN, olyan hálózati eszközök csoportja, amelyek úgy viselkednek, mintha egyetlen hálózati szegmenshez csatlakoznának, még akkor is, ha valójában nem így van. A VLAN tagjai csak ugyanazon VLAN többi tagját láthatják, még akkor is, ha ugyanazt a fizikai hálózatot használják.
A VLAN-ok beállításához először adja meg a VLAN számokat a /etc/conf.d/net fájlban az alábbi módon:
/etc/conf.d/net
VLAN számok megadásavlans_eth0="1 2"
Ezután állítsa be az interfészt minden egyes VLAN-hoz:
/etc/conf.d/net
Interfész beállítása minden VLAN-hozconfig_eth0_1="172.16.3.1 netmask 255.255.254.0"
routes_eth0_1="default via 172.16.3.254"
config_eth0_2="172.16.2.1 netmask 255.255.254.0"
routes_eth0_2="default via 172.16.2.254"
A VLAN-specifikus beállításokat a vconfig kezeli a következőképpen:
/etc/conf.d/net
VLAN-ok beállításavlan1_name="vlan1"
vlan1_ingress="2:6 3:5"
eth0_vlan1_egress="1:2"
Egyes VLAN beállítások használatának érdekében konzultáljon a változónév dokumentációjával.
Bevezetés a vezeték nélküli hálózatokba
A vezeték nélküli hálózatok beállítása Linuxon általában meglehetősen egyszerű. Ön háromféleképpen állíthatja a wifit: Grafikus klienssel, szöveges módú interfésszel és parancssori interfésszel.
A legkönnyebb módja egy grafikus kliens használata, miután egy asztali környezet telepítve van. A legtöbb grafikus kliens, mint például a NetworkManager magától érthető kezelőfelülettel rendelkeznek. Kényelmes, kattintós felületet kínálnak, amely lehetővé teszi a felhasználók számára, hogy néhány másodperc alatt csatlakozzanak egy hálózatra.
A NetworkManager a fő grafikus felülete mellett szöveges módú és parancssori felületű segédprogramot is kínál. A net-misc/networkmanager szoftvercsomagot a
tools
USE jelölőzászló engedélyezésével telepítse. Az nmtui segédprogram különösen hasznos azoknak, akik nem használnak X vagy Wayland alapú asztali környezetet, de mégis egy könnyen használható eszközt szeretnének, amely nem igényel kézi konfigurációs fájlok szerkesztését.A vezeték nélküli hálózatok parancssorból történő beállítása néhány beállító fájl szerkesztésével is elvégezhető. Ez valamivel több időt vesz igénybe, de kevesebb szoftvercsomagot kell letölteni és telepíteni. Mivel a grafikus kliensek többnyire magától értetődőek (segítőkész képernyőfotókkal vannak ellátva a saját fejlesztői honlapjukon), ezért most a parancssori alternatívákra fogunk összpontosítani.
Három olyan szoftver létezik, amely támogatja a parancssorban történő vezeték nélküli beállítást: net-wireless/iw, net-wireless/wireless-tools, és net-wireless/wpa_supplicant. E három közül a net-wireless/wpa_supplicant a leginkább ajánlott. Fontos megjegyezni, hogy a vezeték nélküli hálózatok globálisan vannak beállítva, nem pedig interfészenként.
A net-wireless/iw szoftver, amely a net-wireless/wireless-tools utódja, szinte minden hálózati kártyát és illesztőprogramot támogat, de nem képes csatlakozni csak WPA titkosítású hozzáférési pontokhoz. Ha a hálózat csak WEP titkosítást kínál, vagy teljesen nyílt, akkor a net-wireless/iw az egyszerűsége miatt felülmúlja a többi szoftvercsomagot.
Néhány vezeték nélküli kártya le van tiltva alapértelmezés szerint. Aktiválásuk érdekében kérjük Önt, hogy tekintse meg a hardver dokumentációját. Néhány ilyen kártya feloldható a rfkill alkalmazás segítségével. Ebben az esetben használja a rfkill list parancsot az elérhető kártyák megtekintéséhez és a rfkill unblock INDEX parancsot a vezeték nélküli funkcionalitás aktiválásához. Ha nem, akkor a vezeték nélküli kártyát esetleg egy gombbal, kapcsolóval vagy speciális billentyűkombinációval kell feloldani a laptopon.
WPA supplicant
A WPA supplicant projekt egy olyan szoftvercsomagot biztosít, amely lehetővé teszi a felhasználók számára, hogy csatlakozzanak a WPA titkosítással ellátott hozzáférési pontokhoz.
root #
emerge --ask net-wireless/wpa_supplicant
A wpa_supplicant működéséhez szükséges, hogy a CONFIG_PACKET engedélyezve legyen a kernelben. Annak ellenőrzéséhez, hogy ez engedélyezve van-e a jelenlegi kernelben, próbálja meg a következőt:
root #
zgrep CONFIG_PACKET /proc/config.gz
root #
grep CONFIG_PACKET /usr/src/linux/.config
A USE zászlóktól függően a wpa_supplicant telepíthet egy Qt5-ben írt grafikus felületet, amely jól integrálódik a KDE-vel. Ennek eléréséhez engedélyezze a
USE="qt5"
opciót a net-wireless/wpa_supplicant szoftvercsomagnál.Ezután állítsa be a /etc/conf.d/net fájlt úgy, hogy a wpa_supplicant modul legyen az előnyben részesített, a wireless-tools helyett (ha mindkettő telepítve van, alapértelmezés szerint a wireless-tools az alapértelmezett).
/etc/conf.d/net
A wpa_supplicant használatának a kényszerítése# Prefer wpa_supplicant over wireless-tools
modules="wpa_supplicant"
A host-ap driver használatakor szükséges a hálózati kártyát "Managed módba" állítani, mielőtt a wpa_supplicant megfelelően tudná használni. Ezt úgy lehet elérni, hogy beállítja a következőt:
iwconfig_eth0="mode managed"
a /etc/conf.d/net fájlban.Ezután állítsa be a wpa_supplicant programot (amely kicsit bonyolultabb lehet a hozzáférési pontok biztonsági szintjétől függően). Az alábbi példa a /usr/share/doc/wpa_supplicant-<version>/wpa_supplicant.conf.gz fájlból származik és egyszerűsítve van, amely a wpa_supplicant szoftvercsomag része.
/etc/wpa_supplicant/wpa_supplicant.conf
Leegyszerűsített példa# The below line not be changed otherwise wpa_supplicant refuses to work
ctrl_interface=/var/run/wpa_supplicant
# Ensure that only root can read the WPA configuration
ctrl_interface_group=0
# Let wpa_supplicant take care of scanning and AP selection
ap_scan=1
# Simple case: WPA-PSK, PSK as an ASCII passphrase, allow all valid ciphers
network={
ssid="simple"
psk="very secret passphrase"
# The higher the priority the sooner we are matched
priority=5
}
# Same as previous, but request SSID-specific scanning (for APs that reject
# broadcast SSID)
network={
ssid="second ssid"
scan_ssid=1
psk="very secret passphrase"
priority=2
}
# Only WPA-PSK is used. Any valid cipher combination is accepted
network={
ssid="example"
proto=WPA
key_mgmt=WPA-PSK
pairwise=CCMP TKIP
group=CCMP TKIP WEP104 WEP40
psk=06b4be19da289f475aa46a33cb793029d4ab3db7a23ee92382eb0106c72ac7bb
priority=2
}
# Plaintext connection (no WPA, no IEEE 802.1X)
network={
ssid="plaintext-test"
key_mgmt=NONE
}
# Shared WEP key connection (no WPA, no IEEE 802.1X)
network={
ssid="static-wep-test"
key_mgmt=NONE
# Keys in quotes are ASCII keys
wep_key0="abcde"
# Keys specified without quotes are hex keys
wep_key1=0102030405
wep_key2="1234567890123"
wep_tx_keyidx=0
priority=5
}
# Shared WEP key connection (no WPA, no IEEE 802.1X) using Shared Key
# IEEE 802.11 authentication
network={
ssid="static-wep-test2"
key_mgmt=NONE
wep_key0="abcde"
wep_key1=0102030405
wep_key2="1234567890123"
wep_tx_keyidx=0
priority=5
auth_alg=SHARED
}
# IBSS/ad-hoc network with WPA-None/TKIP
network={
ssid="test adhoc"
mode=1
proto=WPA
key_mgmt=WPA-NONE
pairwise=NONE
group=TKIP
psk="secret passphrase"
}
Wireless tools
Kezdeti beállítás és managed mód
A vezeték nélküli eszközök projekt általános módot biztosít az alapvető vezeték nélküli interfészek beállítására a WEP biztonsági szintig. Bár a WEP gyenge biztonsági módszer, még mindig elterjedt a világban.
A vezeték nélküli eszközök beállítását néhány fő változó szabályozza. Az alábbi példa beállító fájl tartalmazza az összes szükséges beállítást. Egy dologra figyelni kell: ha nincs beállítás, akkor az azt jelenti, hogy a rendszer a legerősebb titkosítatlan hozzáférési ponthoz csatlakozik - a vezeték nélküli hálózati eszközök mindig megpróbálják a rendszert valamihez csatlakoztatni.
root #
emerge --ask net-wireless/wireless-tools
Bár a net-wireless/iw a jelenlegi eszköz a vezeték nélküli stackhez, a net-misc/netifrc 0.6.0 előtti verziói nem működnek az új parancsokkal. A korábbi verziókban a net-wireless/wireless-tools használatát igényli a netifrc. További információért tekintse meg a változó nevek dokumentációját.
/etc/conf.d/net
Példa iwconfig beállítás# Prefer iwconfig over wpa_supplicant
modules="iwconfig"
# Configure WEP keys for Access Points called ESSID1 and ESSID2
# You may configure up to 4 WEP keys, but only 1 can be active at
# any time so we supply a default index of [1] to set key [1] and then
# again afterwards to change the active key to [1]
# We do this incase you define other ESSID's to use WEP keys other than 1
#
# Prefixing the key with s: means it's an ASCII key, otherwise a HEX key
#
# enc open specified open security (most secure)
# enc restricted specified restricted security (least secure)
key_ESSID1="[1] s:yourkeyhere key [1] enc open"
key_ESSID2="[1] aaaa-bbbb-cccc-dd key [1] enc restricted"
# The below only work when we scan for available Access Points
# Sometimes more than one Access Point is visible so we need to
# define a preferred order to connect in
preferred_aps="'ESSID1' 'ESSID2'"
Finoman hangolt hozzáférési pont (AP) kiválasztás
Lehetőség van további opciók hozzáadására az hozzáférési pont (Access Point) kiválasztás finomhangolásának az érdekében, de ezek nem kötelezőek.
Az egyik módja annak, hogy a rendszert úgy állítsuk be, hogy csak a preferált hozzáférési pontokhoz csatlakozzon. Alapértelmezés szerint, ha minden beállítás sikertelen, és a wireless-tools tud csatlakozni egy titkosítatlan hozzáférési ponthoz, akkor meg fogja azt tenni. Ezt az associate_order változóval lehet szabályozni. Íme egy értékekkel rendelkező táblázat, amely bemutatja, hogyan irányítják ezt.
Érték | Leírás |
---|---|
any | Alapértelmezett viselkedés. |
preferredonly | Csak a látható hozzáférési pontokhoz kapcsolódjon a preferált listán szereplők közül. |
forcepreferred | Kényszerítsen csatlakozást az hozzáférési pontokhoz a preferált sorrendben, ha azok nem találhatók a keresés során. |
forcepreferredonly | Ne végezzen keresést az hozzáférési pontokat illetően. Ehelyett csak próbáljon meg csatlakozni mindegyikhez a sorrendben. |
forceany | Ugyanaz, mint a forcepreferred + csatlakozás bármely más elérhető hozzáférési ponthoz. |
Továbbá van a blacklist_aps és a unique_ap választási lehetőség is. A blacklist_aps hasonló módon működik, mint a preferred_aps. A unique_ap egy igen vagy nem érték, amely meghatározza, hogy egy második vezeték nélküli interfész csatlakozhat-e ugyanahhoz a hozzáférési ponthoz, mint az első interfész.
/etc/conf.d/net
blacklist_aps és unique_ap példa# Sometimes you never want to connect to certain access points
blacklist_aps="'ESSID3' 'ESSID4'"
# If you have more than one wireless card, you can say if you want
# to allow each card to associate with the same Access Point or not
# Values are "yes" and "no"
# Default is "yes"
unique_ap="yes"
Ad-hoc és master módok
A rendszer ad-hoc csomópontként történő beállításához, ha nem sikerül csatlakozni egyetlen hozzáférési ponthoz sem kezelt módban, akkor használja ezt a tartaléklehetőséget:
/etc/conf.d/net
Tartalék lehetőség az ad-hoc mód használataadhoc_essid_eth0="This Adhoc Node"
Lehetséges ad-hoc hálózatokhoz is csatlakozni, vagy a rendszert master módba állítani, hogy maga is hozzáférési ponttá váljon.
/etc/conf.d/net
Példa ad-hoc/master beállítás# Set the mode - can be managed (default), ad-hoc or master
# Not all drivers support all modes
mode_eth0="ad-hoc"
# Set the ESSID of the interface
# In managed mode, this forces the interface to try and connect to the
# specified ESSID and nothing else
essid_eth0="This Adhoc Node"
# We use channel 3 if you don't specify one
channel_eth0="9"
Fontos forrás a csatornaválasztásról a NetBSD dokumentációban található BSD wavelan dokumentáció. 14 csatorna lehetséges; azt mondják, hogy az 1-11 csatornák Észak-Amerikában legálisak, az 1-13 csatornák Európa nagy részében, a 10-13 csatornák Franciaországban és csak a 14. csatorna Japánban. Ha kétségei vannak, kérem, forduljon a kártyához vagy a hozzáférési ponthoz mellékelt dokumentációhoz. Győződjön meg róla, hogy a kiválasztott csatorna megegyezik a hozzáférési pont (vagy az ad-hoc hálózatban lévő másik kártya) csatornájával. Az Észak-Amerikában és Európa nagy részében értékesített kártyák alapértelmezett csatornája a 3; a Franciaországban értékesített kártyák alapértelmezett csatornája a 11, és a Japánban értékesített kártyák alapértelmezett csatornája a 14.
A wireless tools hibaelhárítása
Van néhány további változó, amelyek segíthetnek a vezeték nélküli hálózat működésének beállításában a meghajtó vagy a környezet problémái miatt. Itt van egy táblázat az egyéb kipróbálható lehetőségekről.
Változó neve | Alapértelmezett érték | Leírás |
---|---|---|
iwconfig_eth0 | Tekintse meg az iwconfig man súgóját a részletekért, hogy mit kell küldeni az iwconfig parancsnak. | |
iwpriv_eth0 | Tekintse meg az iwpriv man súgóját a részletekért, hogy mit kell küldeni az iwprivnek parancsnak. | |
sleep_scan_eth0 | 0 | A másodpercek száma, amelyet alvásra kell szánni a keresés megkezdése előtt. Erre akkor van szükség, amikor a meghajtó/firmware több időt igényel, hogy aktívvá váljon, mielőtt használható lenne. |
sleep_associate_eth0 | 5 | Az interfész várakozására szánt másodpercek száma, mielőtt az a következő hozzáférési ponthoz való csatlakozást megpróbálná. |
associate_test_eth0 | MAC | Egyes meghajtók nem állítják vissza a hibás MAC címet, amikor elveszítik vagy megkísérelik a társítást. Egyes meghajtók nem állítják vissza a minőségi szintet, amikor elveszítik vagy megkísérelik a társítást. Érvényes beállítások: MAC, minőség és mind. |
scan_mode_eth0 | Egyes meghajtók ad-hoc módban kell, hogy keresést végezzenek, így ha a keresés nem sikerül, akkor próbálja meg itt az ad-hoc módot beállítani. | |
iwpriv_scan_pre_eth0 | A keresés előtt néhány iwpriv parancsot küld az interfészre. További részletekért tekintse meg az iwpriv man súgóját. | |
iwpriv_scan_post_eth0 | A keresés után néhány iwpriv parancsot küld az interfészre. További részletekért tekintse meg az iwpriv man súgóját. |
Egyedi hálózati beállítás meghatározása ESSID alapján
Ebben a részben bemutatjuk, hogy miként lehet az ESSID alapján beállítani a hálózatot. Például, az ESSID1 vezeték nélküli hálózathoz állítson be statikus IP-címet, míg az ESSID2 hálózat a DHCP protokollt használja.
Ez mind a wpa_supplicant, mind a wireless-tools esetében működik.
Kérjük, hogy tekintse meg a változónevek dokumentációját.
/etc/conf.d/net
Egyedi hálózati beállítások felülbírálása ESSID alapjánconfig_ESSID1="192.168.0.3/24 brd 192.168.0.255"
routes_ESSID1="default via 192.168.0.1"
config_ESSID2="dhcp"
fallback_ESSID2="192.168.3.4/24"
fallback_route_ESSID2="default via 192.168.3.1"
# We can define nameservers and other things too
# NOTE: DHCP will override these unless it's told not to
dns_servers_ESSID1="192.168.0.1 192.168.0.2"
dns_domain_ESSID1="some.domain"
dns_search_domains_ESSID1="search.this.domain search.that.domain"
# You override by the MAC address of the Access Point
# This handy if you goto different locations that have the same ESSID
config_001122334455="dhcp"
dhcpcd_001122334455="-t 10"
dns_servers_001122334455="192.168.0.1 192.168.0.2"
Standard függvényhorgok
Négy függvény határozható meg az /etc/conf.d/net fájlban:
preup()
, amelyet egy interfész felhozatala előtt hívnak meg.predown()
, amelyet egy interfész lehozása előtt hívnak meg.postup()
, amelyet egy interfész felhozatala után hívnak meg.postdown()
, amelyet egy interfész lehozása után hívnak meg.
Ezeket a függvényeket mindegyik interfész nevével hívják meg, amely az egyes függvényeken belül az IFACE változón keresztül érhető el, így egy függvény több interfészt is képes irányítani.
A preup()
és predown()
függvények visszatérési értékei a következők kell, hogy legyenek:
- 0, amely a sikert jelzi, és hogy az interfész beállítása vagy nem beállítása (dekonfigurálása) folytatódhat.
- Egy nullánál nagyobb bármely más érték.
Ha a preup()
nulla értéknél nagyobbat ad vissza, akkor az interfész beállítása megszakad. Ha a predown()
nulla értéknél nagyobbat ad vissza, akkor az interfész nem beállítása (dekonfigurálása) nem folytatható.
A postup()
és postdown()
függvények visszatérési értékei figyelmen kívül maradnak, mivel nincs teendő, ha azok hibát jeleznek.
A ${IFACE} az éppen felhozott/lehozott interfészre van állítva. A ${IFVAR} a ${IFACE} változóvá alakított változata, amelyet a bash lehetővé tesz.
/etc/conf.d/net
pre/post up/down függvény példákpreup() {
# Test for link on the interface prior to bringing it up. This
# only works on some network adapters and requires the ethtool
# package to be installed.
if ethtool ${IFACE} | grep -q 'Link detected: no'; then
ewarn "No link on ${IFACE}, aborting configuration"
return 1
fi
# Remember to return 0 on success
return 0
}
predown() {
# The default in the script is to test for NFS root and disallow
# downing interfaces in that case. Note that if you specify a
# predown() function you will override that logic. Here it is, in
# case you still want it...
if is_net_fs /; then
eerror "root filesystem is network mounted -- can't stop ${IFACE}"
return 1
fi
# Remember to return 0 on success
return 0
}
postup() {
# This function could be used, for example, to register with a
# dynamic DNS service. Another possibility would be to
# send/receive mail once the interface is brought up.
return 0
}
postdown() {
# This function is mostly here for completeness... I haven't
# thought of anything nifty to do with it yet ;-)
return 0
}
További információért a függvények írásáról, kérjük olvassa el a következőt: /usr/share/doc/netifrc-*/net.example.bz2.
Wireless függvény horgok
Ez nem fog működni a WPA Supplicant programmal, de a ${ESSID} és ${ESSIDVAR} változók elérhetők a
postup()
függvényben.Két függvény határozható meg az /etc/conf.d/net fájlban:
preassociate()
, amely az asszociáció előtt van meghívva.postassociate()
, amely az asszociáció után van meghívva.
Ezeket a függvényeket mindegyik interfész nevével hívják meg, amely az egyes függvényeken belül az IFACE változón keresztül érhető el, így egy függvény több interfészt is képes irányítani.
A preassociate() függvény visszatérési értékei a következők kell, hogy legyenek:
- 0, amely a sikert jelzi, és a konfiguráció folytatódhat.
- Nulla értéknél nagyobb, bármely más érték.
Ha a preassociate()
nulla értéknél nagyobbat ad vissza, akkor az interfész beállítása megszakad.
Ha nincs teendő, akkor a postassociate()
függvény visszatérési értéke figyelmen kívül lesz hagyva, ha hibát jelez.
Az egyes függvényeken belül az éppen csatlakozó hozzáférési pont pontos ESSID értéke az ESSID változón keresztül érhető el. A ${ESSIDVAR} a ${ESSID} változó névre alakított változata, amelyet a bash lehetővé tesz.
/etc/conf.d/net
pre/post asszociációs függvényekpreassociate() {
# The below adds two configuration variables leap_user_ESSID
# and leap_pass_ESSID. When they are both configured for the ESSID
# being connected to then we run the CISCO LEAP script
local user pass
eval user=\"\$\{leap_user_${ESSIDVAR}\}\"
eval pass=\"\$\{leap_pass_${ESSIDVAR}\}\"
if [[ -n ${user} && -n ${pass} ]]; then
if [[ ! -x /opt/cisco/bin/leapscript ]]; then
eend "For LEAP support, please emerge net-misc/cisco-aironet-client-utils"
return 1
fi
einfo "Waiting for LEAP Authentication on \"${ESSID//\\\\//}\""
if /opt/cisco/bin/leapscript ${user} ${pass} | grep -q 'Login incorrect'; then
ewarn "Login Failed for ${user}"
return 1
fi
fi
return 0
}
postassociate() {
# This function is mostly here for completeness... I haven't
# thought of anything nifty to do with it yet ;-)
return 0
}
A ${ESSID} és a ${ESSIDVAR} változók nem érhetők el a
predown()
és postdown()
függvényekben.További információért az egyedi függvények írásáról, kérjük, olvassa el a következőt: /usr/share/doc/netifrc-*/net.example.bz2.
Hálózatkezelés
Mivel, hogy a laptopok hordozhatóak, ezért ezen készülékek esetében az operációs rendszerek mindig úton lehetnek. Ennek eredményeként az operációs rendszer nem mindig rendelkezik Ethernet-kábellel, nem mindig van csatlakoztatva az internetre, nem mindig elérhető egy hozzáférési pont. Emellett a felhasználó azt szeretné, hogy a hálózat automatikusan működjön, amikor egy Ethernet-kábelt csatlakoztatnak, vagy amikor egy hozzáférési pontot találnak.
Ebben a fejezetben bemutatjuk, hogy miként lehet ezt megtenni.
Ez a dokumentum csak az ifplugd-ról beszél, de léteznek alternatívák, mint például a netplug. A netplug könnyű alternatívája az ifplugd-nek, de a kernel hálózati illesztőprogramjainak helyes működésére támaszkodik, és sok illesztőprogram nem működik megfelelően.
ifplugd
Az ifplugd egy szolgáltatás, amely akkor indítja el és állítja le az interfészeket, amikor Ethernet-kábelt helyeznek be vagy távolítanak el a laptopból. Emellett képes kezelni a hozzáférési pontokhoz való csatlakozás észlelését vagy új hozzáférési pontok megjelenését a tartományban.
root #
emerge --ask sys-apps/ifplugd
Az ifplugd beállítása szintén meglehetősen egyszerű. A beállítás a /etc/conf.d/net fájlban található. Az elérhető változókról további részletekért futtassa a man ifplugd parancsot. További példákért tekintse meg a /usr/share/doc/netifrc-*/net.example.bz2 fájlt.
/etc/conf.d/net
Egyszerű ifplug beállítás# Replace eth0 with the interface to be monitored
ifplugd_eth0="..."
# To monitor a wireless interface
ifplugd_eth0="--api-mode=wlan"
A több hálózati kapcsolat kezelése mellett a felhasználók esetleg szeretnének egy olyan eszközt is hozzáadni, amely megkönnyíti a több DNS-szerver és beállításának a kezelését. Ez nagyon hasznos lehet, amikor a rendszer DHCP-n keresztül kapja meg az IP-címét.
root #
emerge --ask net-dns/openresolv
A funkcióiról további információkat a man resolvconf parancs segítségével talál.
Warning: Display title "Gentoo Linux alpha Kézikönyv: Hálózat beállítása" overrides earlier display title "Handbook:Alpha/Full/Networking/hu".