这似乎与此相当相关问题,但我有一些小小的警告。
我正在大学里搭建一个 Raspberry Pi 设备网络,但是墙上的以太网端口已经用完了,而且学校的政策禁止使用任何类型的集线器或交换机(而且我不想购买额外的硬件来使它们无线化)。我希望做的是让其中一个 Pi 可以通过 SSH 访问,然后能够通过该公共接口访问网络上的其他 Pi。
为了将它们全部连接在一起,我需要使用集线器/交换机(无论哪个我方便使用),但我希望它完全是本地的,这样我就不会被大学的 IT 人员大声呵斥。
我确实需要能够通过 SSH 访问所有内容,因此我愿意接受这样做的建议,但是在配置网络/IP 时这种设置在我不太熟悉的地方。
答案1
如果 PI 上没有 2 个网络接口(即与大学网络的连接点),那么尝试这样做将是一个非常糟糕的主意。
我将首先解释此设置,然后推测在没有 2 个网络接口的情况下如何实现这一点,因为基本思想是相同的。请注意,我的建议是通用的,因为虽然我对 Linux 和嵌入式路由器相当熟悉,但我从未使用过 PI(但使用过类似的设备)-
如果“网关”PI 上有 2 个接口
在外部设置 1 个接口,然后使用 NAT(iptables MASQUERADE)和 ip_forwarding 允许 LAN 上的流量被 NATTED 以显示来自网关 PI。您需要在 PI LAN 子网上运行与普通 uni 网络不同的网络 - 这通常是 3 个范围之一 - 10.0.0.0/8、192.168.0.0/16 或 172.16.0.0/12
如果 PI 上只有一个接口
注意:我不建议这样做——如果您不知道自己在做什么或者犯了错误,那么犯错误并破坏 UNI 网络的风险非常大。
您可能能够使用托管交换机将其连接起来 - 这个想法是设置 2 个 VLAN - 一个用于网关 PI 上的内部网络,一个用于外部网络。我们将它们称为 VLAN1 - 用于 Uni 网络,VLAN2 用于您的 PI LAN。您可以将 PI 网关设置为交换机上的中继端口,以便 eth0.1 在 Uni 网络上监听,而 eth0.2 为 PI 提供服务。然后,您将在交换机上设置一个端口(例如端口 1),使其未标记并连接到 VLAN1 - 并将其插入 Uni。除了第一个端口和中继端口之外,所有其他端口都将位于 VLAN2 上。这样,您就可以使用交换机有效地在交换机上创建多个接口,就像它们在 PI 上一样。
另一个想法
不过,最简单的方法是找到一个以太网路由器,并使用它来分离 Uni 网络和您的 PI 局域网。如果设备只需要查看(但不需要外部访问),这就是您所需要的 - 如果需要外部访问,最简单的方法是确保路由器可以使用 DD-WRT,将其刷入路由器,然后使用 OpenVPN 在您的局域网中建立 VPN 连接。