It sounds like you may be using overlapping IP space (in the <a href="http://10.0.0.0/8">10.0.0.0/8</a> network).  The iptables rule you provided is meant to source-NAT outbound traffic from your VMs (it's a catch-all for VMs without a floating IP assigned).  <div>
<br></div><div>If you are using the <a href="http://10.0.0.0/8">10.0.0.0/8</a> space outside of your Openstack environment, you'll need to address that.  Start by checking that your "--fixed_range" flag in nova.conf is set appropriately.  It appears it's set to <a href="http://10.0.0.0/8">10.0.0.0/8</a>, but maybe you can reduce that down to a /16; however, if you are in fact using overlapping space, you'll need to fix that.  Your VMs will never be able to reach your "external" hosts if they believe they are in the same network.</div>
<div><br></div><div>Kieron<br><br><div class="gmail_quote">On Wed, Jul 18, 2012 at 11:25 AM, Boris-Michel Deschenes <span dir="ltr"><<a href="mailto:boris-michel.deschenes@ubisoft.com" target="_blank">boris-michel.deschenes@ubisoft.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div lang="FR-CA" link="blue" vlink="purple"><div><p class="MsoNormal">Hi guys,<u></u><u></u></p><p class="MsoNormal"><u></u> <u></u></p>
<p class="MsoNormal"><span lang="EN-US">I have a question regarding NAT in openstack<u></u><u></u></span></p><p class="MsoNormal"><span lang="EN-US"><u></u> <u></u></span></p><p class="MsoNormal"><span lang="EN-US">I have an openstack cloud (FlatDHCP, multi_host=false) with one nova-network node doing the nating.<u></u><u></u></span></p>
<p class="MsoNormal"><span lang="EN-US"><u></u> <u></u></span></p><p class="MsoNormal"><span lang="EN-US">I have noticed that when I ping an external machine from within a VM, on the receiving end I see the IP of the VM (so the outgoing SNAT works properly).<u></u><u></u></span></p>
<p class="MsoNormal"><span lang="EN-US">I have also noticed that when I ping a VM inside the cloud from a machine outside, the VM sees the external IP of the nova-network node as the source of the ping and not the real IP of the “pinger”…  (this is the problem for me).<u></u><u></u></span></p>
<p class="MsoNormal"><span lang="EN-US"><u></u> <u></u></span></p><p class="MsoNormal"><span lang="EN-US">I looked at the nova-network machine’s iptables and I see this:<u></u><u></u></span></p><p class="MsoNormal"><span lang="EN-US"><u></u> <u></u></span></p>
<p class="MsoNormal"><span lang="EN-US">-A nova-network-snat -s <a href="http://10.0.0.0/8" target="_blank">10.0.0.0/8</a> -j SNAT --to-source 10.129.40.12<u></u><u></u></span></p><p class="MsoNormal"><span lang="EN-US"><u></u> <u></u></span></p>
<p class="MsoNormal"><span lang="EN-US">So it’s basically setting the nova-network node as the source IP for all incoming traffic, in my situation, this prevents an application running inside the cloud to properly identifies the server located outside, currently, the only peer it sees is the nova-network node and not the IP of the server (located outside the cloud) so my application tries to connect to nova-network instead of the server that initiated the connection.<u></u><u></u></span></p>
<p class="MsoNormal"><span lang="EN-US"><u></u> <u></u></span></p><p class="MsoNormal"><span lang="EN-US">Would it be possible to have SNAT work in a way where, when connecting to a VM from outside the cloud, the VM sees the source IP as the real source IP and not the nova-network controller’s ip ?<u></u><u></u></span></p>
<p class="MsoNormal"><span lang="EN-US"><u></u> <u></u></span></p><p class="MsoNormal"><span lang="EN-US">Thank you very much<span class="HOEnZb"><font color="#888888"><u></u><u></u></font></span></span></p><span class="HOEnZb"><font color="#888888"><p class="MsoNormal">
<span lang="EN-US"><u></u> <u></u></span></p><p class="MsoNormal"><span lang="EN-US">Boris<u></u><u></u></span></p></font></span></div></div><br>_______________________________________________<br>
Mailing list: <a href="https://launchpad.net/~openstack" target="_blank">https://launchpad.net/~openstack</a><br>
Post to     : <a href="mailto:openstack@lists.launchpad.net">openstack@lists.launchpad.net</a><br>
Unsubscribe : <a href="https://launchpad.net/~openstack" target="_blank">https://launchpad.net/~openstack</a><br>
More help   : <a href="https://help.launchpad.net/ListHelp" target="_blank">https://help.launchpad.net/ListHelp</a><br>
<br></blockquote></div><br></div>