-1

我有两台机器:

  • Ubuntu 16.04 服务器虚拟机 (172.18.6.10)
  • Proxmox VE5 站 (192.168.6.30)

他们通过在两者之间转发数据包的第三台机器进行通信。我想在两台机器之间创建一个 gre 隧道,并让它持久化我已经编辑了 /etc/network/interfaces 并添加了一个 gre 接口和隧道,以便在启动时创建,如下所示:

Ubuntu 服务器配置

Proxmox 配置

创建它们后,我尝试从另一台机器 ping 一台机器以检查连接性,ping gre 接口 IP 地址(10.10.10.1 和 10.10.10.2)。问题是,当我从 Ubuntu ping Proxmox 机器时,我没有收到任何反馈,但是当我在 Porxmox 上的 gre1 上运行 tcpdump 时,我看到数据包已收到并且有一个 ICMP 回复传出: tcp转储输出

当我以相反的方式运行 ping 并在 Ubuntu 机器上使用 tcpdump 检查它时,我什么也没得到。我知道问题是当数据包通过 gre1 离开 Proxmox 到 Ubuntu 并丢失或阻塞时,因为 Ubuntu 可以清楚地发送 Proxmox 数据包但回复永远不会回来。我怎样才能解决这个问题?

4

1 回答 1

0

检查您是否为您使用的第三台机器的内核启用了数据包转发,以便与其他两台机器进行通信

检查/etc/sysctl.conf看看你是否有这个:

net.ipv4.ip_forward = 1

如果已注释 (#),请取消注释,保存文件并发出:

sysctl -p

然后再试一次ping...

于 2017-10-19T10:17:04.020 回答