[RT-N16]利用VLAN與iptables 分離MOD 與家中設備流量,並且使MOD不影響 WIFI 連接


如果有錯誤,請幫忙提醒
最近家中更換MOD系統,發現只要MOD開啟,所有無線設備必定發生斷訊的問題。檢查封包後確認當MOD開啟且設備連接WIFI後,AP會將MOD Multicast traffic發送給無線連線的設備,推測WIFI 當掉的原因是連線的設備越多,AP 的WIFI 資源耗用越兇,最後導致AP無線掛掉。
Topology:
[RT-N16]利用VLAN與iptables 分離MOD 與家中設備流量,並且使MOD不影響 WIFI 連接

以下是我這幾天測試的結果,提供給各位做參考。
需求:

1. 所有的設備在相同的網段,只利用小烏龜當DHCP Server,並透過小烏龜硬撥上網( MOD 除外)
2. MOD子機可以任意移動至所有房間使用
3. MOD 必須可以直接連接Internet
4. MOD開啟時,WIFI不受影響
5. MOD開啟時,有線連接設備(PC, PS3, NAS) 不收到MOD Multicast traffic
6. 家中網路盡可能保持在1G

思考方向:
1. 拉第二條線給MOD使用
--> 不可行,牆壁沒有多餘的空間拉線。

2.使用電力線(PLC)
-->不可行,4F與2F 使用不同的電力回路。

3.1在AP 上切VLAN (參考http://www.mobile01.com/topicdetail.php?f=110&t=2329494)
-->不可行,在我的環境中RT-N16 不做PPPOE,無法此方法透過切VLAN分離MOD 與其他設備的資料,若接成Loop,WIFI 依然會被影響

3.2 將所有AP 設定一個port 為802.1Q VLAN Trunk port,設定參考
DD-wrt: http://www.dd-wrt.com/wiki/index.php/VLAN_Support
--> 不可行,DD-WRT設定複雜,且RT-N16 與 WL-520GU 設定後依然看不懂帶Tagging traffic,也不會送出帶tagging traffic,推測這兩款AP實際上不支援802.1Q VLAN Trunk port

4. IPTV port
-->不可行。 IPTV 只支援WAN(NAT)-->LAN 方向的Multicast traffic


5. 利用WIFI 橋接MOD
-->不可行,WIFI訊號不穩定且影響其他無線設備上網



解決方法:
利用 VLAN 與 iptabels ( 以及 ebtables ) 限制MOD 的流量。

RT-N16
1. 使用firmware
tomato-E3000USB-NVRAM60K-1.28.RT-MIPSR2-120-BTgui-VPN.bin
或是
tomato-K26USB-1.28.RT-MIPSR2-110-AIO-cht-0621.trx

2. 基本設定--> 網路 -->連線類型: Disable ,並且勾選"橋接廣域網路到主要區網(br0)" ,修改LAN IP並關閉DHCP server

3.將以下內容貼到 路由器管理-->系統指令-->開機初始化
#####################################
#LAN Multicast filter
ebtables -A FORWARD -o "vlan1" --pkttype-type multicast -j DROP
ebtables -A OUTPUT -o "vlan1" --pkttype-type multicast -j DROP

#WIFI Multicast filter
ebtables -A FORWARD -o "eth1" --pkttype-type multicast -j DROP
ebtables -A OUTPUT -o "eth1" --pkttype-type multicast -j DROP

#####################################

(OUTPUT 的設定只是保險,實際上Mulitcast traffic 會被 FORWARD 的規則檔掉)

4. 進階設定--> 將Port4 (LAN4) 放入VLAN2 存檔後等待AP重開
將LAN4分離原因是為了將MOD與其他有線設備分開,方便管理
5. 設定完成


WL-520GU:
1. 使用firmware (tomato 不支援VLAN 設定)
dd-wrt.v24_voip_generic.bin

2. 基本設定--> WAN連接類型 -->連線類型: Disable ,並且勾選"橋接廣域網路到主要區網(br0)" ,修改LAN IP並關閉DHCP server

3.將以下內容貼到 系統管理-->儲存系統指令
#####################################
#For WL-520GU iptables setting-DD-WRT 1.28
#Need:
#Assign LAN4 and WAN to VLAN1
#Assign LAN1,2,3 to VLAN0

insmod ebtables
insmod ebtable_filter

#Choice one setting to limit multicast forwarding
#1. set iptables filter
#Multicast filter at LAN1,2,3 (VLAN0)
iptables -I FORWARD -m pkttype --pkt-type multicast -o vlan0 -j DROP

#Multicast filter at WIFI (eth1)
iptables -I FORWARD -m pkttype --pkt-type multicast -o eth1 -j DROP


#2. Set iptables filter at bridge port (br0)
#iptables -I FORWARD -m pkttype --pkt-type multicast -o br0 -j DROP

#####################################

4. 基本設定--> 將Port4 (LAN4) 放入VLAN1 存檔後等待AP重開
將LAN4分離原因是為了將MOD與其他有線設備分開,方便管理
5. 設定完成


Core switch:
開啟IGMP Snooping

若沒有支援IGMP Snooping switch 使用一般的gigabyte switch也可以,只有連接上這switch 的設備收到Multicast traffic,AP底下的設備不受影響

結果:
只要MOD 接上AP 的AP的LAN4 即可收看電視,開啟MOD時,WIFI 與LAN設備不受影響。2 台MOD 同時開啟不互相影響
多兩個HUB來讓MOD直接吃數據機出來的不就好了...

再說用N16來當單純的wifi分享器..感覺超浪費的XD
愛情來了怎知道
若使用MOD<-->switch<-->數據機,最大的問題在於牆壁空間不夠無法拉網路線從4F至3,2樓。
使用PLC無法則達到2樓。


文章分享
評分
評分
複製連結

今日熱門文章 網友點擊推薦!