1

我试图弄清楚为什么“默认”Proxmox 网络配置没有像我预期的那样运行。

我有:

  • Proxmox 服务器 (10.0.40.10)
  • Proxmox 默认创建的网桥(vmbr0)
  • 连接到 vmbr0(我们称之为 VM1)的 VM(10.0.40.20)
  • 连接到 vmbr0(我们称之为 VM2)的 VM(10.0.40.25)
  • 在 vmbr0 上配置的网关 (10.0.40.254)

当我从VM1VM2上执行 HTTP 传输 (GET)时,我观察到的速度表明流量正在退出 Proxmox 主机,进入网关,然后返回到 Proxmox 主机。

VM1 和 VM2 都连接到vmbr0,所以我的期望是vmbr0会根据 MA​​C/ARP 在两个 VM 之间“切换”,并且流量将完全保持在本地(并且速度会快一到两个数量级) .

当我从 VM2 到 VM1 运行 ping 时,我观察到:

[root@vm2 ~]# ping -c 5 10.0.40.20
PING 10.0.40.20 (10.0.40.20) 56(84) bytes of data.
64 bytes from 10.0.40.20: icmp_seq=1 ttl=64 time=0.485 ms
From 10.0.40.254 icmp_seq=1 Redirect Host(New nexthop: 10.0.40.20)
64 bytes from 10.0.40.20: icmp_seq=2 ttl=64 time=0.609 ms
From 10.0.40.254 icmp_seq=2 Redirect Host(New nexthop: 10.0.40.20)
64 bytes from 10.0.40.20: icmp_seq=3 ttl=64 time=0.598 ms

--- 10.0.40.20 ping statistics ---
3 packets transmitted, 3 received, +2 errors, 0% packet loss, time 2003ms
rtt min/avg/max/mdev = 0.485/0.564/0.609/0.056 ms

运行 traceroute 显示:

[root@vm2 ~]# traceroute -I 10.0.40.20
traceroute to 10.0.40.20 (10.0.40.20), 30 hops max, 60 byte packets
 1  gateway (10.0.40.254)  0.328 ms  0.308 ms  0.393 ms
 2  10.0.40.20 (10.0.40.20)  0.472 ms  0.481 ms  0.533 ms

vmbr0 配置如下所示:

vmbr0

VM1 的网络定义:

vm1

VM2 的网络定义:

vm2

这似乎是一个基本的用例,似乎我必须遗漏一些东西。

有谁知道我的期望是否正确,或者 vmbr0 的这种行为是否正确?有什么看起来配置错误吗?我是否需要像代理 ARP 或机上虚拟路由器之类的东西来解决这样一个简单的用例?

4

1 回答 1

1

已解决:某些虚拟机的 IP 地址配置为 /32 而不是 /24,例如。10.0.40.25/32 而不是 10.0.40.25/24,因此不认为自己与对等方位于同一子网中,并且流量通过默认路由发送出去。

于 2018-08-01T11:34:50.897 回答