mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: Matthias Schiffer <mschiffer@universe-factory.net>
To: Stephen Hemminger <stephen@networkplumber.org>
Cc: davem@davemloft.net, jbenc@redhat.com,
	hannes@stressinduktion.org, pshelar@ovn.org, aduyck@mirantis.com,
	roopa@cumulusnetworks.com, netdev@vger.kernel.org,
	dev@openvswitch.org, linux-kernel@vger.kernel.org
Subject: Re: [PATCH net-next v2 6/6] vxlan: allow multiple VXLANs with same VNI for IPv6 link-local addresses
Date: Thu, 8 Jun 2017 20:05:06 +0200	[thread overview]
Message-ID: <18df22e2-cbf4-e25a-b2d2-87e01281d9f4@universe-factory.net> (raw)
In-Reply-To: <3c054ae3-ec68-ab20-0928-81e313a53cde@universe-factory.net>


[-- Attachment #1.1: Type: text/plain, Size: 2667 bytes --]

On 04/16/2017 05:15 PM, Matthias Schiffer wrote:
> On 04/14/2017 07:38 PM, Stephen Hemminger wrote:
>> On Fri, 14 Apr 2017 18:44:46 +0200
>> Matthias Schiffer <mschiffer@universe-factory.net> wrote:
>>
>>> As link-local addresses are only valid for a single interface, we can allow
>>> to use the same VNI for multiple independent VXLANs, as long as the used
>>> interfaces are distinct. This way, VXLANs can always be used as a drop-in
>>> replacement for VLANs with greater ID space.
>>>
>>> This also extends VNI lookup to respect the ifindex when link-local IPv6
>>> addresses are used, so using the same VNI on multiple interfaces can
>>> actually work.
>>>
>>> Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
>>
>> Why does this have to be IPv6 specific?
> 
> I'm not familar with IPv4 link-local addresses and how route lookup works
> for them. vxlan_get_route() sets flowi4_oif to the outgoing interface; does
> __ip_route_output_key_hash() do the right thing for link-local addresses
> when such addresses are used on multiple interfaces? I see some special
> casing for multicast destinations, but none for link-local ones.
> 

Getting back to this (sorry for the delay, I got caught up in other
projects), I'm seeing the following pros and cons regarding the support of
VXLAN over IPv4 link-local addresses:

+ There should be no technical reason not to support it; as everything is
in the kernel, the usual problems with IPv4 LL (userspace APIs not
supporting passing a scope ID as part of the IP address) don't apply here

+ The code needed to support IPv4 LL should be easy to add

- IPv4 LL semantics aren't as well-defined as for IPv6. While IPv4 LL
addresses are usually in the 169.254.x.y range, the Linux kernel allows
setting the address scope independently of the range for IPv4. In contrast
to this, we need to judge the validity of the configuration based on
syntactic properties of the IP addresses (at least if we don't want to add
a lot of more compexity to the validation, and probably other parts of the
code.) Generally, code that checks for the 169.254.x.y range is uncommon in
the kernel (I think I only found a single instance, somewhere in the SCTP
implementation.)

- IPv4 LL addresses are mostly used for zeroconf; I don't really see a
usecase for zeroconf addresses + VXLANs

- Personally, I have no interest in IPv4


I probably forgot a few more arguments... All in all, I'd like the VXLAN
maintainers to decide if we do want IPv4 LL support or not, and if the
verdict is to support it, I'll implement it in the next revision of my
patchset.

Matthias


[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 833 bytes --]

      reply	other threads:[~2017-06-08 18:10 UTC|newest]

Thread overview: 15+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-04-14 16:44 [PATCH net-next v2 0/6] vxlan: cleanup and IPv6 link-local support Matthias Schiffer
2017-04-14 16:44 ` [PATCH net-next v2 1/6] vxlan: refactor verification and application of configuration Matthias Schiffer
2017-04-14 16:44 ` [PATCH net-next v2 2/6] vxlan: get rid of redundant vxlan_dev.flags Matthias Schiffer
2017-04-14 16:44 ` [PATCH net-next v2 3/6] vxlan: improve validation of address family configuration Matthias Schiffer
2017-04-14 16:44 ` [PATCH net-next v2 4/6] vxlan: check valid combinations of address scopes Matthias Schiffer
2017-04-14 17:27   ` Sergei Shtylyov
2017-04-16 14:57     ` Matthias Schiffer
2017-04-14 17:36   ` Stephen Hemminger
2017-04-16 15:03     ` Matthias Schiffer
2017-04-16 17:15       ` Roopa Prabhu
2017-04-14 16:44 ` [PATCH net-next v2 5/6] vxlan: fix snooping for link-local IPv6 addresses Matthias Schiffer
2017-04-14 16:44 ` [PATCH net-next v2 6/6] vxlan: allow multiple VXLANs with same VNI for IPv6 link-local addresses Matthias Schiffer
2017-04-14 17:38   ` Stephen Hemminger
2017-04-16 15:15     ` Matthias Schiffer
2017-06-08 18:05       ` Matthias Schiffer [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=18df22e2-cbf4-e25a-b2d2-87e01281d9f4@universe-factory.net \
    --to=mschiffer@universe-factory.net \
    --cc=aduyck@mirantis.com \
    --cc=davem@davemloft.net \
    --cc=dev@openvswitch.org \
    --cc=hannes@stressinduktion.org \
    --cc=jbenc@redhat.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=netdev@vger.kernel.org \
    --cc=pshelar@ovn.org \
    --cc=roopa@cumulusnetworks.com \
    --cc=stephen@networkplumber.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®