我在具有两个公共 IP 地址的 Debian 11 主机上使用 Proxmox。
一个 IP 通过 vmbr0 桥接至虚拟机 (VM1)。
对于另一台机器(VM2,IP 192.168.10.2),我想使用 NAT 来访问互联网并将一些端口公开到互联网。
我使用以下网络配置。我将我的公共 IP 混淆为 1.1.1.1。
#/etc/network/interfaces
auto lo
iface lo inet loopback
iface lo inet6 loopback
iface enp41s0 inet manual
auto vmbr0
iface vmbr0 inet static
address 1.1.1.1/32
gateway 1.1.1.255
bridge-ports enp41s0
bridge-stp off
bridge-fd 1
pointopoint 1.1.1.255
#Bridge mode
auto vmbr1
iface vmbr1 inet static
address 192.168.10.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 iptables -t nat -A POSTROUTING -s '192.168.10.0/24' -o vmbr0 -j MASQUERADE
post-down iptables -t nat -F
post-up iptables -t nat -A PREROUTING -i vmbr0 -p tcp --dport 2023 -j DNAT --to 192.168.10.2:2022
post-up iptables -t nat -A PREROUTING -m multiport -i vmbr0 -p tcp --dport 80,443,5050 -j DNAT --to 192.168.10.2
#NAT mode
从互联网连接时设置工作正常,但由于端口未正确重定向,我无法从 VM2 访问主 IP(1.1.1.1)。
我已经尝试添加post-up iptables -t nat -A PREROUTING -m multiport -i vmbr1 -p tcp --dport 80,443,5050 -j DNAT --to 192.168.10.2
但之后连接根本不起作用。