← Back to team overview

openstack team mailing list archive

Re: DHCP lease not accepted when libvirt_use_virtio_for_bridges=true

 

On Thu, Mar 21, 2013 at 12:00 PM, Vishvananda Ishaya
<vishvananda@xxxxxxxxx>wrote:

> Well phooey:
>
>  987     if network_ref['multi_host']:
>  988         _add_dhcp_mangle_rule(dev)
>
> The mangle rule is only added my nova-network in multihost mode.
>
> Can you verify whether or not adding the rule on the compute or network
> node fixes it?
>
> That way we can either remove the check on multi_host or add it in
> plug_vif on the
> compute host.
>
>

I'll check on this and get back to you.

As an aside, note that we're *not* running with the vhost-net kernel module
loaded, and the mangle rule only gets applied if this module is loaded:

https://github.com/openstack/nova/blob/master/nova/network/linux_net.py#L885

884   def _add_dhcp_mangle_rule(dev):
885       if not os.path.exists('/dev/vhost-net'):
886          return

So, either this situation can occur even without vhost-net, or I'm hitting
a different issue.



> BTW:
>
> iptables -D POSTROUTING -t mangle -p udp --dport 68 -j CHECKSUM
>>> --checksum-fill
>>>
>>
>
> that should be -A not -D
>
>
D'oh! I'll make sure that's correct when I do the testing.


Lorin




> Vish
>
> On Mar 20, 2013, at 1:43 PM, Lorin Hochstein <lorin@xxxxxxxxxxxxxxxxxx>
> wrote:
>
>
> On Wed, Mar 20, 2013 at 4:15 PM, Nathanael Burton <
> nathanael.i.burton@xxxxxxxxx> wrote:
>
>> On Wed, Mar 20, 2013 at 3:51 PM, Lorin Hochstein <
>> lorin@xxxxxxxxxxxxxxxxxx> wrote:
>>
>>> I'm doing a Folsom deployment with FlatDHCP (not multihost).
>>>
>>> When I try to boot a quantal image, the instance doesn't pick up the
>>> DHCP lease. I've confirmed that dnsmasq is sending out the DHCPOFFER, and I
>>> can see by tcpdump on the compute host that the DHCP packets are making it
>>> to the vnet0 interface.
>>>
>>>
>>> Note that I tried adding this iptables rule as mentioned here <
>>> https://github.com/mseknibilel/OpenStack-Folsom-Install-guide/issues/14>,
>>> but that didn't resolve it.
>>>
>>>     iptables -D POSTROUTING -t mangle -p udp --dport 68 -j CHECKSUM
>>> --checksum-fill
>>>
>>>
>>>
>>> However, the problem goes away if I change this setting on the compute
>>> hosts in /etc/nova/nova.conf
>>>
>>>     libvirt_use_virtio_for_bridges=true
>>>
>>> to:
>>>
>>>    libvirt_use_virtio_for_bridges=false
>>>
>>>
>>> Anybody know what would cause this?
>>>
>>>
>>> I'm on Ubuntu 12.04 with the cloud-archive packages, with KVM as the
>>> hypervisor
>>>
>>>
>>> You didn't restart nova-network without killing and restarting dnsmasq,
>> did you?
>>
>> Nate
>>
>>
>>
> Of course not! (Well, maybe...). But just tried again, killing dnsmasq and
> restarting nova-network doesn't seem to help. I'm guessing the issue is
> confined to the compute node, and since I'm not running multihost, I don't
> think I even need to restart nova-network each time I make a virtio-related
> change on the compute node...
>
> Lorin
>
>
> --
> Lorin Hochstein
> Lead Architect - Cloud Services
> Nimbis Services, Inc.
> www.nimbisservices.com
>  _______________________________________________
> Mailing list: https://launchpad.net/~openstack
> Post to     : openstack@xxxxxxxxxxxxxxxxxxx
> Unsubscribe : https://launchpad.net/~openstack
> More help   : https://help.launchpad.net/ListHelp
>
>
>


-- 
Lorin Hochstein
Lead Architect - Cloud Services
Nimbis Services, Inc.
www.nimbisservices.com

Follow ups

References