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管理界面。 

**釋出版本**

**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-相容, WNICs, DSL modems, FX等。- 各種計算機網路設定如下:
**路由可透過iproute2, Quagga (software), BIRD等。
** 支持多種 IPv6過渡機制
** 網狀網路可經由B.A.T.M.A.N., OLSR與IEEE 802.11s-相容的WNIC drivers
** 無線功能。如裝置實現無線路由、無線接取器、無線橋接、強制captive portal，或結合一些裝置如: ChilliSpot、WiFiDog Captive Portal等。
** 無線安全: Packet injection，例如:  Airpwndate=20130110172200 、lorcon等。
** 狀態防火牆、NAT和路由器端口掃描(port forwarding)經由netfilter；其他還有PeerGuardian已支持。
** UPnP與NAT-PMP可透過 upnpd來設定。
** port knocking可透過knockd與knock達成。
** TR-069
** IPS經由Snort
** 使用多個互聯網服務供應商達到負載平衡。
** IP穿透(tunneling)
** 網路監視與統計數據等。例如: RRDtool, Collectd, Nagios, Munin lite, 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 (DAAP) 伺服器
** Asterisk
** MQ Telemetry Transport經由Mosquitto- 可延伸的Ajax，由LuCI支持- 系統更新，即便裝置已不再受原廠支持。

**Web 界面**
在8.09版之前，OpenWrt提供最小GUI。OpenWrt推出8.09及日後新版中，有更多的Web界面可供選擇。這個新界面基於LuCI，是一種MVC架構，由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，IPS，VPN和Web防病毒功能。
軟件包包括Snort，Snort-inline，FreeRADIUS，OpenVPN，DansGuardian和ClamAV。
這些工具可以通過OpenWrt的舊Web GUI管理界面訪問，稱為X-Wrt或webif^2。項目於2012年6月7日結束。
*Turris Omnia的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主項目合併。

**注釋**

**外部鏈接**
 OpenWrt支持的無線路由器列表- OpenWrt Wiki 中文