可以将 Wi-Fi 和以太网连接到同一个网络吗?

rit*_*mon 11 networking wifi arch-linux ethernet network-interface

我正在运行 Arch Linux(在 Raspberry Pi 3 上)并尝试将以太网和 Wi-Fi 连接到同一网络。route向我展示了以下内容:

$ route
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
default         gateway         0.0.0.0         UG    1024   0        0 eth0
default         gateway         0.0.0.0         UG    1024   0        0 wlan0
192.168.1.0     0.0.0.0         255.255.255.0   U     0      0        0 eth0
192.168.1.0     0.0.0.0         255.255.255.0   U     0      0        0 wlan0
gateway         0.0.0.0         255.255.255.255 UH    1024   0        0 eth0
gateway         0.0.0.0         255.255.255.255 UH    1024   0        0 wlan0
Run Code Online (Sandbox Code Playgroud)

ip addr 向我展示了以下内容:

$ ip addr
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host
       valid_lft forever preferred_lft forever
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
    link/ether b8:27:XX:XX:XX:XX brd ff:ff:ff:ff:ff:ff
    inet 192.168.1.103/24 brd 192.168.1.255 scope global dynamic eth0
       valid_lft 85717sec preferred_lft 85717sec
    inet6 fe80::ba27:ebff:fee4:4f60/64 scope link
       valid_lft forever preferred_lft forever
3: wlan0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
    link/ether b8:27:YY:YY:YY:YY brd ff:ff:ff:ff:ff:ff
    inet 192.168.1.102/24 brd 192.168.1.255 scope global dynamic wlan0
       valid_lft 85727sec preferred_lft 85727sec
    inet6 fe80::ba27:ebff:feb1:1a35/64 scope link
       valid_lft forever preferred_lft forever
Run Code Online (Sandbox Code Playgroud)

无论wlan0eth0接口都能够从路由器获取IP地址。

但事实证明,这些接口中只有一个可以工作。另一个接口无法 ping 通且无法连接。通常是以太网工作,但有时是 Wi-Fi。

发生了什么?我能做些什么来完成这项工作?

Rui*_*iro 6

正如您所发现的,从路由的角度来看,虽然可能,但在不同接口中拥有来自同一网络的地址并不理想。

路由期望每个接口有一个不同的网络,最终它们中的一个将在路由中优先于另一个,因为它们重叠。

将多个接口连接到同一网络的建议解决方案是将它们聚合在一个桥接接口中。

桥接接口将“拥有”IP 地址,而实际的真实接口在br0.

allow-hotplug eth0
iface eth0 inet manual

allow-hotplug wlan0
iface wlan0 inet manual

auto br0
iface br0 inet dhcp
    bridge_ports eth0 wlan0
    
Run Code Online (Sandbox Code Playgroud)

Debian Linux:将网络接口配置为网桥/网络交换机