Gentoo Linux alpha Kézikönyv: Hálózat beállítása

From Gentoo Wiki
Jump to:navigation Jump to:search
This page is a translated version of the page Handbook:Alpha/Full/Networking and the translation is 100% complete.



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.

See also
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
Tip
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.
Important
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ő:

FILE /etc/conf.d/netStatikus 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"
Note
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
Important
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:

FILE /etc/conf.d/netPé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"
Important
A tartalék sorrendje fontos! Ha a null opció nem lett megadva, akkor az apipa csak akkor futna, ha a noop meghiúsul.
Note
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.
Note
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:

FILE /etc/conf.d/netAdding a net.br0 dependency
rc_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:

FILE /etc/conf.d/netVirtuális függőségek és rendelkezések frissítése a hálózathoz
rc_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:

FILE /etc/conf.d/netVá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.

Note
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.
FILE /etc/conf.d/netModuldefiní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.

FILE /etc/conf.d/netPélda beállítás
config_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.
FILE /etc/conf.d/netPé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
Note
dhcpcd alapértelmezés szerint elküldi az aktuális hostnevet a DHCP-szervernek, így ezt már nem szükséges megadni.
FILE /etc/conf.d/netPé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.

FILE /etc/conf.d/netEgy alapvető PPPoE beállítás
config_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.

FILE /etc/ppp/pap-secretsPé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.

Important
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.

FILE /etc/conf.d/netAPIPA 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:

FILE /etc/conf.d/netInterfész beállításának törlése
config_eth0="null"
config_eth1="null"
config_eth2="null"

Ezután határozza meg a kapcsolódást az interfészek között:

FILE /etc/conf.d/netKapcsolat definiálása
slaves_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.

FILE /etc/conf.d/netHid 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"
Important
A híd egyes beállításainak használatához tekintse meg a változónév dokumentációját.
Important
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.

FILE /etc/conf.d/netMAC 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.

FILE /etc/conf.d/netAlagú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:

FILE /etc/conf.d/netVLAN számok megadása
vlans_eth0="1 2"

Ezután állítsa be az interfészt minden egyes VLAN-hoz:

FILE /etc/conf.d/netInterfész beállítása minden VLAN-hoz
config_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:

FILE /etc/conf.d/netVLAN-ok beállítása
vlan1_name="vlan1"
vlan1_ingress="2:6 3:5"
eth0_vlan1_egress="1:2"
Important
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.

Note
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
Important
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
Note
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).

FILE /etc/conf.d/netA wpa_supplicant használatának a kényszerítése
# Prefer wpa_supplicant over wireless-tools
modules="wpa_supplicant"
Note
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.

FILE /etc/wpa_supplicant/wpa_supplicant.confLeegyszerű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
Note
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.
FILE /etc/conf.d/netPé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.

FILE /etc/conf.d/netblacklist_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:

FILE /etc/conf.d/netTartalék lehetőség az ad-hoc mód használata
adhoc_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.

FILE /etc/conf.d/netPé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"
Important
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.

Note
Ez mind a wpa_supplicant, mind a wireless-tools esetében működik.
Important
Kérjük, hogy tekintse meg a változónevek dokumentációját.
FILE /etc/conf.d/netEgyedi hálózati beállítások felülbírálása ESSID alapján
config_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.

FILE /etc/conf.d/netpre/post up/down függvény példák
preup() {
  # 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
}
Note
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

Note
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.

FILE /etc/conf.d/netpre/post asszociációs függvények
preassociate() {
  # 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
}
Note
A ${ESSID} és a ${ESSIDVAR} változók nem érhetők el a predown() és postdown() függvényekben.
Note
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.

Note
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.

FILE /etc/conf.d/netEgyszerű 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".