0

I am currently trying to debug a networking problem that has been plaguing me for almost three weeks. I'm working with openstack and can create virtual machines and networks fine but cannot connect to them at all. When I run this command from the server, i have to ctrl+c to stop the time-out and it returns:

[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

I'm not sure if this is exclusively and OpenStack problem or just a networking problem in general, but i know that 'tcpdump' is supposed to return something other than 0 packets captured, received or dumped. I am new to networking and therefore do not have much experience so please be gentle. Any help is appreciated. Thanks.

PT_C
  • 1,178
  • 5
  • 24
  • 57

1 Answers1

1

tcpdump is the right tool to dump ip packets. But if your openstack security group rules blocks ICMP, 0 ICMP packets are expected.

I just want to understand what do you mean by "cannot connect to the virtual machines at all". ping command doesn't work? or other protocol like ssh or HTTP.

Generally the first common problem when connecting to OpenStack VM is the security group rules. the default one disallow ICMP protocol. You can run the following command to see the rules:

  • nova secgroup-list: it usually returns a default one
  • nova secgroup-rules-list default: it will show the defined rules. where there must be at least one rule to allow ICMP protocol.

Here's the official doc to tell how to add rules allowing ICMP and SSH.

shawnzhu
  • 7,233
  • 4
  • 35
  • 51
  • I've added all the right rules. When I create a vm, there is no way to access it other than the console from the Dashboard. There is no way to ping to/from it through the server/instance itself. I need a template for a working network including eth and bridge setups as well as dhcp setup. – PT_C Jul 12 '13 at 14:48
  • would you please check the bridge network first? for example, use command `brctl show` to list all bridge network and check if your VM is connected to a bridge, usually it likes **vnetX**. Then check the port RX/TX packets count to see if the port works via command `cat /proc/net/dev`. – shawnzhu Jul 13 '13 at 13:12