先说解决办法,需要配置两个网卡,一个用于公网IP使用,一个用于私网IP使用,虚拟机亦可同时配置两个网卡,同时具备内网和公网两个IP。
网卡配置参考如下:
cat /etc/network/interfaces
auto vmbr0
iface vmbr0 inet static
address 198.46.100.50/28
netmask 255.255.255.240
gateway 198.46.100.49
bridge-ports eno1
bridge-stp off
bridge-fd 0
auto vmbr1
iface vmbr1 inet static
address 192.168.1.1
netmask 255.255.255.0
bridge_ports none
bridge_stp off
bridge_fd 0
post-up echo 1 > /proc/sys/net/ipv4/ip_forward
post-up bash /root/iptables.config.sh
post-up iptables -t nat -A POSTROUTING -s '192.168.1.0/24' -o vmbr0 -j MASQUERADE
post-down iptables -t nat -D POSTROUTING -s '192.168.1.0/24' -o vmbr0 -j MASQUERADE
pve里面网卡信息:
![PVE (Proxmox Virtual Environment)虚拟机同时配置NAT共享IP和独立IP](https://www.netjue.com/wp-content/uploads/2024/03/image-24.png)
创建虚拟机的时候,选择自己需要的网卡:
![PVE (Proxmox Virtual Environment)虚拟机同时配置NAT共享IP和独立IP](https://www.netjue.com/wp-content/uploads/2024/03/pve-2.png)
注意:如果需要同时支持内网外,需要这样配置:
![PVE (Proxmox Virtual Environment)虚拟机同时配置NAT共享IP和独立IP](https://www.netjue.com/wp-content/uploads/2024/03/pve3.png)
注意:不要为内网网卡设置ip,会导致无网络。需要单独添加后,在虚拟机内网卡进行配置,这样就能同时存在内外网网卡,且同时可以联通内外网。