OpenWrt - OpenWrt
Udvikler | OpenWrt -projekt |
---|---|
OS familie | Unix-lignende |
Arbejdstilstand | Nuværende |
Kildemodel | Åben kilde |
Første udgivelse | Januar 2004 |
Seneste udgivelse | 21.02.0 / 4. september 2021 |
Depot | |
Tilgængelig i | Engelsk, kinesisk, polsk, portugisisk, Punjabi, spansk, walisisk + 25 delvist oversatte sprog |
Opdateringsmetode | opkg |
Pakke manager | opkg |
Platforme | 50 forskellige platforme ved hjælp af følgende instruktionssæt : ARC , ARM , m68k , MIPS , PowerPC , SPARC , SuperH , x86 , x86-64 |
Kernel type | Monolitisk ( Linux ) |
Brugerland | BusyBox |
Standard brugergrænseflade |
CLI , WebUI'er |
Licens | Gratis software ( GPL og andre licenser) |
Officiel hjemmeside | openwrt |
OpenWrt (fra åben trådløs router ) er et open source-projekt til integrerede operativsystemer baseret på Linux , primært brugt på integrerede enheder til at dirigere netværkstrafik. Hovedkomponenterne er Linux, util-linux , musl og BusyBox . Alle komponenter er blevet optimeret til at være små nok til at passe ind i den begrænsede lagerplads og hukommelse, der er tilgængelig i hjemmeroutere.
OpenWrt er konfigureret ved hjælp af en kommando-line interface ( aske shell) eller en web-grænseflade (luci). Der er omkring 3500 valgfri softwarepakker tilgængelige til installation via opkg pakkehåndteringssystemet .
OpenWrt kan køre på forskellige typer enheder, inklusive CPE routere, døgninstitutioner gateways , smartphones , lommecomputere (f.eks Ben NanoNote ). Det er også muligt at køre OpenWrt på personlige computere og bærbare computere , som oftest er baseret på x86 -arkitekturen.
Historie
OpenWrt -projektet blev startet i 2004, efter at Linksys havde bygget firmwaren til deres WRT54G -serie af trådløse routere med kode licenseret under GNU General Public License . I henhold til betingelserne i denne licens var Linksys forpligtet til at stille kildekoden til den ændrede version tilgængelig under den samme licens, hvilket gjorde det muligt for uafhængige udviklere at oprette afledte versioner. Support var oprindeligt begrænset til WRT54G -serien, men er siden blevet udvidet til at omfatte mange andre routere og enheder fra mange forskellige producenter.
Ved at bruge denne kode som en base og senere som en reference, udviklede udviklere en Linux-distribution, der tilbyder mange funktioner, der ikke tidligere findes i routere på forbrugerniveau. Nogle funktioner krævede tidligt proprietær software. For eksempel kunne b43
WLAN for mange Broadcom -baserede routere kun fås via det proprietære wl.o
modul (og som krævede Linux 2.4.x) før OpenWrt 8.09 (baseret på Linux 2.6.25 og kernemodulet ).
OpenWrt-udgivelser blev historisk opkaldt efter cocktails, såsom White Russian , Kamikaze , Backfire, Attitude Adjustment, Barrier Breaker og Chaos Calmer, og deres opskrifter blev inkluderet i dagens meddelelse (motd), der blev vist efter at have logget ind med kommandolinjegrænsefladen .
I maj 2016 blev OpenWrt punget af en gruppe centrale OpenWrt -bidragydere på grund af uenigheder om intern proces. Gaffelen blev kaldt Linux Embedded Development Environment (LEDE). Skismaet blev forenet et år senere. Efter omlægningen, der blev annonceret i januar 2018, bevares OpenWrt -branding med mange af LEDE -processerne og -reglerne brugt. LEDE -projektnavnet blev brugt til v17.01, med udviklingsversioner af 18.01 -mærket OpenWrt, der droppede det originale cocktailbaserede navneskema.
Udgivelser
Version (kodenavn) | Udgivelses dato | Kerne | libc | Noter |
---|---|---|---|---|
0,9 (hvid russisk) | Januar 2006 | 2.4.30 | uClibc | NVRAM-baserede, nas , wl . Understøttet perron: brcm-2.4 .
|
7.06 (Kamikaze) | Juni 2007 | 2.6.19 | Brug opkg . Understøttede platforme: atheros-2.6 , au1000-2.6 , brcm-2.4 , brcm47xx-2.6 , ixp4xx-2.6 , imagicbox-2.6 , rb532-2.6 og x86-2.6 .
|
|
7,07 (Kamikaze) | Juli 2007 | 2.6.21 | Ny platform: amcc-2.6 .
|
|
7.09 (Kamikaze) | September 2007 | |||
8.09 (Kamikaze) | September 2008 | 2.6.26 | Ny platform: ar71xx .
|
|
10.03 (bagslag) | 7. april 2010 | 2.6.32 | Understøttede platforme: adm5120_mips , adm5120_mipsel , ar7 , ar71xx , atheros , au1000 , avr32 , brcm-2.4 , brcm47xx , brcm63xx , cobalt , ep80579 , ifxmips , ixp4xx , kirkwood , octeon , orion , ppc40x , ppc44x , rb532 , rdc , x86 og xburst .
|
|
12.09 (holdningsjustering) | 25. april 2013 | 3.3 |
CoDel ( netværksplanlægger ) backported fra Linux 3.5 til 3.3. Nye platforme: ramips , bcm2708 (Raspberry Pi) og andre.
|
|
14.07 (barrierebryder) | 2. oktober 2014 | 3.10.49 | Nye platforme: i.MX23 , i.MX6 .
|
|
15.05 (Kaos roligere) | 11. september 2015 | 3.18.20 | nftables (tilgængelig siden Linux -kerne 3.12); Nye platforme: TBA hvis nogen | |
15.05.1 (Kaos roligere) | 16. marts 2016 | 3.18.23 | ||
17.01.7 (Genstart (OpenWRT/LEDE)) | 20. juni 2019 | 4.4.182 | musl | |
18.06.0 | 31. juli 2018 | 4.9.111, 4.14.52 | ||
18.06.1 | 19. august 2018 | 4.9.120, 4.14.63 | ||
18.06.2 | 31. januar 2019 | 4.9.152, 4.14.95 | ||
18.06.4 | 1. juli 2019 | 4.9.184, 4.14.131 | ||
18.06.5 | 8. november 2019 | 4.9.198, 4.14.151 | ||
18.06.6 | 10. januar 2020 | 4.9.208, 4.14.162 | ||
18.06.7 | 31. januar 2020 | 4.9.211, 4.14.167 | ||
18.06.8 | 6. marts 2020 | 4.9.214, 4.14.171 | ||
18.06.9 | 9. december 2020 | 4.9.243, 4.14.206 | Sikkerhedsrettelser (SAD DNS), kernekomponentopdateringer og mere enhedsunderstøttelse. Slutningen af 18.06 support. | |
19.07.0 | 6. januar 2020 | 4.14.162 | WPA3 support. | |
19.07.1 | 31. januar 2020 | 4.14.167 | Sikkerhed og fejlrettelser og mere enhedsunderstøttelse. | |
19.07.2 | 6. marts 2020 | 4.14.171 | Sikkerhed og fejlrettelser og mere enhedsunderstøttelse. | |
19.07.3 | 20. maj 2020 | 4.14.180 | Sikkerhed og fejlrettelser og mere enhedsunderstøttelse. | |
19.07.4 | 10. september 2020 | 4.14.195 | Stabilitet og enhedsunderstøttelse. | |
19.07.5 | 9. december 2020 | 4.14.209 | Regressioner og sikkerhedsrettelser (SAD DNS). | |
19.07.6 | 19. januar 2021 | 4.14.215 | Sikkerhed og fejlrettelser | |
19.07.7 | 18. februar 2021 | 4.14.221 | Sikkerhed og fejlrettelser | |
19.07.8 | 7. august 2021 | 4.14.241 | Sikkerhed og fejlrettelser | |
21.02.0 | 4. september 2021 | 5.4.143 | WPA3 , TLS og HTTPS support inkluderet som standard, første DSA support, LXC og ujail support | |
Legende: Gammel version Ældre version, stadig vedligeholdt Nyeste version |
LEDE
Udvikler | LEDE -projekt |
---|---|
OS familie | Unix-lignende |
Arbejdstilstand | Fusioneret med OpenWRT |
Kildemodel | Åben kilde |
Første udgivelse | Maj 2016 |
Depot | |
Tilgængelig i | 26 sprog |
Opdateringsmetode | opkg |
Pakke manager | opkg |
Platforme | 23 platforme, der bruger følgende instruktionssæt : AVR32 , ARM , CRIS , m68k , MIPS , PowerPC , SPARC , SuperH , Ubicom 32, x86 , x86-64 |
Kernel type | Monolitisk ( Linux ) |
Brugerland | BusyBox , GNU |
Standard brugergrænseflade |
CLI , WebUI'er |
Licens | Gratis software ( GPL og andre licenser) |
Officiel hjemmeside | lede-projekt |
Den Linux Embedded Development Environment ( Lede ) projekt var en gaffel af OpenWrt projektet og delte mange af de samme mål. Det blev oprettet i maj 2016 af en gruppe centrale OpenWrt -bidragydere på grund af uenigheder om OpenWrt interne processer. Skismaet blev nominelt forenet et år senere i maj 2017 i afventning af godkendelse af LEDE -udviklerne. Fusionen bevarer OpenWrt -branding, men bruger mange af LEDE -processerne og -reglerne. Afstemningen om remerge -forslag blev vedtaget af LEDE -udviklere i juni 2017 og formelt annonceret i januar 2018. Fusioneringsprocessen blev afsluttet inden OpenWRT 18.06 -udgivelsen.
Version | Udgivelses dato | Revisionsnummer | Noter |
---|---|---|---|
17.01.0 | 22. februar 2017 | r3205 | Første stabile udgivelse |
17.01.1 | 19. april 2017 | r3316 | Kernel 4.4.61, fejlrettelser og forbedringer |
17.01.2 | 12. juni 2017 | r3435 | Kernel 4.4.71, sikkerhedsrettelser |
17.01.3 | 3. oktober 2017 | r3534 | Kernel 4.4.89, sikkerhedsrettelser |
17.01.4 | 18. oktober 2017 | r3560 | Kernel 4.4.92, sikkerhedsrettelser ( KRACK , så vidt de kan adresseres af rettelser på serversiden) |
17.01.5 | 18. juli 2018 | r3919 | Kernel 4.4.140, sikkerhedsrettelser |
17.01.6 | 3. september 2018 | r3979 | Kernel 4.4.153, sikkerhedsrettelser |
Funktioner
OpenWrt har et skrivbart rodfilsystem , der gør det muligt for brugere at ændre enhver fil og nemt installere yderligere software. Dette er i kontrast til anden firmware baseret på skrivebeskyttede filsystemer, der ikke tillader ændring af installeret software uden at genopbygge og blinke et komplet firmwarebillede. Dette opnås ved at overlejre et skrivebeskyttet komprimeret SquashFS- filsystem med et skrivbart JFFS2- filsystem ved hjælp af overlayfs . Yderligere software kan installeres med opkg -pakkehåndteringen , og pakkelageret indeholder cirka 6000 pakker.
OpenWrt kan konfigureres enten via en kommandolinjegrænseflade eller en webgrænseflade kaldet LuCI. OpenWrt indeholder et sæt scripts kaldet UCI (unified configuration interface) for at forene og forenkle konfigurationen via kommandolinjegrænsefladen. Yderligere webgrænseflader, såsom Gargoyle , er også tilgængelige.
OpenWrt giver regelmæssige fejlrettelser og sikkerhedsopdateringer, selv for enheder, der ikke længere understøttes af deres producenter.
OpenWrt giver udtømmende muligheder for at konfigurere fælles netværksrelaterede funktioner, som IPv4 , IPv6 , DNS , DHCP , routing , firewall , NAT , port forwarding og WPA .
Andre funktioner omfatter:
- Extensible konfiguration af hele hardware drivers, fx indbygget netværks-switche og deres VLAN -capabilities, WNICs , DSL-modemmer , FX , tilgængelig hardware knapper mv
- Mesh -netværk via BATMAN , OLSR og IEEE 802.11s -funktioner for WNIC -driverne og andre ad hoc mesh routingprotokoller, der er blevet implementeret i Linux.
- Trådløs funktionalitet, fx få enheden til at fungere som en trådløs repeater , et trådløst adgangspunkt , en trådløs bro , en fanget portal eller en kombination af disse med f.eks. ChilliSpot , WiFiDog Captive Portal osv.
- Trådløs sikkerhed: Packet injektion , f.eks Airpwn , lorcon , ea
- Dynamisk konfigurerede port forwarding protokoller UPnP og NAT-PMP gennem upnpd osv.
- Havn banker
- TR-069 (CWMP) klient
- IPS via Snort
- Aktiv køstyring (AQM) gennem netværksplanlæggeren af Linux -kernen, med mange tilgængelige kødiscipliner . CoDel er blevet backportet til Kernel 3.3. Dette indkapsler Trafikformning for at sikre en fair fordeling af båndbredde blandt flere brugere og servicekvalitet (QoS) til samtidig brug af applikationer som VoIP , online spil og streamingmedier uden at opleve de negative virkninger af linkmætning.
- Belastningsbalancering til brug med flere internetudbydere ved hjælp af kildespecifik routing
- IP -tunneling ( GRE , OpenVPN, pseudowire osv.)
- Extensible realtime overvågning af netværk og statistik gennem f.eks RRDtool , Collectd , Nagios , Munin lite , Zabbix osv
- Dynamiske DNS -tjenester til vedligeholdelse af et fast domænenavn med en internetudbyder , der ikke giver en statisk IP -adresse
- OpenWrt understøtter al hardware, der har Linux -understøttelse; enheder, der kan tilsluttes (f.eks. over USB ), inkluderer
- Bemærkelsesværdige softwarepakker til brug af hardwaresupporten er
- Fildeling via SAMBA , (Windows-kompatibel), NFS , FTP , SFTP. Printerdeling over printerserverens CUPS (spooling) eller p910nd (ikke-spooling)
- PulseAudio , Music Player Daemon , Audio / Video streaming via DLNA / UPnP AV -standarder , iTunes ( DAAP ) server
- Stjerne (PBX)
- MQ Telemetry Transport gennem Myg
Udvikling
OpenWrt's udviklingsmiljø og build -system, sammen kendt som OpenWrt Buildroot , er baseret på et stærkt modificeret Buildroot -system. OpenWrt Buildroot er et sæt Makefiles og patches, der automatiserer processen med at opbygge et komplet Linux-baseret OpenWrt-system til en integreret enhed, ved at bygge og bruge en passende krydskompilering værktøjskæde .
Indlejrede enheder bruger normalt en anden processor end den, der findes i værtscomputere, der bruges til at bygge deres OpenWrt-systembilleder, hvilket kræver en krydskompilationsværktøjskæde. Sådan en kompilationsværktøjskæde kører på et værtsystem, men genererer kode til en målrettet indlejret enhed og dens processors instruktionssætarkitektur (ISA). For eksempel, hvis et værtsystem bruger x86, og et målsystem bruger MIPS32 , kører værtens almindelige kompilationsværktøjskæde på x86 og genererer kode til x86-arkitektur, mens krydskompilationsværktøjskæden kører på x86 og genererer kode til MIPS32-arkitekturen. OpenWrt Buildroot automatiserer hele denne proces til at arbejde med instruktionssætets arkitekturer for de fleste integrerede enheder og værtsystemer.
OpenWrt Buildroot har følgende funktioner:
- Gør det let at overføre software på tværs af arkitekturer
- Bruger kconfig (Linux kernel menuconfig ) til konfiguration af alle muligheder
- Giver en integreret cross-compiler værktøjskæde ( gcc , ld , uClibc osv.)
- Giver en abstraktion til autotools ( automake , autoconf ), CMake og SCons
- Håndterer standard OpenWrt -billedopbygnings -arbejdsgang: Download, patching, konfiguration, kompilering og emballering
- Giver en række almindelige rettelser til kendte dårligt opførte pakker
Udover at opbygge systembilleder giver OpenWrt-udviklingsmiljøet også en mekanisme til forenklet opbygning på tværs af platforme af OpenWrt-softwarepakker. Kildekode til hver softwarepakke er påkrævet for at levere et Makefile-lignende sæt byggeinstruktioner og et valgfrit sæt patches til fejlrettelser eller fodaftrykoptimeringer.
Hardware kompatibilitet
OpenWrt kører mange forskellige routere og inkluderer en tabel med kompatibel hardware på sit websted. I købers vejledning bemærker det, at brugere anbefaler enheder udstyret med trådløse chips fra enten Qualcomm's Atheros eller Ralink (nu MediaTek ). OpenWrt anbefaler også at vælge en enhed med mindst 16 MB flash og 64 MB RAM, helst højere mængder.
Adoption
OpenWrt, især dets Buildroot build -system, er blevet vedtaget som strukturen for andre bestræbelser. For eksempel
- AltiWi "engangs-gebyr-kun" erstatning for Cloudtrax.
- Bufferbloat.net (Cerowrt)
- Freifunk og andre mesh -netværksfællesskaber
- IETF IPv6-integrationsprojekter HIPnet og HomeNet er OpenWrt-baserede
- prplWrt, carrier-grade framework designet til at drive internetudbyders routere og gateways lavet af Prpl Foundation
- SIMET Box, udviklet af NIC.br , er OpenWrt-baseret
Afledte projekter
- AREDN - Amateur Radio Emergency Data Network bruger en firmware baseret på OpenWrt: GitHub Project
- CeroWrt- (2011—2014) projekt for at løse bufferbloat i hjemmenetværk, understøtte IPv6, integrere DNSSEC, for kablet og trådløst, for at supplere debloat-testende kernetræet og give en platform til virkelige test af bufferbloat- rettelser
- Coova chili-OpenWrt-baseret med fokus på trådløse hotspots, en gaffel chili med fokus på trådløs hotspot-styring
- Flukso - Trådløse sensorknudepunkter ved hjælp af et Atheros AR2317 -chipsæt, der kører et patched OpenWrt OS til kommunikation. Kilder og hardwareskemaer tilgængelige på GitHub .
- Fon -OpenWrt-baserede trådløse routere, der fungerer som hotspots. Kilder og værktøjskæde tilgængelige på fonosfera.org
- Gargoyle - en webgrænseflade til OpenWrt med stor vægt på brugervenlighed, der senere blev en separat distribution
- Gluon-Ramme til opbygning af OpenWrt-baserede firmwares monteret til implementering af netværksnetværk : GitHub Project
- JUCIWRT - en moderne distribution ved hjælp af JUCI webgui, der senere blev et OpenWRT -feed i stedet. Kildekoden til JUCI er tilgængelig på mkschreder/juci og kan stadig bruges ved at installere openwrt feed fundet på mkschreder/juci-openwrt-feed
- libreCMC -OpenWrt-baseret distribution, der udelukker ikke-fri software eller binære klatter, godkendt af Free Software Foundation
- Linino -OpenWrt -baseret distribution til det MIPS -baserede Arduino Yùn: GitHub -projekt
- Midge Linux-en OpenWrt-baseret distribution til enheder baseret på Infineon Technologies ADM-5120 SoC'er , såsom Edimax BR-6104K og BR-6104KP.
- OpenMPTCProuter - sammenlægning af flere internetforbindelser ved hjælp af Multipath TCP
- OpenSAN - realisering af iSCSI -mål Storage Area Network .
- PacketProtector-OpenWrt-baseret sikkerhedsdistribution, der inkluderer IDS , IPS , VPN og webantivirusfunktioner . Pakker inkluderet Snort, Snort-inline, FreeRADIUS , OpenVPN , DansGuardian og ClamAV . Disse værktøjer var tilgængelige via den gamle web-GUI-styringsgrænseflade i OpenWrt, kaldet X-Wrt eller webif^2. Projektet sluttede den 7. juni 2012.
- Qualcomms QCA Software Development Kit (QSDK), der bruges som udviklingsgrundlag af mange OEM'er, er et OpenWrt -derivat
- RutOS - et operativsystem til alle Teltonika -routere, baseret på OpenWRT. Kildekode fundet på GPL - Teltonika Networks Wiki .
- Turris Omnia og Turris MOX routere kører på et OpenWrt -derivat
- Ubiquitis trådløse router -firmwares er baseret på OpenWrt
- Diverse græsrodsprojekter for trådløse samfundsnetværk , herunder Freifunk , Libre-Mesh og qMp
- Nogle TP-Link router-firmwares stammer fra OpenWrt
- Nogle Xiaomi router -firmwares stammer fra OpenWrt.
Se også
Referencer
eksterne links
- OpenWrt -downloads
- OpenWrt -postlister
- LuCI -projekt
- OpenWrt Summit
- prpl Foundation (en non-profit fond, der blev grundlagt af Imagination Technologies for at understøtte MIPS-platformen)
- GPL Code Center hos Linksys