中華電信 MOD 改走 WiFi

因為家裡網路設備跟電視櫃有點距離,造成電視旁邊中華電信的 MOD 網路線得繞過半個客廳。家母看這條網路線不順眼很久了,過年前發現 MikroTik hAP ac² 價格不錯,也應該可以用這台機器把中華電信 MOD 改成走 WiFi。

以下是踩坑紀錄

2019年08月13日更新:回頭確認 D-Link DGS-1008D 已經該休息了,同時發現自己對 VLAN 概念錯的嚴重(想成多台 Switch 而完全忘記 PVID),所以重寫。

另外 hAP ac² 搭配 Unifi 之後速度還是很不理想,暫時放棄。

2.4GHz 干擾

首先是周邊的網路環境,呆呆翰家這邊的網路環境十分恐怖, 2.4GHz 的頻段根本大亂鬥,下面是用 hAP ac² 掃描的結果,這會造成 WiFi 沒辦法穩定傳輸 HD MOD 所需要的 10Mbps 資料。

所以最後放棄 2.4GHz 改用 5GHz 頻段傳輸。

hAP ac² 舊做法

在 RouterOS 上,一個 Bridge 可以想像成一台 Switch ,所以之前的作法等於是拿兩台 Switch 接兩台 AP ,留兩張蠢照紀念。

複習網路

群播/多撥/Multicast: 類似廣播但是只有特定使用者聽。
IGMP Snooping: 因為群播會預設會送到所有機器, IGMP Snooping 可以縮限群播範圍(如圖),但需要網路上的 Switch 都支援。

VLAN: 虛擬區域網路,通常指 IEEE 802.1Q 這套協定。
VID: 虛擬區域網路的識別符號(ID, Identifier),會包含在 802.1Q 的標頭 (Header) 中。
PVID: 當這個實體連接埠 (Port) 丟過來的封包沒有 802.1Q 標頭時該打哪個 VID 上去。
Tagged: 已經有打 802.1Q 標頭的封包
Untagged: 還沒有 802.1Q 標頭的封包
Access Port: 一般來說只能存取指定 VID 的實體連接埠。
Trunk Port: 一般來說可以存取所有 VID 的實體連接埠。

雖然常用 Access Port 與 Trunk Port 這種名稱稱呼特定連接埠(畢竟是 Cisco 的交換器設定模式),但實際上 VLAN 可以更複雜:

ether1 如果丟過來沒有 Untagged 的封包,設定的 PVID 幫它打上 VID 1 再丟出去。如果是 tagged 的封包則允許存取 VID 10 但阻止它存取 VID 20。

需求

我希望家裡網路插座插上去都能讓電腦直接上網,而中華電信 MOD 只要旁邊綁一台網管 Switch 或是 WiFi APClient 就能看電視。

電腦直接上網需要 NAT 跟 DHCP Server ,MOD 要看電視需要直通中華電信終端設備(數據機、小烏龜、GPON等等)

按照上面術語分析,那就是「家裡網路插座都是 TrunkPort,預設 VID 是經過 NAT 有 DHCP 的網路、另外有一個 VID 直通中華電信的終端設備」

這邊指定預設 VID 是 1 、直通中華電信的 VID 是 99

hAP ac² Bridge 設定

警告
RouterOS 再啟用 VLAN 功能前就是普通 Bridge ,請小心接線迴圈 (loop) 或是兩個 DHCP 搶發 IP (建議啟用 VLAN Filter 前指接設定用的線)。
RouterOS 設定 Bridge 跟啟用 VLAN 功能都會瞬間斷線,請找沒人的時候設定。

/interface bridge
add igmp-snooping=yes name=bridge1

接著把 Port 綁進 Bridge 裡面(WinBox 有可能會斷線),接中華電信終端設備(通常是 ether1 ,標示 Internet)的要設定 PVID 99 ,其他設定 PVID 1。

/interface bridge port
add bridge=bridge1 interface=ether1 pvid=99
add bridge=bridge1 interface=ether2
add bridge=bridge1 interface=ether3
add bridge=bridge1 interface=ether4
add bridge=bridge1 interface=ether5

接著指定每個 Port 可以存取的 VLAN ,RouterOS 會自動把 PVID 加入 Untagged 。另外如果你需要讓同一台 hAP ac² 接 VLAN 99 (包含 PPPoE),記得把代表 RouterOS 出入口的 bridge1 加入:

/interface bridge vlan 
add vlan-ids=99 bridge=bridge1 tagged=bridge1,ether2,ether3,ether4,ether5

這裡 WinBox 的設定方式跟 Cisco 習慣的 Trunk Port 與 Access Port 設定方式不太像, Cisco 的 Access Port 指令比較像是先建立 VLAN 再把實體連接埠綁上去,而 RouterOS 的作法是建立 VLAN 同時指定那些實體連接埠可以存取。

最後回到 bridge 啟用 VLAN Filtering ,沒爆炸的話到這裡已經可以讓 MOD 搭配管理型 Switch 到處看了。

指令

/interface bridge set bridge1 vlan-filtering=yes

如果要讓電腦可以透過 NAT 上網,要去 Interface 上建立 VLAN 99 的 Interface 給 PPPoE Client 綁定,DHCP 跟機器本身的 IP 要設定在 bridge1 上,並設定 NAT。

/ip address
add address=192.168.88.1/24 interface=bridge1 network=192.168.88.0

/ip pool
add name=dhcp_pool0 ranges=192.168.88.2-192.168.88.254

/ip dhcp-server
add address-pool=dhcp_pool0 disabled=no interface=bridge1 name=dhcp1

/interface pppoe-client
add add-default-route=yes disabled=no interface=vlan99 name=pppoe-out1 \
    password=* use-peer-dns=yes user=*@hinet.net

/ip firewall nat
add action=masquerade chain=srcnat out-interface=pppoe-out1

Wireless 設定

我買 UniFi 了,偷懶帶過。

/interface wireless
set [ find default-name=wlan1 ] ssid=MikroTik

/interface wireless security-profiles
set [ find default=yes ] supplicant-identity=MikroTik
add authentication-types=wpa2-psk eap-methods="" group-ciphers=tkip,aes-ccm \
    management-protection=allowed mode=dynamic-keys name=profile1 \
    supplicant-identity="" unicast-ciphers=tkip,aes-ccm wpa2-pre-shared-key=\
    your-wifi-key

/interface wireless
set [ find default-name=wlan2 ] disabled=no mode=ap-bridge security-profile=\
    profile1 ssid=MikroTik vlan-id=99 vlan-mode=use-tag

Bridge 設定也要記得改

/interface bridge port
add bridge=bridge1 interface=wlan2

/interface bridge vlan
set bridge=bridge1 tagged=bridge1,ether2,ether3,ether4,ether5,wlan2 \
vlan-ids=99

ASUS RT-N66u Wireless Client 轉乙太網路

華碩有提供 Media Bridge 模式,沒有的話找一下梅林幫忙,雖然最後失敗我也把機器賣了沒得測試,重點留下其他清掉。

5GHz 頻率問題

雖然 hAP ac² 國際板可以支援所有的 5GHz 頻率,不過 N66u 沒那麼強。呆呆翰試著找了 N66u 的使用者手冊,實在翻不到就用了比較快的方法確認支援的頻率

把機器設定成 IP 分享器 / AP 模式,看他有哪些頻道可選:

但是 RouterOS 不顯示頻道只顯示頻率,這個可以去開維基百科 WLAN信道列表條目對照。

多媒體橋接器 Bug

ASUS 的黑色韌體可以在系統管理中調整運作模式,最符合我們需求的是 多媒體橋接器( Media Bridge ) 模式。

頻率設定正確後,手動指定 IP 免得 N66u 跟 GPON 發生 IP 衝突,將電腦插上 N66u LAN 端都正常。

直到把 MOD 插上去開機,本來電腦可以開啟 GPON 是 ping 的通,忽然就不通了。而且 N66u 官方韌體已經許久未更新,刷了 Merlin 也是依樣狀況,刷 Advanced Tomato 更慘, WinBox 根本看不到 N66u 有連上……

中繼模式 IGMP 不會通

既然都中繼應該 LAN 端會中繼吧(大概),所以就試試看中繼模式後, MOD 一樣插在 N66u 的 LAN 端。

這次筆電插在 LAN 端全程都 ping 的到 GPON ,但是 IGMP 卻通不過去, MOD 的測試介面也確實可以讓 rtsp 訊號通過去,但是 IGMP 完全沒有畫面……

到這裡放棄,把 WRC-733FEBK 抓出來。

WRC-733FEBK Wireless Client 轉乙太網路

先說我不推薦 WRC-733FEBK 這台 AP ,他是 RTL8881AN + RTL8192ER 的方案,他的 5GHz WiFi 我從來沒連上過,不管是 X230 裡面的 Intel Ultimate-N 6300 還是 Xperia XZs 都沒成功過。

中繼模式設定方式

WRC-733FEBK 沒提供搜尋工具,中繼模式要把電腦插在 WAN 端,進入 192.168.2.251 設定。

5GHz 頻率問題

解決方法同上,切 Router / AP 模式看頻道轉頻率對照。

韌體 Bug

WRC-733FEBK 要手動切換 2.4GHz 跟  5.2GHz ,一度改去 2.4GHz 後就 2.4GHz 不會動切不過去 5.2GHz,最後直接 Factory Reset 才順利跳回 5G 了。

成果

然後我家電視就掛了,有結果再說。

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *

這個網站採用 Akismet 服務減少垃圾留言。進一步瞭解 Akismet 如何處理網站訪客的留言資料