
我正在嘗試在 Proxmox VE 7.3-4 上設定 NAT。我按照本指南進行操作,但更改了 IP 範圍,並且尚未執行任何連接埠轉發https://bobcares.com/blog/setup-nat-on-proxmox/
我編輯/etc/network/interfaces
添加vmbr1
然後運行ifup vmbr1
。我可以10.10.0.1
從主機本身 ping 通,所以vmbr1
就可以了,我也可以從虛擬機器 ping 通主機。但是,我無法從虛擬機器內存取互聯網,甚至無法 ping 1.1.1.1
。似乎是路由問題,但我不確定是什麼。
主持人/etc/network/interfaces
:
auto lo
iface lo inet loopback
iface eno3 inet manual
iface eno4 inet manual
auto vmbr0
iface vmbr0 inet static
address *.*.*.179/24
gateway *.*.*.254
bridge-ports eno3
bridge-stp off
bridge-fd 0
hwaddress AC:1F:6B:63:77:4A
auto vmbr1
iface vmbr1 inet static
address 10.10.0.1/22
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 '10.10.0.0/22' -o vmbr0 -j MASQUERADE
post-down iptables -t nat -D POSTROUTING -s '10.10.0.0/22' -o vmbr0 -j MASQUERADE
來自虛擬機器的路由表和 ping:
% ip route
default via 10.10.0.1 dev eth0 proto static
10.10.0.0/22 dev eth0 proto kernel scope link src 10.10.0.100
% ping 10.10.0.1
PING 10.10.0.1 (10.10.0.1) 56(84) bytes of data.
64 bytes from 10.10.0.1: icmp_seq=1 ttl=64 time=0.086 ms
64 bytes from 10.10.0.1: icmp_seq=2 ttl=64 time=0.068 ms
^C
--- 10.10.0.1 ping statistics ---
2 packets transmitted, 2 received, 0% packet loss, time 1002ms
rtt min/avg/max/mdev = 0.068/0.077/0.086/0.009 ms
% ping 1.1.1.1
PING 1.1.1.1 (1.1.1.1) 56(84) bytes of data.
^C
--- 1.1.1.1 ping statistics ---
3 packets transmitted, 0 received, 100% packet loss, time 2055ms
我缺什麼?
答案1
解決了!忘記添加 conntrack 區域:
post-up iptables -t raw -I PREROUTING -i fwbr+ -j CT --zone 1