I have a nested VM setup. I have a problem in communication between the host and a VM inside a nested VM.

This is my layout. I have installed KVM on host machine having a single nic interface (public ip) running Ubuntu.On top of this,I have VM running Ubuntu.I have installed KVM in this VM too.I then have a VM inside this running a web server. I am able to ping the host from this web server VM and ssh into it.But from host to VM ,ping is being unsuccessful.

The VM (named L1hyp) on host was created using libvirt-manager and has IP of 192.168.122.8. The vswitch interface created at host is in default config (NAT-ed). Its IP is 192.168.122.1. Now this VM is also having a vswitch interface which is in default config (NAT-ed).Its IP is 192.168.100.1. The Web server VM is created on top of this L1hyp VM, is having an IP of 192.168.100.186. The Webserver VM uses 192.168.100.1 as its default gw. The L1hyp uses 192.168.122.1 as its default gw.

From Host: ping 192.168.122.8 - SUCCEEDS

ping 192.168.122.1 - SUCCEEDS

ping 192.168.100.1 - SUCCEEDS

ping 192.168.100.186 - FAILS

Comes up with Destination Host Unreachable From 192.168.122.1. But there is route to 192.168.100.0/24 subnet from host.Ping to 192.168.100.1 succeeds.


From Webserver VM:

ping 192.168.100.1 - SUCCEEDS

ping 192.168.122.1 - SUCCEEDS

SSH from web server VM to host succeeds.

I don't know what I am missing out here..Any insights is greatly appreciated ..