Openwrt

openwrt
Dezvoltator Proiectul GNU și Linksys
Prima editie ianuarie 2004
ultima versiune
Metoda de actualizare opkg [d]
Manageri de pachete opkg [d]
Platforme acceptate x86 , AVR32 , ARM , ETRAX CRIS [d] , Motorola 680x0 , MIPS , PowerPC , SPARC , SuperH , Ubicom [d] și x86_64
Licență GNU GPL 2 [3]
Depozitul de cod sursă git.openwrt.org/openwrt/…
site web openwrt.org
 Fișiere media la Wikimedia Commons

OpenWrt  este un sistem de operare încorporat bazat pe kernel-ul Linux , conceput în primul rând pentru routerele de acasă ( routere, din engleză  router ). Componentele principale includ nucleul Linux, util-linux , uClibc sau musl [4] și BusyBox . Dimensiunea tuturor componentelor este optimizată datorită faptului că majoritatea routerelor de acasă au o cantitate foarte limitată de memorie.

Din punct de vedere istoric, a fost folosită o interfață de linie de comandă pentru a configura OpenWrt , dar o opțiune este o interfață web (este inclusă pentru majoritatea dispozitivelor în distribuția standard OpenWrt), care oferă și opțiuni pentru configurarea OpenWrt, deși mai puțin completă. Suportul tehnic este oferit în mod tradițional prin intermediul forumului și canalului IRC .

Istorie

Proiectul OpenWrt a fost demarat în 2004, după ce Linksys a creat firmware pentru seria lor de routere fără fir WRT54G cu sursă deschisă , populare la acea vreme , licențiate sub Licența Publică Generală GNU . Conform termenilor acestei licențe, Linksys a fost obligat să facă disponibil codul sursă al versiunii modificate sub aceeași licență, permițând dezvoltatorilor independenți să-și creeze propriile versiuni derivate.

Inițial, suportul a fost limitat la seria Linksys WRT54G , dar sa extins treptat pentru a include chipset-uri de la alți producători , inclusiv x86 .  Cele mai populare în cadrul proiectului pentru o lungă perioadă de timp au fost seriile Linksys WRT54G și Asus WL500G .

În 2016, opt dezvoltatori activi OpenWrt au părăsit proiectul și și-au creat propriul lor furk de LEDE ( Linux Embedded Development Environment ) .  Această decizie a fost luată de ei din cauza unor probleme de management nerezolvate în proiectul OpenWrt care s-au acumulat de-a lungul timpului [5] . În 2017, a fost lansată prima lansare a LEDE, iar în 2018, ambele proiecte (OpenWrt și LEDE) au fuzionat pe principiile de dezvoltare elaborate în LEDE: un ciclu de dezvoltare previzibil, reguli mai liberale pentru acceptarea modificărilor la cod în comparație cu OpenWrt precedent. , un proces transparent și de acceptare publică soluții [6] .

Caracteristici

Principala caracteristică distinctivă a OpenWrt este suportul complet pentru sistemul de fișiere JFFS2 , care a permis instalarea de software suplimentar din depozitul OpenWrt (pentru aceasta, a fost folosit anterior managerul de pachete ipkg , acum este opkg ). Acest lucru a făcut din OpenWrt un sistem de operare ușor de personalizat, care poate fi adaptat la aplicații specifice. În versiunile pentru routere cu o memorie flash de 4 MB sau mai mult, sistemul de fișiere SquashFS este de obicei utilizat pentru a stoca un sistem neschimbat și o suprapunere pe sistemul de fișiere JFFS2 (suprapunerea este o combinație de fișiere mutabile și neschimbate într-un singur director). În acest caz, spațiul este utilizat mai puțin eficient, deoarece modificările sunt stocate într-o secțiune separată, dar suprapunerea facilitează revenirea la setările implicite.

Firmware-ul stoc oferă un set de bază de caracteristici, în timp ce dezvoltarea continuă a versiunii „trunk” nu are o interfață web preinstalată. Pachetele (suplimentare) sunt folosite pentru a extinde funcționalitatea. Recenziile notează inconvenientul interfeței web pentru utilizatorii neexperimentați [7] [8] .

OpenWrt este configurat folosind linia de comandă (cu ash shell ), un set de scripturi UCI (Unified Configuration Interface) sau interfața web LuCI bazată pe aceasta. Arhivat 6 octombrie 2014 la Wayback Machine . Există mai mult de 3500 de pachete software disponibile în depozit, disponibile pentru instalare folosind sistemul de gestionare a pachetelor opkg .

Tipuri de conexiuni acceptate

Datorită posibilității de compilare independentă a firmware-ului (inclusiv nucleul), utilizarea OpenWrt vă permite să implementați aproape toate metodele de rețea cunoscute. În mod implicit, distribuțiile oficiale gata făcute pot folosi următoarele conexiuni:

UCI și LuCI

Configurarea tradițională a sistemelor asemănătoare Unix necesită completarea unui număr mare de fișiere de configurare text, dintre care majoritatea au sintaxă diferită și apelarea unui număr mare de utilitare din linia de comandă cu diverși parametri, ceea ce necesită crearea și depanarea de scripturi destul de complexe ( scenarii) .

În schimb, OpenWrt oferă o interfață de configurare unificată ( UCI ) Arhivată 7 noiembrie 2017 la Wayback Machine ( Interfață de configurare unificată ), care vă permite să controlați majoritatea parametrilor sistemului folosind o singură sintaxă a fișierului de configurare și o linie de comandă.  

Fișierele de configurare UCI sunt situate în ramura /etc/config și, în general, nu sunt menite să fie editate de oameni. Utilitarul uci este folosit pentru a vizualiza și modifica setările de configurare . La executarea comenzilor uci set , este creată o configurație temporară, dar configurația de lucru nu este modificată. Comanda uci revert inversează modificările aduse configurației temporare, care nici nu o afectează pe cea de lucru. Aplicarea efectivă a configurației are loc numai cu comanda uci commit , care pune descrierea unificată a configurației într-o stare coerentă și coerentă a fișierelor și scripturilor tradiționale de configurare.

Interfața web standard LuCI Arhivată 27 octombrie 2017 pe Wayback Machine ( în engleză  Lua Configuration Interface  - configuration interface on Lua ) folosește UCI pentru a obține informații despre sistem și pentru a face modificări la configurația acestuia.

X-Wrt

Proiectul soră X-Wrt este o extensie pentru utilizatorul final a OpenWrt [7] [10] . OpenWrt este un sistem de bază cu o interfață web minimă pentru configurarea opțiunilor. Extensia principală a X-Wrt este webif² [11] , o interfață web cu aproximativ 40 de pagini de opțiuni de configurare a routerului. Webif² include grafice ale traficului de rețea și monitorizarea sistemului, pagini pentru configurarea și controlul rețelei, conexiunea wireless și securitatea. Setările sunt furnizate pentru următoarele servicii: logging , boot , cron , NVRAM , editare text , ipkg management , SNMP , backup și restaurare , actualizare firmware , WAN , VLAN , Wi-Fi , WEP , WPA , WDS , filtrare MAC , Firewall , Port forwarding , DHCP , Dnsmasq , Hostnames , IP control , Routing , UPnP , QoS , DynDNS , Wake-on-LAN , OpenVPN , PPTP și WiFi hotspot .

Note

  1. https://openwrt.org/releases/22.03/notes-22.03.2 - 2022.
  2. https://openwrt.org/releases/21.02/notes-21.02.5 - 2022.
  3. https://github.com/openwrt/openwrt/blob/master/COPYING
  4. Felix Fietkau. OpenWrt comută implicit la musl (link descendent) . Lista de dezvoltare OpenWrt (16 iunie 2015). Data accesului: 16 iunie 2015. Arhivat din original pe 17 iunie 2015. 
  5. Dezvoltatorii activi ai OpenWrt au fondat un furk al distribuției  : [ arh. 5 mai 2016 ] // OpenNET. - 2016. - 3 mai.
  6. Proiectele OpenWrt și LEDE fuzionează  : [ arh. 6 ianuarie 2018 ] // OpenNET. - 2018. - 3 ianuarie.
  7. 1 2 Oskolkov I. Doar adăugați funcționalitate  : Firmware alternativ pentru routere // 3DNews. - 2011. - 5 mai.
  8. Edwards J. On Wireless Waves // WindowsIT PRO/RE. - Open Systems , 2006. - Nr. 4.
  9. OpenWRT - Configuring Dual Access (rusă) PPPoE Arhivat la 1 august 2013 la Wayback Machine Denis Yuriev, Blog? Nu-nu-nu..., 28 iunie 2013.
  10. Linux Format, 2007 .
  11. Process Lasso (link descendent) . Arhivat din original pe 13 octombrie 2007. 

Link -uri