軟路由軟體OPNSense + 我更換了家居路由器
這篇文不會包括Proxmox/OPNSense的安裝/設定等
網上很多文章/影片可以看啦
本文概要
為甚麼我要換路由器
變更前家居網絡構架
新路由器硬件配置
路由軟體OPNSense簡介
個人新路由器的各種設定
變更後家居網絡構架
自建路由器相關影片
為甚麼我要換路由器
舊路由器是那種很常見的家用路由器,不過我安裝的是DD-WRT(DD-WRT是一個基於Linux的路由韌體)
不過軟件版本很舊了(太久沒更新所以更加不敢更新)
不久前看到一段影片關於新的TLD(Top Level Domain、頂級域名)(影片上傳時間2023-05-24)
新的TLD是.zip及.mov,這兩個是常見檔案副檔名,也是有效網址的字尾
但是當這兩個變成TLD,那用戶就很容易點擊一個長網址(例如下載檔案),而實際上可以是釣魚網域
不記得是影片中還是回應中有提到用OPNSense擋這些TLD,然後我就開始研究並著手進行更換路由器
舊路由器上的DD-WRT實際上也可能做到,不過都過很多年了還不如用新的路由軟體
變更前家居網絡構架
我懶得畫圖,用文字表示一下好了
RJ45的那一邊用一條很長的網絡線連到路由器
路由器有1個端口連接對外連線,4個端口連接家中電腦(實際上平常只用了3個),還有WiFi天線連接大部分裝置例如智能電話、電視機
沒了,實際上很簡單
新路由器硬件配置
懶得拍照,網上找張差不多的:
GPU Intel® UHD Graphics 600
RAM DDR4 16GB
硬碟1 mSATA SSD 128GB
硬碟2 2.5寸SATA HDD 320GB
網絡 Intel i211 1000Mbps LAN X 4
影像輸出 HDMI(4K@60Hz)
其他IO USB 3.0 Port x 2 , USB 2.0 Port x 2
因為是用作路由器,這種低功耗(這CPU TDP 10W)的CPU雖然效能與個人電腦比差得遠,但是作為家用路由器功耗較效能重要啊(商用不肯定,尤其企業那種)
另外至少有兩個網絡端口,一個連接互聯網另一個連接家用那邊
家用那邊可以連接網路交換器或者像我一樣連接現有路由器(需更改設定)
而且網絡卡最好是Intel的,其他品牌網絡卡支援沒那麼好
路由軟體OPNSense簡介
先來一些連結:
OPNSense官網 - https://opnsense.org
用戶文檔、論壇等都可在裡面找到
OPNSense subeddit
它有兩個是因為前者曾被Netgate霸佔(Netgate是pfSense 的版權所有人)
從維基抄的簡介:
OPNsense 是由 Deciso 開發的開源、基於 FreeBSD 的防火牆和路由軟件,Deciso 是一家位於荷蘭的公司,為 OPNsense 生產硬件並銷售支援包。它是 pfSense 的一個分支,而 pfSense 又是從構建在 FreeBSD 上的 m0n0wall 衍生出來的。它於 2015 年 1 月推出。當 m0n0wall 在 2015 年 2 月關閉時,它的建立者 Manuel Kaspar 將其開發者社區推薦給 OPNsense。
主要功能:(只列出我有用到的XD)
防火牆
尤其是較複雜的規則Geoblocking(地理封鎖)
根據來源IP地址及自動更新的IP地理位置資料庫來封鎖特定地區連線內建DNS伺服器及設定介面
可用來擋某些TLD
DD-WRT也有但是設定介面很爛插件 - Dynamic DNS client
更新與自訂域名對應的IP地址插件 - WireGuard VPN service
建立VPN用
個人新路由器的各種設定
安裝方法:先安裝Proxmox再在新虛擬機上安裝OPNSense
這是因為這比較方便使用Proxmox的快照功能(Live Snapshots)進行快速備份/還原(詳細可看看這篇中文介紹 - https://blog.jason.tools/2019/02/pve-snapshot-lost.html,中文文章不好找…)
進行風險較高的變更前(例如升級、更改設定及安裝新插件等)進行快照,有問題發生難以修正時直接還原(上星期才還原了一次,嘗談新插件時有問題…)
不過缺點可以是效能可能較低(看怎麼設定網絡卡),不過我家用需求不大應該不用管
虛擬機設定:
CPU 4核(沒必要限制)
RAM 8GB(實際上用不到這麼多)
硬碟 30GB(試過被紀錄檔塞滿,原來防火牆預設所有規則紀錄檔全開,關掉就沒事)
防火牆:關
路由器不能開Proxmox的防火牆,那是裡面OPNSense的工作
OPNSense設定:
Primary Console由VGA Console轉為Serial Console
Secondary Console由無轉為VGA Console
這是為了透過Proxmox虛擬機存取控制台時能複制貼上文字(虛擬機上要加個Serial Port)Preserve logs (Days):7
Log Firewall Default Blocks:全關
以免硬碟爆滿IPv6:關(反正ISP不支援)
不關掉還會連不到線內建DNS:封掉.zip和.mov
上面提到容易被用作釣魚用的TLDDynamic DNS client:設定自動更新指向本機的個人用域名
我個人瀏覽器書籤同步使用NextCloud + floccusWireGuard VPN service:設定工作用的手提電腦在外也能使用家中內聯網某些服務
例如擋廣告、防追蹤的DNS伺服器Pi-hole(Pi-hole這部分之後再另外寫文解釋)
舊路由器設定:(參考https://wiki.dd-wrt.com/wiki/index.php/Wireless_access_point)
關掉DHCP服務(派IP地址用,兩個路由器一起開DHCP會出事)
WAN端口指派為交換器的其中一個端口
更改運作模式為Router(之前是Gateway Router)
變更後家居網絡構架
網絡供應商那邊沒變
RJ45的那一邊用一條很長的網絡線連到新路由器
新路由器用另一條網絡線連到舊路由器WAN端口
舊路由器其他有線端口不變
自建路由器相關影片
對自建路由器有興趣(不一定要用,純為學習/研究也可以)的可以看看這些影片