NetworkManager a Auto eth0
Som spokojný používateľ novej generácie KDE, označovanej KDE4. Netvrdím, že nemá chyby, ale chyby patria k životu, a zatiaľ všetky boli riešiteľné. Jediná vec, ktorá ma trápila už niekoľko mesiacov, bola správa drôtovej siete, kde KDE vytrvalo ignorovalo moje nastavenie a vždy sa vracalo k východziemu stavu.
Obsah článku
Správa siete v Debiane
Správa siete v Debiane prekonala v poslednej dobe (od Lennyho po Squeeze) isté zmeny. Tou najväčšou je asi zavedenie démona na správu siete (Network Manager alebo Wireless Interface Connection). K dispozícii je aj starý známy ifupdown. V zmysle Referenčnej príručky Debianu, sú tieto démony predurčené najmä do prostredia notebookov a iných mobilných zariadení a nemajú byť používané v serverovom nastavení. Ja ich nepoužívam ani na stolných počítačoch.
Oba démony plnia viac-menej rovnakú funkciu, a to poskytnúť jednoduché riešenie nastavenia sieťových rozhraní, uchovávanie týchto nastavení a ich jednoduchú zmenu. Pričom všetky tieto úlohy umožňujú aj obyčajným používateľom, teda nevyžadujú práva superpoužívateľa root na rozdiel od nástroja ifupdown, ktorý rieši nastavenia siete na úrovni celého systému, a to len správcovi systému.
Použitie Network Manager
V ďalšom sa zameriam na použitie démona Network Manager, pretože Wicd nepoužívam a ani sa nechystám.
Pri prechode na Network Manager (NM) je dobré vedieť niekoľko vecí.
Asi najdôležitejšou z nich je: „Zabudnite na interfaces”! Mám na
mysli súbor /etc/network/interfaces
, v ktorom sa nastavujú rozhrania
pre systém ifupdown. V ideálnom prípade stačí mať v tomto súbore len
definíciu rozhranie lo:
auto lo
iface lo inet loopback
V prípade, že v tomto súbore ponecháte aj definíciu iných rozhraní, nič sa nestane, len tieto rozhrania nebudú spravované prostredníctvom NM, hoci niektoré definície rozhrania v tomto súbore môžu byť môžu. Patrí medzi nich:
auto <iface>
allow-hotplug <iface>
iface <iface> inet dhcp
Varovanie
Všetky ostatné nastavenia v tomto súbore zabránia tomu, aby mohlo byť rozhranie spravované prostredníctvom NM.
Okrem nastavení v súbore /etc/network/interfaces
je potrebná ešte
jedna vec, a to členstvo v skupine netdev. Používateľ vytvorený pri
inštalácii je automaticky do tejto skupiny zaradený, ak vytvárate
používateľov pomocou štandardných nástrojov KDE (alebo Gnome), mal by
byť v tej skupine tiež, ak nie, použite:
addgroup <login> netdev
Konfigurácia NM je v súbore /etc/NetworkManager/NetworkManager.conf
a
za normálnych okolností v ňom nie je potrebné nič meniť.
Spolupráca NM a ifupdown
Napriek tomu, čo som písal vyššie, existuje aj možnosť spravovať
sieťové pripojenia, ktoré sú definované v súbore interfaces
. Postará
sa o to voľba managed v konfiguračnom súbore NM. Táto voľba môže mať
hodnotu false (východzia hodnota) alebo true. Ak potrebujete mať
nastavenia rozhrania tam i tam, nastavte túto voľbu na true a
reštartuje NM.
Aplikácia zmien
V prípade, že urobíte zmeny, či už v súbore
/etc/NetworkManager/NetworkManager.conf
alebo v súbore
/etc/network/interfaces
, je potrebné reštartovať NM pomocou:
service network-manager restart
Takže zabudnite na:
service networking restart
…samozrejme ak nepoužívate systém ifupdown, v takom prípade upozornenie o zastaranosti jednoducho ignorujte. Alebo, ešte lepšie, použite kombináciu príkazov:
ifdown eth0; ifup eth0
Rada
Pri reštarte NM mi vždy spadne KNetworkManager, v takom prípade stačí v „Crash dialógu“ zvoliť reštartovať…
Problém v KDE
Spomínaný problém s pádom KNetworkManager nie je jediný a dokonca ani nie je dôležitý. Keď si svoje nastavenia vyladíte, nepotrebujete NM reštartovať. Väčší problém je ten, že nástroj nastavenia siete v KDE zatiaľ nepodporuje zmenu nastavení tzv. „systémových spojení“.
Tip
Systémové spojenia sú nastavenia, ktoré sú platné pre celý systém.
Vlastne ani to by nebol problém, keby… Keby NM nevytváral predvolené systémové spojenie pre káblovú sieť, nazvané „Auto eth0“ a ja som niekoľko mesiacov nevedel prísť na to, ako sa ho zbaviť. V čom je problém? Vždy po prihlásení (alebo odpojení/pripojení kábla), systém jednoducho ignoroval moje nastavenie a predvolene nastavil spomínané „Auto eth0“ (pre moje rozhranie eth0), ktorého nastavenia som nemohol zmeniť. Jediné, čo som mohol,bolo vždy ručne vybrať moje nastavenie z kontextového menu NM.
Upozornenie
V prípade WiFi sa tento problém nevyskytuje.
Nakoniec je riešenie jednoduché, našiel som ho v emailovej konferencii NM a spočíva v pridaní voľby no-auto-default a MAC adresy rozhrania do konfiguračného súboru NM, napríklad takto:
[main]
plugins=ifupdown,keyfile
no-auto-default=XX:YY:ZZ:cd:ed:c0
[ifupdown]
managed=false
Ostáva reštartovať NM a moje nastavenie je automaticky vybrané. Jednoduché, že?