如何在 Ubuntu 上设置带有两个 NIC 的网桥 - 一个用于 WAN,一个用于 LAN,连接到 MaaS

如何在 Ubuntu 上设置带有两个 NIC 的网桥 - 一个用于 WAN,一个用于 LAN,连接到 MaaS

大家好,我们是两个学生,在一家企业从事学士项目,我们将使用 MaaS 2.5 构建云。之前从未使用过,因此尝试了很多次,也犯了很多错误...

我们在 maas 服务器上运行 ubuntu bionic 18.04。一个 NIC(eno1)连接到我们的路由器,IP 地址为 192.168.0.100(也是我的 maas 服务器),另一个(eno2)连接到交换机,IP 地址为 10.0.0.1。我们关闭了路由器上的 dhcp,改用 Web 用户界面上的 dhcp(见屏幕截图)。我们有两台机器要部署(HP 工作站)

MaaS 将为机器提供 IP 地址(我们尝试使用两个 NIC,一台机器获得 192.168.0.110,另一台获得 10.0.0.100),但尝试调试时两者都失败(因为超时)。我们认为解决方案是在带有 WAN 的 NIC 和带有 LAN 的 NIC 之间建立桥梁,以使节点连接到网络。BMC(Intel AMT)工作正常,我们可以在 Web UI 中打开和关闭机器。

我们的子网

工作站的时间正确。 amtterm、wsmancli 和 etherwake 已安装。如能提供任何帮助,我将不胜感激。

我们/etc/netplan/01-netcfg.yaml看起来是这样的:

enter code hnetwork: 
version: 2
renderer: networkd
ethernets:
 eno1:
  dhcp4: no
  addresses: [192.168.0.100/24]
  gateway4: 192.168.0.1
  nameservers:
   addresses: [8.8.8.8, 8.8.4.4]
 eno2:
  dhcp4: no
  addresses: [10.0.0.1/24]
  gateway4: 192.168.0.100
  nameservers:
   addresses: [8.8.8.8, 8.8.4.4]

答案1

如果我正确理解了您的网络方案,您必须在 maas 服务器上配置 NAT。但您的 netcfg 应该不起作用,因为您无法在网络外设置网关地址……(对于 eno2,您不需要设置网关和名称服务器)。

在具有 2 个网络接口的 MAAS 上设置 NAT。在内核中启用转发,编辑文件并取消注释行 net/ipv4/ip_forward=1

sudo nano /etc/ufw/sysctl.conf
net/ipv4/ip_forward=1

保存并退出

在文件 /etc/default/ufw 中更改参数 DEFAULT_FORWARD_POLICY

DEFAULT_FORWARD_POLICY="ACCEPT"

将 NAT 添加到 ufw 的配置中。在 /etc/ufw/before.rules 的过滤规则之前添加以下内容。

# NAT table rules
*nat
:POSTROUTING ACCEPT [0:0]

# Forward traffic through eno1
-A POSTROUTING -s 10.0.0.1/24 -o eno1 -j MASQUERADE

# don't delete the 'COMMIT' line or these nat table rules won't
# be processed
COMMIT

接受 maas 所需的端口

sudo ufw allow 22    
sudo ufw allow 69
sudo ufw allow 5240
sudo ufw allow 5248
sudo ufw allow 8000

现在通过重新启动 ufw 来启用更改。

sudo ufw disable && sudo ufw enable

在 MAAS 上,您应该在 eno2 上配置 DHCP,并且您的委托节点应该通过交换机连接到该网络。

相关内容