0

我目前正在尝试调试一个困扰我近三周的网络问题。我正在使用 openstack,可以很好地创建虚拟机和网络,但根本无法连接到它们。当我从服务器运行此命令时,我必须按 ctrl+c 来停止超时并返回:

[root@xxxxxx ~(keystone_admin)]# tcpdump -i any -n -v 'icmp[icmptype] = icmp-echoreply or icmp[icmptype] = icmp-echo'
tcpdump: listening on any, link-type LINUX_SLL (Linux cooked), capture size 65535 bytes
^C
0 packets captured
0 packets received by filter
0 packets dropped by kernel

我不确定这是否完全是 OpenStack 问题或只是一般的网络问题,但我知道 'tcpdump' 应该返回除捕获、接收或转储的 0 个数据包之外的其他内容。我是网络新手,因此没有太多经验,所以请保持温和。任何帮助表示赞赏。谢谢。

4

1 回答 1

1

tcpdump 是转储 ip 数据包的正确工具。但是,如果您的 openstack 安全组规则阻止 ICMP,则预期为 0 个 ICMP 数据包。

我只是想了解“根本无法连接到虚拟机”是什么意思。ping 命令不起作用?或其他协议,如 ssh 或 HTTP。

通常,连接到 OpenStack VM 时的第一个常见问题是安全组规则。默认一个不允许 ICMP 协议。您可以运行以下命令来查看规则:

  • nova secgroup-list:它通常返回一个默认值
  • nova secgroup-rules-list default:它将显示定义的规则。必须至少有一个规则才能允许 ICMP 协议。

这是官方文档,讲述如何添加允许 ICMP 和 SSH 的规则。

于 2013-07-12T00:49:02.427 回答