Eida.cz - Budoucnost routování

Budoucnost routování

Eida

Dny routerů a těžítek vzaly před nějakou dobou za své. Dalo se to čekat, ale v nějakém okamžiku se úplně změnil trend plně domácích a SOHO technologií. Žijeme ve světě, kde je už zakázáno mít defaultní hesla, průmyslové rychlosti si razí cestu do domácích chýší a už dávno neplatí, že by se taková síťka dala postavit do několika stovek. Ze starých routerů jsou už vážně těžítka a ono prve vychvalované DD-WRT ztrácí dech.

Takový ten unboxing – Turris Omnia Wifi6

Rozvoj WRT systémů se od minula, což teda znamená víc jak deset let, poměrně rozvinul a Linux na tomhle poli nakonec zvítězil (a postupně chce vítězit i na poli NASek). I velcí výrobci začali základní WRT jádra a základy implementovat do svých komerčních zařízení, což nevyhnutelně vedlo k pokroku i tam, kde zatím nebyl. No a mezitím jsme se posunuli nad 5GHz sítě a bezpečnosti typu WPA3, takové ty běžné MAC filtrovací tabulky, byť řízené centrálně, jsou už dávno pryč. V budníku máme už nějakou dobu plně profesionální síť postavenou nad Cisco body a centrálním řadičem a NPSkou. Jak tohle ale posunout i do domovů? To je otázka.

Problematika vyloženě specializovaných domácích routerů spočívá především v tom, že se časem chtě nechtě vypálí buňky v čipech, takže zařízení se nejprv zasekne, potom začne mít problémy s restarty a nakonec prostě umře. Totéž vlastně platí i pro integrované bezdrátové čipy, co běží na fixních kanálech. S takovými zařízeními ale poměrně dobře fungoval právě DD-WRT, protože respektoval omezené možnosti vestavěných zařízení, všechno nastavení se zapisovalo do nějaké obecné NVRAM a nebylo nad čím koumat. Mezitím projekt OpenWrt systém vyletěl velmi obecným směrem poněkud redefinoval, co si představujeme pod současným vestavěným zařízením – to znamená hlavně zápis konfiguračních hodnot do běžného (byť virtuálního) filesystému, podporu obecných binárních balíčků a hlavně využití předpřipravených modulů pro zprovoznění různých volitelných komponent. No a taky, a to je super, pětkový kernel s netfilterem.

Český projekt Turris od CZ.NIC tohle dohnal do dalšího super extrému, protože vytvořil několik opensource hw zařízení s vlastním systémem, který je ale postavený nad OpenWrt. Dávalo tedy smysl si zkusit pořídit Turris Omnia Wifi6 a trochu se na to podívat, hlavně jak moc složité bude celé to rozjet během jediného dne. Kupodivu počáteční problémy byly, ale hlavně šlo o jiné mentální nastavení – s DD-WRT totiž nebylo možné úplně dobře manipulovat pomocí fixních konfigurací, kdežto v OpenWrt tohle již jde, takže není potřeba se znepokojovat tím, že v základu má Turris vícero webových rozhraní, přičemž v tom základním jsou možnosti velmi omezené, ale za to docela uživatelsky neprůstřelné.

Nastavení WPA3-EAP, resp. jakéhokoliv EAP, konečně umožňuje oddělenou konfiguraci pro autentizaci a pro accounting, takže lze poměrně snadno specifikovat různé RADIUS servery. No a taky, a to je důležité, už tam není žádný nepříjemný bug s přeskakováním, takže je FreeRADIUS hodně spokojený a hezky přede. Celá konfigurace je pak k dispozici v /etc/config/wireless, kde už lze přehledně upravit jakékoliv detaily. Poměrně předvídatelně je to rozdělené na konfiguraci fyzických rozhraní a pak na virtuální, které poskytují adaptéry pro připojení. Co je trošku zklamáním, že použitá Mediatek karta pro wifi6 neumí běžet v mixovaném ac/ax režimu (stejně tak 2.4GHz umí buď jen legacy, nebo jen 802.11n), takže sice poskytuje velmi suprovou moderní síť, ale jaksi se na ni připojí pouze kompatibilní zařízení – pro představu, základní iPhone 15 (tedy ne Pro) to neumí, takže se na to sice připojí, dostane IP a dostane se na LAN, ale jaksi to už neroutuje nikam ven. Ostatní zařízení, bohužel, dostanou právě jen tu pomalejší 144Mbit linku na druhé kartě, ale víceméně to ničemu nevadí.

Nakonec celá konfigurace téměř čehokoliv se nachází v /etc/config/ a je velmi dobře čitelná. Tím téměř je třeba nutnost si manuálně uložil autorizované SSH klíče pod výchozí účet (/root/.ssh/authorized_keys), jinak vše ostatní máme hezky na jednom místě a není vůbec složité se v tom vyznat. Jednou z konfigurací specifickou pro Turris je zapojení do projektu Sentinel, který nabízí virtuální honeypoty a pomyslnou distribuovanou IDSku  s dynamickým firewallem. Funguje to výborně, zdá se, za první okamžiky to začalo lapat útočníky z různých krajin a poměrně dobře to rozpoznalo i základní skenování použité při kontrole běžících služeb. Na druhou stranu vrstvení firewallu může být poměrně matoucí, zvlášť pokud systém začne hlásit, že nemá DNS, ani přístup ven, resp. ani dovnitř (třeba na zmiňovaný RADIUS). To je trošku vada na kráse, která ale zabrala většinu odpoledne, protože při nastavení výstupního chainu na ACCEPT by asi málokdo čekal, že zařízení samotné ven smět moci nebude. Tím se vlastně zkomplikovalo i debugování IPv6 konektivity přes 6in4 tunel, protože se sice nastavila očekávaná pravidla, ale spojení nešlo navázat. Každopádně teď už je to vše jasné a moc se těším na přidání dalších rozhraní (wireguard) a hlavně koncem něsíce na salibovanou nativní IPv6 přímo od ISP, tedy pokud jim do toho nevletí nějaká moucha.

Aby toho tady teda ještě nebylo málo a trochu to souviselo s Linuxem jako takovým, tak musím vyzdvihnout, že díky OpenWrt základu a možnosti instalovat balíky je super mít přímo na routeru k dispozici Midnight Commander a tak nějak to celé díky němu vidět, stejně tak jako použití btrfs a zálohy pomocí snapshotů. Turris Omnia taky disponuje dvěma USB porty (jeden vepředu, jeden vzadu), na která jdou zavěsit další nejen paměťová zařízení, taky má dokonce jeden z interních M2 PCIe možnost použít mSATA, jen je potřeba asi v tom případě přehodit z něj pomalejší kartu na třetí slot určený pro mobilní modem. Časem by se asi rád dostal i k GPIO, ale protože to poběží a je to zavřené, tak se to asi nepovede a všechny IO hrátky asi budou realizovány pouze na malých Malinách.

Jako velmi cool featura je na zařízení plně konfigurovatelné RGB pole kontrolek, které lze řídit co do barvy a jasu, tak i pro specifické potřeby. A umím si představit, jak snadno na první pohled indikovat stavy třeba na MC serveru, případně v interních VPN tunelech. Bohužel, jak už to občas bývá, mám teď všechny LEDky vypnuté (resp. jas stažený na nula, ať je to přesné), ať v noci neruší, možná by šlo nastavit i nějaké časování, co je prostě na noc, nebo možná podle okolního jasu nebo sluníčka prostě vypne a pak zase zapne. A třeba je to tak i lepší z hlediska zátěže, kdo ví. Proti původnímu AC68U je tam asi 8W drop v celkové spotřebě, ale tohle se celé projeví až při reálném výpadku energie.

Pro budoucnost routování tedy musím za sebe OpenWrt doporučit a po nějaké době tedy odejít od DD-WRT myšlenkového směru. Ale to je asi dané dobou. Budoucnost BSD systémů možná bude patřit nějakou chvíli už jen velmi náročným aplikacím, jako jsou streamovací služby a specializované routery, domácnosti mají teď prostě Linux, nenaděláme nic, možná se to ještě změní. Ale chápu, že z hlediska masové podpory to prostě těm návrhářům a výrobcům přijde takhle lepší. A v neposlední řadě bychom určitě měli být šťastní, že zrovna řešení Turris je českým prvkem, stejně jako integrovaný resolver Knot. Vývin nezastavíme.

Tento článek přečetlo již 60 čtenářů (0 dnes).

Komentáře

Nový komentář