我有这样的场景:一个 AP 通过无线方式连接到 STA,该 AP 是一个 DHCP 服务器,我在 AP 的 /etc/config/network 中有以下配置:
config interface lan
option ifname 'eth1 eth0'
option type 'bridge'
option proto 'static'
option ipaddr '192.168.1.1'
option netmask '255.255.255.0'
问题是,使用 WLAN0 接口连接到 AP 的站可以看到 eth0 mac 地址,但看不到 wlan 接口 Mac 地址。即,我发出“arp”后获得的地址与我发出 iw wlan0 station dump 后获得的地址不同。
我想知道是否有办法(除了覆盖 AP Lan 接口的 mac 地址)来解决这个问题,同时我仍然希望通过 eth0 连接的任何设备都能从 dhcp 服务器获取自己的 ip 地址。
我尝试这样做,但没有效果:
config interface lan
option ifname 'eth1'
option type 'bridge'
option proto 'static'
option ipaddr '192.168.1.1'
option netmask '255.255.255.0'
config interface local
option ifname 'eth0 eth1'
option type 'bridge'
注意:与防火墙相关的问题并不相关,因为两个设备上的防火墙都被禁用了。
另外,我还希望通过以太网电缆连接到 STA 的设备能够从同一 DHCP 服务器获取 IP 并位于同一网络上。我使用了 wds,效果不错,但我必须避免使用它,因为它会产生一些问题。
答案1
来源:https://wiki.openwrt.org/doc/uci/network
别名:新方法
基本上为每个 IP 创建一个“接口”部分,但别名接口不能是桥接类型
对于桥接接口的情况,ifname 是 br-base-interface,其中 base-interface 是主 IP 配置部分的名称(例如,对于默认的 lan 接口配置,第一个别名将使用 ifnamebr-lan)。
config interface lan
option ifname 'eth0 eth1'
option type 'bridge'
option proto 'static'
option ipaddr '192.168.1.1'
option netmask '255.255.255.0'
config interface local
option ifname 'br-lan'
...