我有一个运行 Angstrom 的嵌入式系统,运行得很好。该平台有多种用途,其中之一是充当家庭路由器,因此它具有无线和有线网络接口,可以正常工作。我正在尝试配置 DHCPD,以便每个接口分发同一范围的 IP 地址,例如 192.168.1.2 - 192.168.1.100,但我无法弄清楚这一点。如果接口处理不同的子网,一切都会正常工作,但是当两个接口位于同一子网时,一切都不起作用。关于这是否可能,我看到了相互矛盾的答案 - 但所有家用路由器都会执行这种确切的情况,因此必须有一种方法。我现在没有配置文件 - 稍后发布。因此,如果可能的话,我正在寻求建议。南克斯!
更新:这是有效的脚本 - 谢谢比尔
# route all packets between all interfaces
iptables -t nat -A POSTROUTING -s 172.16.0.0/16 -d 172.16.0.0/16 -j ACCEPT
iptables -t nat -A POSTROUTING -s 172.16.0.0/16 -j MASQUERADE
# set the MAC address
ifconfig eth0 0 0.0.0.0
ifconfig eth0 down
ip link set eth0 address 00:80:44:0F:06:C7
# setup the bridge
brctl addbr br0
brctl stp br0 off
brctl addif br0 eth0
# hostapd sets up the wireless before it is added to bridge
hostapd -B /etc/hostapd/hostapd.conf
brctl addif br0 wlan0
ifconfig wlan0 up
ifconfig wlan0 0 0.0.0.0
ifconfig eth0 up
ifconfig br0 172.16.10.247 netmask 255.255.0.0 up
route add default gw 172.16.1.1 br0
答案1
如果您查看家庭路由器的硬件,您会发现所有端口都存在于同一接口上。在我的 OpenWRT 系统上,WLAN 接口是通过使用不同的 VLAN 来识别的。
通过桥接接口来在 Wifi 和端口之间分发同一池中的地址。然后将地址分发给连接到网桥的设备。如果没有桥接器,则有两个需要不同范围的独立设备。
由于您的设备似乎每个端口都有单独的接口,因此创建一个包含连接到同一网络的所有端口的网桥。向网桥而不是接口提供 DHCP 服务。