OpenWrt

維基百科,自由的百科全書
跳至導覽 跳至搜尋
OpenWrt
File:OpenWrt Logo.svg
File:OpenWrt Screenshot 18.06.1.svg
OpenWrt 18.06.1 登入螢幕
開發者OpenWrt Project
作業系統家族類Unix系統
運作狀態支援中
原始碼模式自由軟件開源軟件
首次釋出2004年 (2004)
目前版本
    Module:EditAtWikidata第29行Lua錯誤:attempt to index field 'wikibase' (a nil value)
    最新預覽24.10.1[1](2025年4月15日,​14個月前​(2025-04-15[±]
    支援的語言22種語言[2]
    更新方式opkg, apk (25.12 以後)
    軟件套件管理系統opkg, apk (25.12 以後)
    支援平台使用以下架構的50種不同平台:AVR32英語AVR32, ARM, CRIS, m68k英語m68k, MIPS, PowerPC, SPARC, SuperH, Ubicom32英語Ubicom32, x86, x86-64[3]
    內核類別整塊性核心Linux
    用戶空間BusyBoxGNU
    預設用戶介面命令列介面、WebUI
    特許條款自由軟件GPL和其他特許條款)
    官方網站{{URL|example.com|可选的显示文本}}Module:EditAtWikidata第29行Lua錯誤:attempt to index field 'wikibase' (a nil value)
    倉庫
    • {{URL|example.com|可选的显示文本}}
    Module:EditAtWikidata第29行Lua錯誤:attempt to index field 'wikibase' (a nil value)

    OpenWrt是一個適用於嵌入式裝置的Linux發行版

    相對原廠韌體而言,OpenWrt不是一個單一、靜態的韌體,而是提供了一個可添加軟件套件的可寫的檔案系統。這讓用戶可以自由選擇應用程式和組態,而不必受裝置提供商的限制,並且可以使用一些適合某方面應用的軟件套件來客製化你的裝置。對於開發者來說,OpenWrt是一個框架,開發者不必麻煩地構建整個韌體就能得到想要的應用程式;對於用戶來說,這意味着完全客製化的能力,與以往不同的方式使用裝置,OPKG包含超過3500個軟件。預設使用LuCI作為web互動介面。

    OpenWrt也有另一個復刻分支專案,名為LEDE,兩者於2018年1月合併,合併後的專案使用OpenWrt的名字、LEDE的原始碼[4]

    歷史[編輯]

    2002年底Linksys公司推出WRT-54G,一款基於MIPS架構的無線路由器,使用802.11g標準使得頻寬在理論上能夠達到54M,在當時是一次巨大的進步。WRT-54G作業系統以Linux取代VxWorks,哥倫比亞大學法學院教授Eben Moglen向Linksys提出開源要求。

    2003年7月,Linksys迫於壓力,開源了WRT54G的韌體;2004年,Sveasoft公司釋出了Alchemy。從此無線路由器進入了可以刷機的時代。

    2004年1月出現所謂的OpenWRT,第一個版本是基於Linksys原始碼及uclibc中的buildroot專案。

    2005年初,BrainSlayer釋出了一個新的發行版:DD-WRT。接着釋出HyperWRT。同年,OpenWRT開發小組釋出第一個 「experimental」 版本,這版本跟Linksys的GPL原始碼已大相徑庭,使用Linux核心原始碼2.4.3x,還使用了更模組化的buildroot2。

    2007年,「White Russian」 版本釋出[5]

    2011年9月21日,juhosg接手OpenWrt,並釋出了wr703n的官方原始碼。

    2013年4月,OpenWrt 12.09 釋出,Linux核心版號為3.3版。

    由於WRT54G價格低廉,OpenWrt又開源免費,它在當時成為了學習嵌入式Linux的最佳平台。OpenWrt本身未帶任何UI,需要通過LuCI,webif等各種延伸介面,目前LuCI介面是使用率最高的Web管理介面。

    釋出版本[編輯]

    版本[6][7] 一般可用 內核 最新小版本 釋出日期 產品壽命結束[8] libc 註解
    first Stable Release 2004-01 ? 不適用 不適用 不適用 uClibc Based on Linksys GPL sources for WRT54G and a buildroot from the uClibc project
    0.9 (White Russian)[9][10] 2007-02-05 2.4.30 不適用 不適用 不適用 NVRAM-based, nas, wl. Supported platform: brcm-2.4.
    7.06 (Kamikaze)[11] 2007-06-02 2.6.19 7.09 [12][13] 2007-09-30 Using opkg. Supported platforms: atheros-2.6, au1000-2.6, brcm-2.4, brcm47xx-2.6, ixp4xx-2.6, imagicbox-2.6, rb532-2.6 and x86-2.6.
    8.09 (Kamikaze)[14] 2009-02-19 2.6.26 8.09.2[15][16] 2010-01-10 New platform: ar71xx.
    10.03 (Backfire)[17] 2010-04-07 2.6.32 10.03.1[18] 2011-12-21 Supported platforms: 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 and xburst.
    12.09 (Attitude Adjustment)[19] 2013-04-25 3.3 不適用 不適用 不適用 CoDel (network scheduler) backported from Linux 3.5 to 3.3. New platforms: ramips, bcm2708 (Raspberry Pi) and others.
    14.07 (Barrier Breaker)[20] 2014-10-02 3.10.49 不適用 不適用 不適用 New platforms: i.MX23, i.MX6.[21]
    15.05 (Chaos Calmer)[22] 2015-09-11 3.18.20 15.05.1[23] 2016-03-16 2016, March nftables (available since Linux kernel 3.12); New platforms: TBA if any
    17.01.0 (Reboot (OpenWrt/LEDE))[24] 2017-02-22 4.4.50 17.01.7 2019-06-20 2019, June musl[25] There were only release notes for "OpenWrt/LEDE 17.01.7 - Seventh Service Release - June 2019" with a code revision "rTODO-2252731af4".[26] The official announcement of "OpenWrt/LEDE v17.01.7 service release" was never made in the OpenWrt Forum due to GPG signing certs issues.[27]
    18.06.0[28] 2018-07-31 4.9.111 / 4.14.52 18.06.9 2020-12-09 2020, December
    19.07.0[29] 2020-01-06 4.14.162 19.07.10 2022-04-20 2022, April WPA3 support.[30] Flow offloading (beta).[31]
    21.02.0[32] 2021-09-04 5.4.143 21.02.7 2023-05-01 2023, May WPA3, TLS and HTTPS support included by default, initial DSA頁面存檔備份,存於互聯網檔案館) support, LXC and ujail support [33]
    22.03.0[34] 2022-09-06 5.10.138 22.03.6 2023-12-05 2024, April Firewall4 based on nftables, many new devices added, more targets converted to DSA, dark mode in LuCI, year 2038 problem handled, core components updated.[35]
    23.05.0[36] 2023-10-13 5.15.134 23.05.2 2023-11-16 2025, March New devices added, ipq40xx target converted to DSA, default cryptographic library switched to mbedtls, core components updated.[37]
    24.10.0[38] 2025-02-06 6.6 24.10.5 2025-12-19 2026, February New devices added, ipq806x target converted to DSA, improved support for WiFi6 (802.11ax) and initial support for WiFi7 (802.11be), core components updated.[39]
    圖例:   舊版本   舊版本,仍被支援   最新版本

    LEDE[編輯]

    LEDE原本為OpenWrt的一個復刻分支。OpenWrt過去一段時間曾沒有關鍵性更新以及對新裝置的支援,而關於這些的討論也遲遲未有結果,這使得一群OpenWRT核心貢獻者感到不滿;2016年5月,大部分原OpenWRT社群的核心開發組成員決定另立新專案,暫時以「Linux Embedded Development Environment」(Linux嵌入式開發環境)作為專案名稱,一年後才正式以暫定名稱的縮寫LEDE定名。

    2017年6月,LEDE社群和OpenWRT社群均同意將原OpenWRT專案合併至LEDE專案之中。LEDE專案的名號將不再使用,而是繼承原來OpenWRT的名號,但沿用LEDE社群的版規和流程規定。主體代碼以LEDE 17.x 為基礎,將OpenWRT的原始碼逐步合併至LEDE Snapshot上,系統標識改為OpenWRT。

    特色[編輯]

    OpenWrt遵循着市集-哲學而且已知有着豐富的選項。功能如下:

    Web 介面[編輯]

    在8.09版之前,OpenWrt提供最小GUI。OpenWrt推出8.09及日後新版中,有更多的Web介面可供選擇。[45]這個新介面基於LuCI,是一種MVC架構,由Lua語言撰寫。[44]

    X-Wrt英語X-Wrt是一個專為OpenWrt所設計的套件,是LuCI以外的另一種選擇,在包倉庫中名為webif,由用戶自行下載安裝。

    應用[編輯]

    硬件相容性[編輯]

    OpenWrt運行許多不同的路由器,並在其網站上包括一個相容硬件表。[47]在其買家指南中,比起博通,他們更建議購買高通Atheros晶片裝置。[48] OpenWrt在各大社群和無私貢獻的幫助下,你甚至在傳統的ARM硬路由上可以見到OpenWrt的身影,也能部署在x86-64的傳統電腦軟路由里OpenWrt的相容性遠遠不止如此。

    正式採用[編輯]

    OpenWrt,特別是其Buildroot構建系統,已經採用了很多次:

    • Freifunk英語Freifunk及其他網狀網絡社區
    • Bufferbloat.net (Cerowrt)
    • IETF IPv6整合項目HIPnet和HomeNet是基於OpenWrt

    衍生分支[編輯]

    • LEDE作為OpenWrt項目的分支機構而成立,並擁有許多相同的目標。現在已與OpenWRT合併。
    • CeroWrt – 目的是補充debloat測試kernel tree,並為緩衝區修復的現實世界測試提供一個平台[49][50]
    • Coova chilli – 基於OpenWrt的專注於無線熱點,一個chillifire的分支專注於無線熱點管理
    • Gargoyle – OpenWrt的一個Web介面,強調可用性,後來分支到一個單獨的分發
    • Flukso – 使用Atheros AR2317晶片組的無線感測器節點,運行修補的OpenWrt OS進行通訊。GitHub上提供的源和硬件原理圖。
    • Fon – 基於OpenWrt的無線路由器充當熱點。fonosfera.org上的源和工具鏈
    • Linino – 基於OpenWrt的基於MIPS架構Arduino的分發:GitHub項目
    • Midge Linux – 基於英飛凌 ADM-5120 SoCs的裝置的基於OpenWrt的發行版,例如Edimax BR-6104K和BR-6104KP。
    • OpenSAN – iSCSI目標儲存區域網絡實現。
    • PacketProtector – 基於OpenWrt的安全分發,包括IDSIPS英語Internet Provider SecurityVPN和Web防病毒功能。
    軟件包包括Snort,Snort-inline,FreeRADIUS,OpenVPN,DansGuardian和ClamAV。
    這些工具可以通過OpenWrt的舊Web GUI管理介面訪問,稱為X-Wrt或webif^2。項目於2012年6月7日結束。[51]
    • Turris Omnia英語Turris Omnia的Omnia路由器是使用OpenWrt的衍生運行
    • 無線社區網絡的多種草根項目,包括Freifunk,Libre-Mesh和qMp
    • libreCMC英語libreCMC – 基於OpenWrt的分發,沒有非自由軟件或二進制blob,由自由軟件基金會認可[52]
    • Asuswrt(asuswrt-merlin),載體為Asus網通產品。
    • 部分企業如小米TP-LinkD-Link 釋出的家用路由器韌體是基於 OpenWrt 的二次開發版本。[53][53][54]
    • ImmortalWrt - 一個OpenWrt的衍生版本,主要由中國的開發者社群維護。[55][56]
    • 友善電子生產的Nano Pi系列的Soc裝置,並提供基於 OpenWrt 的衍生作業系統 FriendlyWrt。[57]

    參見[編輯]

    註釋[編輯]

    1. ^ OpenWrt 24.10.1 - Service Release - 15. April 2025. OpenWrt. 2025-04-15 [2025-04-15]. 
    2. ^ LuCI Translation Portal. 2004-09-01 [2010-12-31]. (原始內容存檔於2010-11-19). 
    3. ^ Config.in in trunk/target – OpenWrt. dev.openwrt.org. 2013-11-22 [2014-02-13]. (原始內容存檔於2014-02-22). 
    4. ^ Solidot | OpenWrt 和 LEDE 项目宣布合并. www.solidot.org. [2020-08-05]. (原始內容存檔於2018-06-14). 
    5. ^ 存档副本. [2022-04-29]. (原始內容存檔於2022-05-02). 
    6. ^ OpenWrt version history. 2023-10-16 [2022-04-29]. (原始內容存檔於2022-05-02). 
    7. ^ Release Builds. 2023-10-19 [2024-03-23]. (原始內容存檔於2024-05-05). 
    8. ^ Security - Support status. December 28, 2015 [2024-01-09]. (原始內容存檔於2024-05-24). 
    9. ^ Whiterussian 0.9 / Kamikaze snapshots. 2007-02-05 [2024-03-23]. (原始內容存檔於2024-05-06). 
    10. ^ WHITE RUSSIAN 0.9. 2007-02-05 [2024-03-23]. (原始內容存檔於2022-08-14). 
    11. ^ Kamikaze 7.06. 2007-06-02 [2024-03-23]. (原始內容存檔於2023-08-04). 
    12. ^ Kamikaze 7.07. 2007-07-26 [2024-03-23]. (原始內容存檔於2024-05-06). 
    13. ^ Kamikaze 7.09. 2007-09-30 [2024-03-23]. (原始內容存檔於2024-05-06). 
    14. ^ Kamikaze 8.09. 2009-02-19 [2024-03-23]. (原始內容存檔於2024-03-17). 
    15. ^ Kamikaze 8.09.1. 2009-06-03 [2024-03-23]. (原始內容存檔於2023-12-11). 
    16. ^ Kamikaze 8.09.2. 2010-01-10 [2024-03-23]. (原始內容存檔於2023-11-09). 
    17. ^ Backfire 10.03. 2010-04-07 [2024-03-23]. (原始內容存檔於2024-02-21). 
    18. ^ Backfire 10.03.1. 2011-12-21 [2024-03-23]. (原始內容存檔於2023-12-11). 
    19. ^ Attitude Adjustment. 2013-04-25 [2024-03-23]. (原始內容存檔於2023-12-02). 
    20. ^ Barrier Breaker. 2014-10-02 [2024-03-23]. (原始內容存檔於2024-02-26). 
    21. ^ OpenWrt Project: Freescale i.MX. openwrt.org. July 16, 2013 [2018-07-16]. (原始內容存檔於2024-05-09) (English). 
    22. ^ Chaos Calmer. 2015-09-11 [2024-03-23]. (原始內容存檔於2024-04-15). 
    23. ^ OpenWrt 15.05.1 "Chaos Calmer". 2016-03-16 [2024-03-23]. (原始內容存檔於2024-04-06). 
    24. ^ LEDE 17.01 "Reboot". 2019-06-29 [2024-03-23]. (原始內容存檔於2024-05-08). 
    25. ^ [OpenWrt-Devel] OpenWrt switches to musl by default. 2015-06-16 [June 27, 2015]. (原始內容存檔於2023-11-04). 
    26. ^ OpenWrt/LEDE 17.01.7 - Seventh Service Release - June 2019. 2019-06-20 [2024-03-23]. (原始內容存檔於2024-02-21). 
    27. ^ OpenWrt 17.01.7 - date of release?. July 20, 2019 [2024-01-11]. (原始內容存檔於2024-05-06). 
    28. ^ OpenWrt 18.06. 2018-07-31 [2024-03-23]. (原始內容存檔於2024-03-14). 
    29. ^ OpenWrt 19.07. 2020-01-06 [2019-11-07]. (原始內容存檔於2019-11-07). 
    30. ^ Mehrtens, Hauke. OpenWrt 19.07.0 - First Stable Release - 6 January 2020. OpenWrt Wiki. January 6, 2020 [2020-01-31]. (原始內容存檔於2020-01-12). 
    31. ^ Man, Low Kah. Speedtest OpenWRT with flow offloading. Leow Kah Man - Tech Blog. February 1, 2020 [2024-03-23]. (原始內容存檔於2024-01-17). 
    32. ^ OpenWrt 21.02. 2021-09-04 [2021-12-26]. (原始內容存檔於2021-10-20). 
    33. ^ Mehrtens, Hauke. OpenWrt 21.02.0 - First Stable Release - 4 September 2021. OpenWrt Wiki. September 4, 2021 [2021-12-26]. (原始內容存檔於2021-11-30). 
    34. ^ OpenWrt 22.03. 2022-09-06 [2024-03-23]. (原始內容存檔於2024-04-16). 
    35. ^ OpenWrt 21.03.0 - First Stable Release - 6 September 2022. OpenWrt Wiki. September 15, 2022 [2024-03-23]. (原始內容存檔於2024-05-10). 
    36. ^ OpenWrt 23.05. 2023-10-13 [2024-03-23]. (原始內容存檔於2024-05-05). 
    37. ^ Mehrtens, Hauke. OpenWrt 23.05.0 - First Stable Release - 13 October 2023. OpenWrt Wiki. 2023-10-11 [2023-10-24]. (原始內容存檔於2024-05-10) (English). 
    38. ^ OpenWrt 24.10. 2025-02-06. 
    39. ^ Mehrtens, Hauke. OpenWrt 24.10.0 - First Stable Release - 6. February 2025. OpenWrt Wiki. 2025-02-06 [2025-05-26] (English). 
    40. ^ Debating overlayfs. June 15, 2011 [2015-07-24]. (原始內容存檔於2015-07-24). 
    41. ^ OpenWrt partition layout. [2015-07-24]. (原始內容存檔於2015-07-24). 
    42. ^ OpenWrt Unified Configuration Interface. [2015-07-24]. (原始內容存檔於2015-07-24). 
    43. ^ freecwmp is a CWMP client for OpenWrt. [2015-07-24]. (原始內容存檔於2014-07-09). 
    44. ^ 44.0 44.1 LuCI project. [February 28, 2009]. (原始內容存檔於2015-10-26). 
    45. ^ OpenWrt 8.09 release notes. [February 23, 2009]. (原始內容存檔於2015-08-17). 
    46. ^ [OpenWrt Wiki] mwan3 (Multi WAN load balancing/failover). openwrt.org. [2024-10-13]. (原始內容存檔於2025-01-28). 
    47. ^ Table of Hardware [OpenWrt Wiki]. wiki.openwrt.org. [2016-10-06]. (原始內容存檔於2016-10-09). 
    48. ^ Buyers' Guide [OpenWrt Wiki]. wiki.openwrt.org. [2016-10-06]. (原始內容存檔於2016-10-09). 
    49. ^ CeroWrt Wiki. [2015-09-16]. (原始內容存檔於2015-10-07). 
    50. ^ ANNOUNCE: debloat-testing kernel git tree. LWN.net. [2014-02-13]. (原始內容存檔於2014-02-22). 
    51. ^ "closing time" message from author on PacketProtector forum. [2017-02-19]. (原始內容存檔於2013-04-21). 
    52. ^ Free Software Foundation adds libreCMC to its list of endorsed distributions. FSF.org. 2014-09-04 [2014-12-21]. (原始內容存檔於2014-12-21). 
    53. ^ 53.0 53.1 GPL Code Center | TP-Link Australia. www.tp-link.com. [2024-10-13]. (原始內容存檔於2025-01-23). 
    54. ^ [OpenWrt Wiki] Xiaomi. openwrt.org. [2024-10-13]. (原始內容存檔於2025-01-17). 
    55. ^ Project ImmortalWrt. GitHub. [2024-10-13]. (原始內容存檔於2025-01-26) (English). 
    56. ^ ImmortalWrt Firmware Selector. firmware-selector.immortalwrt.org. [2024-10-13]. (原始內容存檔於2024-12-25). 
    57. ^ FriendlyElec Downloads. www.friendlyelec.com. [2024-10-13]. (原始內容存檔於2025-01-26). 

    外部連結[編輯]