OpenWrt

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

相對原廠韌體而言，OpenWrt 不是一個單一、靜態的韌體，而是提供了一個可新增軟體包的可寫的檔案系統。這使使用者可以自由的選擇應用程式和配置，而不必受裝置提供商的限制，並且可以使用一些適合某方面應用的軟體包來定製你的裝置。對於開發者來說，OpenWrt 是一個框架，開發者不必麻煩地構建整個韌體就能得到想要的應用程式；對於使用者來說，這意味著完全定製的能力，與以往不同的方式使用裝置，OPKG 包含超過 3500 個軟體。

預設使用 LuCI 作為 web 互動介面。

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

歷史

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” 版本釋出

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

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

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

1.1 釋出版本

LEDE

Linux 嵌入式開發環境，即 The Linux Embedded Development Environment （LEDE），該專案是 OpenWrt 專案的一個分支，成立於 2016 年 5 月，由部分 OpenWrt 核心開發者創立，原因是他們對 OpenWrt 內部管理流程產生了分歧。LEDE 專案延續了 OpenWrt 的目標，專注於嵌入式系統的開發，但引入了新的開發和治理流程。

2017 年 5 月，OpenWrt 和 LEDE 雙方開始尋求專案的合併，並在經過一年的協調後，達成了共識。LEDE 開發者於 2017 年 6 月通過了合併提案，並在 2018 年 1 月正式宣佈兩者重新合併。

合併後，保留了 OpenWrt 的品牌名稱，但在專案治理和開發流程上借鑑了 LEDE 的許多機制。該合併在 OpenWrt 18.06 版本釋出之前完成。合併後的專案繼續以 OpenWrt 名義運作，並維持其作為開源嵌入式 Linux 系統的重要地位。

特色

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

可寫的根目錄，讓使用者自行新增，移除或修改任何檔案。SquashFS 與 JFFS2 檔案系統的整合形成的 overlayfs 機制形成重疊。squashfs 是一種只讀的壓縮檔案系統，壓縮率和 gzip 差不多。jffs2 是一種日誌型別的檔案系統，專為 NorFlash 設計。
包管理員 opkg，類似 dpkg，可讓使用者新增或移除軟體。軟體倉庫大約有 3500 個包。是一個可以從本地或遠端軟體下載並安裝 OpenWrt 包的輕量型實用工具。
UCI (unified configuration interface) 指令碼支援
完整的硬體驅動程式支援。例如：內建網路交換器及其 VLAN - 相容，s, DSL modems, 等。
各種計算機網路設定如下:
路由可透過 iproute2, , 等。
支援多種 IPv6 過渡機制
網狀網路可經由 B.A.T.M.A.N., 與 IEEE 802.11s - 相容的 WNIC drivers
無線功能。如裝置實現無線路由、無線接取器、無線橋接、強制，或結合一些裝置如: ChilliSpot、WiFiDog Captive Portal 等。
無線安全: Packet injection，例如: Airpwn、lorcon 等。
狀態防火牆、NAT 和路由器埠掃描 (port forwarding) 經由 netfilter；其他還有 PeerGuardian 已支援。
UPnP 與 NAT-PMP 可透過 upnpd 來設定。
port knocking 可透過 knockd 與 knock 達成。
TR-069
IPS 經由 Snort
使用多個網際網路服務供應商達到負載平衡。
IP 穿透 (tunneling)
網路監視與統計資料等。例如: RRDtool, Collectd, Nagios, , Zabbix 等。
域名系統 (DNS) 和 DHCP 經由 Dnsmasq、MaraDNS 等。
動態 DNS 可負責修復網際網路服務供應商的 DNS，但不提供靜態 IP 地址
無線分散系統 (WDS) 包含 WPA-PSK、WPA2-PSK、WPA-PSK/WPA2-PSK 混合加密模式
OpenWrt 支援各種 Linux 已支援的硬體，並透過 USB 連線
印表機
mobile broadband modem
網路攝像頭
音效卡
著名的軟體支援硬體 :
檔案分享經由 Samba，(Windows 相容)，NFS 和 FTP，經由 print server CUPS (spooling) 或 p910nd (non-spooling) 分享列印功能。
PulseAudio, Music Player Daemon，音效與影像流經由 DLNA/UPnP AV standards、iTunes 伺服器
Asterisk
MQ Telemetry Transport 經由 Mosquitto
可延伸的 Ajax，由 LuCI 支援
系統更新，即便裝置已不再受原廠支援。

3.1 Web 介面

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

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

應用

用於離線離線下載
VPN 伺服器
SSH 伺服器
網路代理
主機遊戲加速
內網穿透
動態 DDNS
單線多撥及頻寬疊加
多線路撥號寬頻疊加
QOS 智慧限速
遠端影片監控
去除廣告，遮蔽惡意域名
網路印表機
軟路由
比特幣礦機
Docker
高可用性（HA）和負載均衡

硬體相容性

OpenWrt 執行許多不同的路由器，並在其網站上包括一個相容硬體表。在其買家指南中，比起博通，他們更建議購買高通 Atheros 晶片裝置。

OpenWrt 在各大社群和無私貢獻的幫助下，你甚至在傳統的 ARM 硬路由上可以見到 OpenWrt 的身影，也能部署在 x86-64 的傳統電腦軟路由裡 OpenWrt 的相容性遠遠不止如此。

正式採用

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

Freifunk 及其他網狀網路社群
Bufferbloat.net (Cerowrt)
IETF IPv6 整合專案 HIPnet 和 HomeNet 是基於 OpenWrt

衍生分支

LEDE 作為 OpenWrt 專案的分支機構而成立，並擁有許多相同的目標。現在已與 OpenWRT 合併。
CeroWrt 目的是補充 debloat 測試 kernel tree，並為緩衝區修復的現實世界測試提供一個平臺
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 的安全分發，包括 IDS，，VPN 和 Web 防病毒功能。

軟體包包括 Snort，Snort-inline，FreeRADIUS，OpenVPN，DansGuardian 和 ClamAV。

這些工具可以透過 OpenWrt 的舊 Web GUI 管理介面訪問，稱為 X-Wrt 或 webif^2。專案於 2012 年 6 月 7 日結束。

的 Omnia 路由器是使用 OpenWrt 的衍生執行
無線社群網路的多種草根專案，包括 Freifunk，Libre-Mesh 和 qMp
libreCMC 基於 OpenWrt 的分發，沒有非自由軟體或二進位制 blob，由自由軟體基金會認可
Asuswrt（asuswrt-merlin），載體為 Asus 網通產品。
部分企業如小米、TP-Link 和 D-Link 釋出的家用路由器韌體是基於 OpenWrt 的二次開發版本。
ImmortalWrt - 一個 OpenWrt 的衍生版本，主要由中國的開發者社群維護。
友善電子生產的 Nano Pi 系列的 Soc 裝置，並提供基於 OpenWrt 的衍生作業系統 FriendlyWrt。

路由器韌體專案列表

客制路由器韌體清單
LEDE - OpenWRT 的分支專案，現已與 OpenWrt 主專案合併。