Raspberry Pi Wi-Fi - ethernet bridge設定

利用樹莓派架設Wi-Fi Router或AP的實例很容易找到,但這次我要在工作桌上將儀器們連上家用網路,這麼一來可以坐在電腦前面用Keysight BenchVue做實驗。這個功能剛好與網路上找到的範例相反。

我們可以先看一下Raspberry Pi documentation提供的兩種模式,Routed Wireless Access Point和Bridged Wireless Access Point。Routed AP會在樹梅派上提供DHCP的服務,並分配IP給其他連上去的裝置;Bridge AP則是將上游的服務pass到連上的裝置,所以DHCP、gateway會是上游的router提供。在這邊我要用Bridge (橋接)的方式,這麼一來儀器才能在同個區域網路中被找到。
Raspberry Pi Documentation - Configuration

如果要反過來變成收Wi-Fi轉成Ethernet,是不是將設定的方式反過來就好了? 答案是否定的,由於無線網卡不見得能透過硬體或韌體實現橋接,因此只能從layer 3著手。我們可以參考Debian這篇文獻。
BridgeNetworkConnectionsProxyArp - Debian Wiki

在這邊使用了幾項套件,可以看一下細節的說明
parprouted(8) — parprouted — Debian buster — Debian Manpages
dhcp-helper(8) — dhcp-helper — Debian buster — Debian Manpages
avahi-daemon.conf(5) — avahi-daemon — Debian buster — Debian Manpages

不過照做以後卻無法順利接到DHCP的服務,但在客戶端手動設定IP是能正常連出去的。折騰了半天,最後發現在安裝完dhcp-helper後,systemctl預設是不會啟用該服務的,手動註冊一下dhcp-helper重開機就正常工作了。

sudo systemctl enable dhcp-helper

如果要手動設定橋接,並監測ARP table的狀態,可以免去BridgeNetworkConnectionsProxyArp中編輯/etc/network/interface的步驟,輸入以下指令

sudo ip addr add $(ip -4 -br addr show wlan0 | \
     grep -Po "\\d+\\.\\d+\\.\\d+\\.\\d+")/32 dev eth0
sudo ip link set wlan0 promisc on
sudo parprouted -d eth0 wlan0

留言

這個網誌中的熱門文章

無法被取代的指針型三用電表(一):前言

關於新唐科技NuMicro ISP的介紹和使用方式

新唐火神板開箱實作(一):NuMaker-Volcano與NuEclipse IDE入門篇