Dopo un anno di sviluppo, è stata pubblicata una nuova e significativa versione della distribuzione OpenWrt 22.03.0, orientata all'uso in vari dispositivi di rete, come router, switch e punti di accesso. OpenWrt supporta una vasta gamma di piattaforme e architetture e dispone di un sistema di build che permette un cross-compiling semplice e conveniente, inclusi diversi componenti nella build, facilitando così la creazione di un firmware o di un'immagine del disco su misura per compiti specifici. Le build sono state create per 35 piattaforme target.
Tra le novità di OpenWrt 22.03.0 si segnala:
- Per impostazione predefinita, è stato implementata una nuova applicazione per la gestione del firewall — fw4 (Firewall4), basata sul filtro dei pacchetti nftables. La sintassi dei file di configurazione per il firewall (/etc/config/firewall) e l'interfaccia uci non sono cambiate — fw4 può fungere da sostituto trasparente dell'precedente strumento fw3, basato su iptables. Le eccezioni sono le regole aggiunte manualmente (/etc/firewall.user), che dovranno essere riscritte per nftables (fw4 consente di aggiungere i propri blocchi di regole, ma nel formato nftables).
Il vecchio strumento basato su iptables è stato escluso dalle immagini predefinite, ma può essere ripristinato tramite il gestore pacchetti opkg o lo strumento Image Builder. Sono inoltre forniti i wrapper iptables-nft, arptables-nft, ebtables-nft e xtables-nft, che consentono di creare regole per nftables utilizzando la vecchia sintassi di iptables.
- È stata aggiunta la compatibilità per oltre 180 nuovi dispositivi, inclusi 15 dispositivi basati sul chip MediaTek MT7915 con supporto per Wi-Fi 6 (IEEE 802.11ax). Il numero totale dei dispositivi supportati ha raggiunto 1580.
- È proseguita la transizione delle piattaforme target all'utilizzo del sottosistema del kernel DSA (Distributed Switch Architecture), che fornisce strumenti per configurare e gestire cascami di switch Ethernet collegati tra loro, utilizzando meccanismi per configurare interfacce di rete standard (iproute2, ifconfig). DSA può essere utilizzato per configurare porte e VLAN al posto dello strumento swconfig precedentemente proposto, ma non tutti i driver degli switch supportano ancora DSA. Nella versione proposta, DSA è attivato per le piattaforme bcm53xx (i driver per tutte le schede sono stati tradotti), lantiq (SoC basati su xrx200 e vr9) e sunxi (schede Bananapi Lamobo R1). In precedenza, DSA era stato tradotto per le piattaforme ath79 (TP-Link TL-WR941ND), bcm4908, gemini, kirkwood, mediatek, mvebu, octeon, ramips (mt7621) e realtek.
- Nell'interfaccia web LuCI è stata implementata una modalità scura. Per impostazione predefinita, la modalità si attiva automaticamente in base alle impostazioni del browser, ma può anche essere forzata tramite il menu «System» -> «System» -> «Language and Style».
- È stato risolto il problema dell'anno 2038, causato dal sovraccarico del tipo di dato a 32 bit time_t (il contatore temporale epoch a 32 bit si sovraccaricherà il 19 gennaio 2038). Nella nuova versione è stata attivata la libreria standard musl 1.2.x, nella quale nei sistemi a 32 bit i vecchi contatori di tempo a 32 bit sono stati sostituiti con contatori a 64 bit (il tipo time_t è stato sostituito con time64_t). Nei sistemi a 64 bit, il tipo time64_t viene utilizzato inizialmente (il contatore si sovraccaricherà tra 292 miliardi di anni). La transizione al nuovo tipo ha comportato un cambiamento dell'ABI, che richiederà la ricompilazione di tutti i programmi a 32 bit correlati a musl libc (per i programmi a 64 bit, la ricompilazione non è necessaria).
- Le versioni dei pacchetti sono state aggiornate, incluso il kernel Linux 5.10.138 con il porting dello stack wireless cfg80211/mac80211 dal kernel 5.15.58 (in precedenza veniva offerto il kernel 5.4 con lo stack wireless dalla versione 5.10), musl libc 1.2.3, glibc 2.34, gcc 11.2.0, binutils 2.37, hostapd 2.10, dnsmasq 2.86, dropbear 2022.82, busybox 1.35.0.
- È stato interrotto il build per la piattaforma arc770 (Synopsys DesignWare ARC 770D).
Fonte: opennet.ru
