[ovs-discuss] OVN DHCP implementation ignores broadcast bit

Numan Siddique nusiddiq at redhat.com
Fri Jul 7 10:20:15 UTC 2017


On Thu, Jul 6, 2017 at 7:52 PM, Alex Jones <ajones at genband.com> wrote:

> Hi Numan,
>
>   It doesn't matter to me. You know the code better than I do! Do you want
> me to post the patch, and you can improve it?
>

Sure. Go ahead and post the patch.

Thanks
Numan


>   My patch does modify pinctrl_handle_put_dhcp_opts() currently.
>
> Alex
>
> On 07/04/2017 11:39 PM, Numan Siddique wrote:
>
> ------------------------------
> NOTICE: This email was received from an EXTERNAL sender
> ------------------------------
>
>
>
> On Tue, Jul 4, 2017 at 5:48 PM, Alin Serdean <aserdean at cloudbasesolutions.
> com> wrote:
>
>> Hi Alex,
>>
>>
>>
>> You can send it to dev at openvswitch.org or create a new pull request via
>> github.
>>
>>
>>
>> Thanks,
>>
>> Alin.
>>
>>
>>
>> *From:* ovs-discuss-bounces at openvswitch.org [mailto:
>> ovs-discuss-bounces at openvswitch.org] *On Behalf Of *Alex Jones
>> *Sent:* Tuesday, July 4, 2017 4:00 AM
>> *To:* ovs-discuss at openvswitch.org
>> *Subject:* [ovs-discuss] OVN DHCP implementation ignores broadcast bit
>>
>>
>>
>> Hi All,
>>
>>   I have OVN up and running (version 2.7), and it is working well except
>> for one case. We have a VM which uses its own IP stack and does not accept
>> unicast DHCP offers. After examining the OVN code, I found that it
>> currently doesn't support the broadcast bit if set by the client.
>>
>>   I didn't see any bugs regarding this, so I did a patch myself. The
>> patch modifies put_dhcp_options to return 2 if the broadcast bit was set in
>> the DISCOVER/REQUEST, and 1 if not set (both indicate success). Then I
>> modified the current logical flow to check if the return code is 1, then
>> execute the current logical flow. I added a new logical flow to handle the
>> broadcast bit set case. If the return value from put_dhcp_options is 2, the
>> new flow is executed which sets the dest MAC and dest IP to broadcast.
>>
>>   I'd like to submit this. Do I just post it here?
>>
>> Alex
>>
>
> The other simpler approach could be to set "ip4.dst and eth.dst" to
> broadcast addresses if broadcast bit is set, giaddr and ciaddr is 0 (as per
> the RFC - https://www.ietf.org/rfc/rfc2131.txt) in the function
> "pinctrl_handle_put_dhcp_opts" (in ovn/controller/pinctrl.c) and modify
> ovn-northd.c to not set the eth.dst and ip4.dst fields in the
> S_SWITCH_IN_DHCP_RESPONSE  pipeline.
>
> Probably we should also set ip4.dst to giaddr (to support dhcp relay) if
> it is set.
>
> Thanks
> Numan
>
>
>>
>> _______________________________________________
>> discuss mailing list
>> discuss at openvswitch.org
>> https://mail.openvswitch.org/mailman/listinfo/ovs-discuss
>>
>>
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.openvswitch.org/pipermail/ovs-discuss/attachments/20170707/f9670e65/attachment-0001.html>


More information about the discuss mailing list