This may not apply to everyone but here is what happened to me.
One day my IP connectivity for one container went dead, I could ping the hostnode from it and the hostnode could ping it but there was no external routing. I restarted the network service but it didn't help.
I checked the routing table inside the VPS and the host and everything looked normal. I added another different IP on the same subnet to the container and it worked. Right away I started thinking that that one IP was stolen by another user on the network or that it had been null routed.
Then I decided to do a traceroute to it, I found the last IP it hit was a different hostnode than my server was on. Then I checked the route table on the other hostnode, sure enough it was routing for my containers IP even though it wasn't running there.
How did this happen? Because I had a failed attempt at live-migrating this server days before,and when the othe hostnode was restarted it brought up the other copy of my failed migration and added my IP to the routing table, so the two nodes were fighting and advertising the route for my containers IP.
The solution was just a "route del xx.xx.xx.xx venet0" from the hostnode that wasn't running my container.
openvz, container, ip, solutionthis, connectivity, ping, hostnode, external, routing, restarted, didn, vps, subnet, user, null, routed, traceroute, server, containers, wasn, migrating, othe, migration, nodes, advertising, quot, xx, venet,