padavan內核修改編譯
⑴ 用arm盒子+MT7620/7621作VLAN交換機實現單臂路由
使用廉價的arm64盒子,例如s905/rk3328等,搭配廉價的MT7620/7628/7621路由器可以實現高性能單臂路由,適合於各種類型的網路應用
以常見的5口路由器為例,原WAN(Port4)和原LAN1-3(Port0-2)保持不變,Port3配置成trunk介面並接入arm64盒子:
在上圖的網路拓撲中,如果SBC是全雙工千兆接入的,那麼對於Port0-2的LAN內設備而言,NAT的單向流量(在同一時間僅下行或者僅下行測速)最快可以達到千兆,而如果同時進行上下行測速的話,理論上下行與上行可以各自分得500M帶寬。
為了便於進行配置,你的arm64盒子需要安裝好OpenWrt,並確保當前內核中包含8021q支持
對於內核中集成8021q模塊的,開機後查看內核日誌可以看到以下內容:
對於編譯成內核模塊的,請嘗試載入8021q,如果沒有報錯則可以繼續
對於沒有OpenWrt支持的arm盒子,可以參考下面這篇文章,利用其它Linux發行版的內核加上OpenWrt的rootfs快速生成OpenWrt固件:
https://www.jianshu.com/p/3a48c6a7cc7a
修改 /etc/config/network ,追加以下內容,openwrt會自動為eth0生成vlan id為2的WAN口
如果需要ipv6支持,則繼續向 /etc/config/network 追加以下內容:
重新啟動netifd
查看 ifconfig ,觀察是否成功生成了 eth0.2
將電腦直連到arm盒子,等待DHCP獲取地址後進入luci界面,查看網路信息:
將mt7620/7628/7621的路由器刷成Padavan系統,並 確保機器的實際網口次序與webui中看到的一致 ,否則你需要調整之後的命令參數:
對於MT7620/7628,在啟動腳本後面加入以下命令:
對於MT7621(僅適用於帶GMAC2的機器,對於不啟用GMAC2的機型,例如NEWIFI3,請參考MT7620的配置命令),在啟動腳本後面加入以下命令:
上述命令將Port4配置成WAN口(VLAN ID=2);Port 0-2配置成LAN口(VLAN ID=1);Port 3配置成trunk口,也就是連接arm64盒子的介面,該介面上同時存在tagged(來自WAN,VLAN id=2)和untagged(來自LAN)的數據包,這與之前在OpenWrt裡面配置的參數一致;同時還設置了Port3的PVC寄存器,允許此介面收發任意tag的數據包。
配置好的交換機如下表所示,可以將普通的vlan交換機按此配置,也能達到相同的效果。
將Padavan設置為AP模式,路由器將自動重啟:
將trunk口與arm64盒子連接起來(參考本文開頭的接線圖),單臂路由配置完成。