我有以下设置:
- 一台装有 Debian Jessie 且具有静态 IP 的笔记本192.168.1.2用于其以太网接口(通过 GNOME 网络管理器设置连接配置文件)
- 一台配备 Xubuntu 16.04 两个网络接口的 PC(通过 GNOME 网络管理器设置连接配置文件):
- 静态IP192.168.1.4- 用于连接我的笔记本或 Raspberry Pi 2(参见下一条)
- 自动 (DHCP)- 通过 Raspberry Pi 3 上的网桥连接到互联网
配备最新 Rasbian 和静态 IP 的 Raspberry Pi 2192.168.1.3
/etc/网络/接口
allow-hotplug eth0 iface eth0 inet static address 192.168.1.3 netmask 255.255.255.0 network 192.168.1.0 broadcast 192.168.1.255
Raspberry Pi 3 最新版 Rasbian 和静态 IP 地址192.168.1.2它的 WiFi 接口和以太网接口之间有一个桥接器,这样我的 PC 就可以连接以太网端口(PC 的接口设置为自动 (DHCP))并能够访问互联网。我使用本教程用于设置。
**/etc/wpa_supplicant/wpa_supplicant.conf*
network={ ... // SSID, encrypted password key etc. }
/etc/网络/接口
allow-hotplug eth0 iface eth0 inet static address 192.168.1.2 netmask 255.255.255.0 network 192.168.1.0 broadcast 192.168.1.255
/etc/dnsmasq.conf
interface=eth0 listen-address=192.168.1.2 bind-interfaces server=8.8.8.8 domain-needed bogus-priv dhcp-range=192.168.1.100,192.168.1.254, 12h
/etc/sysctl.conf
取消注释该行
net.ipv4.ip_forward=1
Iptables 配置
iptables -t nat -A POSTROUTING -o wlan0 -j MASQUERADE iptables -A FORWARD -i wlan0 -o eth0 -m state --state RELATED,ESTABLISHED -j ACCEPT iptables -A FORWARD -i eth0 -o wlan0 -j ACCEPT
我遇到的问题是,我似乎无法使用连接到 PC 的两个 Pi,尽管它们连接到不同的网卡,并且它们的 IP 地址也不同但同一网络的一部分。Pi 3 上的自动 DCHP 目前已为我的 PC(它所连接的接口)提供了 IP 地址192.168.1.119。
我注意到,无论我先将哪个 Pi 连接到 PC,它都能正常工作。第二个连接的 Pi 则不能正常工作(简单的 ping 操作即可提供信息)。接下来,我毫无问题地将我的两个 Pi 连接到我的笔记本电脑 - 一个为我提供了互联网访问(正如预期的那样;为此我关闭了笔记本电脑上的 WiFi 适配器),另一个提供了“正常”的以太网连接。如果已连接,我还可以从一台机器通过 SSH 连接到另一台机器(除了出现上述问题的情况)。
我对网络不是很了解,所以如果能告诉我我哪里做错了,我会很感激。如果我能提供更多信息,请告诉我。
答案1
您不应该在两个不同的接口上使用相同的网络。最简单的设置是为两个 Pi 使用不同的网络(即使是一个小型 /30 网络)。
如果您确实想要一个网络,则有两个选择:
桥接:您可以在 PC 上创建一个桥接设备,并将两个接口添加到桥接器中。现在您必须将您的 IP 添加到桥接器(DHCP 或静态)而不是原始接口。此 IP 可供两条物理线路访问。如果您愿意,您可以在单个接口上拥有多个 IP 地址。整个网络将统一起来,每个设备都可以访问其他所有设备。
子网划分:您可以在路由级别解决问题,而不是使用链路层桥接。您可以在 192.168.1.0/24 下创建两个子网。例如:192.168.1.0/25 + 192.168.1.128/25。两者都有 126 个可路由地址。您可以将第一个范围中的 IP 用于 pi2(192.168.1.3),将第二个范围中的另一个 IP 用于 pi3(例如 192.168.1.130)。您的 PC 将能够访问两者(路由将起作用),从 PC 的角度来看,它几乎与一个 /24 网络相同。但是,两个 pi惯于能够互相访问(除非您特别允许在 PC 上进行 IP 转发)。
如果我误解了你的目标,请澄清一下。分享你的 PC 的路由表和两个 Pi 连接的网络配置会非常有帮助。(ip route show
和ip addr show
)。(遗憾的是我无法发表评论)。
答案2
@“后手大师”
同一网络上的重复网卡有丰富的用途!
对于现在(2021 年)发现这一点的人:
我还观察到了 Debian Buster 中的互斥行为,这完全是错误的!是的,在同一网络中添加多个 NIC 时存在潜在的陷阱,但同样的陷阱也适用于桥接或别名 NIC。
这是西南社区的世代交替引入了真正有问题的假设的情况之一,它现在正在浪费我一小时的收入。
我将以旧的 /etc/network/... 样式设置网络。这应该会覆盖我认为在桌面 GUI 中的行为。
我在接口文件中添加了以下内容:
auto enp0s3
iface enp0s3 inet dhcp
auto enp0s8
iface enp0s8 inet dhcp
...并做了#> service networking restart
瞧,它启动并运行了!重启后也是如此!