为什么将 Raspberry Pi 变成 Wi-Fi 中继器的教程说 Pi 需要先与原始 Wi-Fi 网络进行身份验证?此图来自 balena 博客:
或者谷歌搜索结果中排名靠前的“raspberry pi wifi repeater”来自PiMyLifeUp:
sudo nano /etc/wpa_supplicant/wpa_supplicant.conf
...将 ssid 替换为您要连接的网络的名称,并将 psk 值替换为该网络的密码。
network={ ssid="networkname" psk="networkpassword" }
中继器不是只需要监听帧然后重新传输吗?为什么它需要原始 Wi-Fi 的连接详细信息?如果它所做的只是重新广播 RF 信息,那么它难道不能成为设备和原始 Wi-Fi 网络之间真正隐形的中间人吗?
答案1
中继器不是只需要监听帧然后重新传输吗?为什么它需要原始 Wi-Fi 的连接详细信息?如果它所做的只是重新广播 RF 信息,那么它难道不能成为设备和原始 Wi-Fi 网络之间真正隐形的中间人吗?
那是不是它所做的一切。
最初,中继器确实是以这种方式工作的(在 WEP 和 802.11b 时代),但据我所知,它们有各种缺点——例如,如果我没记错的话,客户端会看到重复的帧(降低了信道的容量),中继器会不加区别地重复全部网络在同一频率上时,WPA 无法工作(虽然我不记得为什么),并且我认为如果将相同的方法应用于现代标准(例如 802.11ac),它将阻止新功能(例如波束成形或更宽的通道)工作,因为 AP 不知道客户端的物理位置。
因此,现代“中继器”根本不是第 1 层 RF 中继器,而是第 2 层桥接器,可跟踪自己的客户端,总体上就像网络中的附加接入点一样(除了它们与另一个 AP 有无线上行链路连接,而不是有线以太网)。只是这个术语已经固定下来了——尽管事实并非如此完全不准确,因为设备仍然在重复执行操作,只是现在发生在第 2 层而不是第 1 层。
(Wi-Fi 本身支持在单个 SSID 内的多个 AP 之间漫游,因此如果您的“中继器”是一个功能齐全的 AP,客户端将能够以与处理范围内的多个有线 AP 相同的方式处理它,当然中继器可以处理不同信道上的客户端,它可以进行波束成形等。)
话虽如此,这种方法也有其自身的缺点——例如,需要在上行链路 AP 和“中继器”桥接器之间协商一种特殊的“4 地址”连接模式,以保留桥接客户端的真实 MAC 地址,这是网状产品可以正确完成的事情,但连接到典型独立 AP 的 RPi 将无法做到这一点,从而导致丑陋的像 L2NAT 这样的黑客,但通常你不会注意到这些。