玩玩軟路由系統
很久以前搞過 Android NAS 之後,依舊是喜歡玩玩小主機,要求差不多:需求絕對靜音、省電、24小時開機、便宜、耐操、可替換、最好系統夠強健、不易損壞、能簡易備份與恢復、且要好操作、效能不需超強但是要能應付所需、最好還能當客廳機看個片之類的,儘量做到物盡其用。
在中國市場中前兩三年開始興起一種小路由,體積小、價格便宜,能做到的事情很多,當然主要是幫助中國消費者能「科學上網」(就翻牆囉)、突破一些人體限制;接着對於硬體需求量就逐漸變高,再加上各種開發板子出現(樹莓派),更進階、全功能的小主機就出現了,省電、低溫、無風扇、多輸出(網路、顯示 USB 2+3+C)等,系統變化度也高,可玩性就很高了。
這類小主機的系統玩的人越多,相關的系統就越成熟,這時候開始玩跟前幾年相比變得輕鬆簡單許多,反而是要找個使用角度切入還比較難,真的是看什麼人玩什麼鳥、什麼鳥就給什麼人玩,端看自己想怎麽玩。
軟路由與硬路由
一般非技術人員(貼近大眾消費者印象)來看,那種很多孔的網路設備主機,負責管理網路流向與負責對外連線等工作,又或是像寬頻網路會用到的主機,被稱作「路由」或路由主機,這類硬體使用方式與目的非常明確,上面的承載的系統一般都是直接烙寫在主機上的,不是一般人可以隨意拿個光碟隨身碟就可以進行安裝的。
如果有一台電腦主機(體積突然變大不少),同樣可以負責管理網路流量進出,但可以自行安裝作業系統、自由設定使用、能透過軟體去達成傳統路由上的功能,進一步還能有虛擬網卡、虛擬系統等這類藉由軟體延伸出的應用主機,被中國鄉民稱作為「軟路由」,相對的則是前面所說那些無法自由安裝軟體(更新系統要用「刷」的!)、大部分功能藉由硬體去完成實際網路連線與分流的機器,則被中國鄉民稱作是「硬路由」,硬路由這個名稱是相對於軟路由而再創的名詞。
其實任何作業系統都有網路流量的管理功能,路由主機上安裝的系統一般是比較特化、專門針對網路管理而來的作業系統,像是 ROUTEROS、OPENWRT 等等,所以現在拿一台多網路孔的小主機,安裝上這類作業系統後,即可稱之為「軟路由」。至於主機體積大或小,就看自己的選擇,小有小到像兩塊鳳梨酥那麼小,大也能大到直接拿一台家中老舊的電腦主機來用,只是要多插幾張網卡。
簡言之,網路管控的主機上作業系統感覺是寫死在主機上的,可稱「硬路由」。可以自己惡搞的、玩弄的,大概都能稱「軟路由」。
主路由、二級路由與旁路由
什麼是主路由?就是「環境內最主要對外的路由」(廢話),從電信公司(例如中華電信)接入光纖寬頻的小烏龜,其實是一台光纖路由器,可以看作是光纖+路由,而不是一般電話線或網路線的形式。但中華小烏龜不會開放給一般租用者直接使用這台,常見的方式是在後面安裝一台 WIFI 路由(AP\基地台)進行撥號連線與分享網路,如果整個家庭內網路都是以這台機器作為網路出口,就可以把這台當成是主路由了。
二級路由則可以視為次網路區域,簡單一點的例子就是整個大家庭裡可能有一兩個家庭,有一台網路基地台當主要上網的線路,但每個家庭可能又各自有一個網路區域,這時候每個家庭又可以在家裝一台基地台做區隔,但這台基地台不用撥號、直接從主基地台上網就好,這種就可以看作是二級路由了。但二級路由其實是次網路區段內主機的主路由...所以主或二、三級路由是相對的說法、非絕對的說法。
旁路由是什麼鬼?其實又是中國網路發明的新名詞,我認爲當成是網路區域內的防火牆主機比較容易懂,區域網路內有「特殊需要」管理網路進出的流量就都先經過這台防火牆主機,可以達到一些過濾封包啊、管制進出、身份掩蓋等功能,而這台主機本身不進行撥號或連線,目的只是在管理通過的流量或動線,但因爲安裝的系統是路由系統,才被稱作旁路由了,其實,就防火牆主機...
軟路由做旁路由三步搞定!(旁路由的設置方式) 內有簡單清楚的旁路由說明。
硬體安裝與虛擬化
既然路由主要看的是它的作業系統,凡是作業系統必能虛擬化與多重安裝,選擇只在使用者要在什麼情境下、怎麼用而已,所以網路上有非常多的安裝方法:
- 一台嵌入式小硬體(例如樹莓派),直接安裝路由系統:簡單直覺、專業分工
- 一台性能夠高的低耗電主機安裝路由系統:通常還會肩負其他工作(下載機、翻牆、簡易檔案分享等)
- 一台性能過剩的主機透過虛擬化安裝路由作業系統:把硬體效能用到極致、甚至路由系統都可以多開多連線。
- 更進一步的可以在虛擬化後的路由系統內再安裝虛擬化(例如 Docker )、多層堆疊系統架構做各種不同的包裝應用。 <= 這個是我正在進行的階段。
路由系統、OpenWrt 與 other
路由作業系統很多,大多是爲了嵌入式設備而生,專業大廠的作業系統像 Cisco IOS 平常沒什麼機會玩得到, RouterOS 要收費又很難親近但已經是稱作窮人版 CISCO 的專業路由系統、 iKuai 愛快因爲有國籍特性安裝使用不太令人放心、 DDWRT 是從 OpenWrt 衍生針對無線路由主機開發的系統最常被玩家用來刷 Asus Wifi ,但越是專業往往越是難用,如果手邊電腦效能與時間過剩,安裝 ubuntu 加上自己寫防火牆規則與安裝管理套件也是可以充當路由的,但現在常使用的應該還是 OpenWrt。路由系統也有特長與導向,處理速度也都不一樣, 也已經有人做了測試與比較 。
OpenWrt 是嵌入式的 Linux 路由器系統, 2004 年出道後,十幾年前曾一度看似家道中落,因爲在自由國度中上網輕易可得,沒什麼人會去想要搞路由這種硬核的東西,但中國防火牆東起、網路普及、路由廠商百花齊放、使用者需求變多, OpenWrt 逐漸回到開發熱門的狀態,也因為 Open 的天性與 Linux 容易跨平台的特性,所以有非常多的平台版本, ARMs 、 x86 版本都有,再加上 Linux 本身有很多軟體支援,所以 OpenWrt 也不再是擔任簡單的路由系統而已。
至於路由技術爲什麼會從專業證照變成平民技術,這當然跟中國網路生態有關:如果家中有個網路主機一撥接上網就能幫忙處理許多與網路有關的事情、像是雙線撥號做負載均衡假裝寬頻、在不穩時還能自動跳線做備援繼續看片、主機閒暇之餘上網抓影片檔案再做做家中區域網路分享、針對手遊加速(改寫)遊戲的封包處理、最需要是自動把牆翻好、看看國外的 NETFLIX 或 Youtube (也有不少人是翻回中國去)、甚至是來看看自由世界、當個小小粉紅、接接政府的五毛工作...等等,有心自由上網的人大概都很難不去懂。
下載的資源
網路上較多推薦下載的 openwrt 分支
koolshare
KoolCenter
大到成為一個 Center ,自行打包一個 iStore 版本希望在 OpenWrt 上能像 App Store 那樣自由點選安裝移除功能,幾乎可以取代掉台灣盛行使用的那幾個 NAS 系統。
eSir
精品小包
高大全包
站在鄉民角度包山包海各式各樣功能都包含,很省力的版本,但對自由地區的人來說太多了。
SuLingGG
開發專案 OpenWrt-Rpi
編譯版本下載
版本運作速度快、高效率、套件實用,且還有維護 docker 的版本。
kiddin9
kiddin9/OpenWrt_x86-r2s-r4s-r5s-N1
安裝
實機安裝或虛擬機安裝跟其他作業系統安裝方式沒有太大的區別,主要是下載的程式要放在什麼地方, OpenWrt 最常下載的格式是 *.img (gzip 壓縮過是 *.img.gz),這需要用工具程式寫入 USB隨身碟上(直接插了就可以用)或 SD 卡上,常用 USB 開機製作工具:
因爲虛擬安裝使用的人數也增加不少,且開發團隊也可以在虛擬機上測試,有開發者直接提供虛擬機的版本(VDI、VHD 或 VMDK 等),使用起來也方便多了,虛擬化安裝介紹也不少: