我正在尝试使用旧硬件和 Debian 制作 DIY 无线中继器,但遇到了一些困难(更多详情见下文)。
硬件:
EeePC 900 w/Atheros 无线网卡 (内核驱动 ath5k) 外置无线网卡 D-Link DWL-0122 (Ralink 芯片,内核驱动 rt73-usb)
设置:
一个无线 AP(使用 WPA-PSK 进行身份验证)
配置:
/etc/网络/接口
auto lo br0
iface lo inet loopback
# The primary network interface
# This is unused
allow-hotplug eth0
iface eth0 inet dhcp
iface wlan0 inet manual
wpa-ssid myessid
wpa-psk mypass
iface wlan1 inet manual
# To prevent clashes with main AP
pre-up iwconfig wlan1 mode managed essid "repeater" channel 4
iface br0 inet static
address 192.168.10.3
netmask 255.255.255.0
network 192.168.10.0
broadcast 192.168.10.255
gateway 192.168.10.1
dns-nameservers 192.168.10.1
dns-search lan
bridge_hw 00:1f:c6:8f:15:4e # Same HW address as wlan0
bridge_ports wlan0 wlan1
实际的重复由 hostapd 处理。但是,问题是我无法访问网络。一旦桥接启动,即使在启动 hostapd 之前,我也无法访问任何内部主机,更不用说外部主机了。对网关的所有 ping 都以“目标主机无法访问”结束。在这种情况下,最好的处理方案是什么?
我还确保“主”接口 wlan0 在非桥接时也能正常工作(如果通过 DHCP 配置,则获取 IP,访问网络)。我还被迫使用桥接,因为这两个接口都不支持主模式。
答案1
你确定你确实成功将wlan0
(连接到现有 AP 的那个)插入网桥了吗?因为问题是,这很简单不可能。运行brctl show
应该确认桥接没有成功。(链接说无法将无线客户端接口桥接到有线接口,但对于桥接任何接口(包括无线 AP 接口)都是如此)
另一种方法是让“中继器”充当 NAT 路由器。但是,这会带来 NAT 带来的常见问题(例如,需要端口转发、无法发现另一端的主机)。提供的链接解释了如何设置 NAT。