Proxmox:1个NIC,1个公网IP,无法在虚拟机上使用WAN接口

我有一台运行Proxmox的计算机,它有1个直接连接到互联网的单个NIC,并且具有单个公共IP。 然后,我有不同的虚拟机(KVM)运行,其中一个是pfSense。

我想要做的是将主机(Proxmox)和pfSense放在DMZ区域,而其余的虚拟机将位于内部局域网中,所有通信必须通过pfSense。 但是我无法使它工作。

我所做的是build立一个桥接器br0 (包含公共地址,网关…)连接到eth0iface eth0 inet manual )。 这从主机,因为我有充分的连接,而不是pfSense或任何其他虚拟机。

这里的主要问题是,我不确定在pfSense中应该使用什么IP,因为公共IP已经在网桥中定义了。 在pfSense中设置相同的IP将不起作用(似乎是合乎逻辑的)。 我应该如何继续?

你将需要创build一个属于该网桥的虚拟适配器(即tap0),并给它一个IP(比如说192.168.1.1),然后将所有的虚拟机连接到该网桥,并让它们使用192.168.1.1作为其网关,并设置Proxmox主机通过启用IP转发来执行NAT(将“net.ipv4.ip_forward = 1添加到/etc/sysctl.conf并运行sysctl -p),然后在NAT规则中添加”iptables -t nat -A POSTROUTING – o eth0 -j MASQUERADE“

proxmox文档涵盖了这个很好(更详细)在这里: https ://pve.proxmox.com/wiki/Network_Model#Masquerading_.28NAT.29