All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH net-next 0/3] net: vrf: Handle ipv6 multicast and link-local addresses
@ 2016-06-13 20:44 David Ahern
  2016-06-13 20:44 ` [PATCH net-next 1/3] net: l3mdev: Remove const from flowi6 arg to get_rt6_dst David Ahern
                   ` (3 more replies)
  0 siblings, 4 replies; 5+ messages in thread
From: David Ahern @ 2016-06-13 20:44 UTC (permalink / raw)
  To: netdev; +Cc: David Ahern

IPv6 multicast and link-local addresses require special handling by the
VRF driver. Rather than using the VRF device index and full FIB lookups,
packets to/from these addresses should use direct FIB lookups based on
the VRF device table.

Multicast routes do not make sense for the L3 master device directly.
Accordingly, do not add mcast routes for the device, and the VRF driver
should fail attempts to send packets to ipv6 mcast addresses on the
device (e.g, ping6 ff02::1%<vrf> should fail)

With this change connections into and out of a VRF enslaved device work
for multicast and link-local addresses (icmp, tcp, and udp).  e.g.,

1. packets into VM with VRF config:
    ping6 -c3 fe80::e0:f9ff:fe1c:b974%br1
    ping6 -c3 ff02::1%br1
    ssh -6 fe80::e0:f9ff:fe1c:b974%br1

2. packets going out a VRF enslaved device:
    ping6 -c3 fe80::18f8:83ff:fe4b:7a2e%eth1
    ping6 -c3 ff02::1%eth1
    ssh -6 root@fe80::18f8:83ff:fe4b:7a2e%eth1

David Ahern (3):
  net: l3mdev: Remove const from flowi6 arg to get_rt6_dst
  net: ipv6: Do not add multicast route for l3 master devices
  net: vrf: Handle ipv6 multicast and link-local addresses

 drivers/net/vrf.c       | 100 +++++++++++++++++++++++++++++++++++++++++++++---
 include/net/ip6_route.h |   2 +
 include/net/l3mdev.h    |   6 +--
 net/ipv6/addrconf.c     |   2 +-
 net/ipv6/icmp.c         |   2 +-
 net/ipv6/route.c        |   5 ++-
 net/l3mdev/l3mdev.c     |   2 +-
 7 files changed, 105 insertions(+), 14 deletions(-)

-- 
2.1.4

^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2016-06-15 19:34 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2016-06-13 20:44 [PATCH net-next 0/3] net: vrf: Handle ipv6 multicast and link-local addresses David Ahern
2016-06-13 20:44 ` [PATCH net-next 1/3] net: l3mdev: Remove const from flowi6 arg to get_rt6_dst David Ahern
2016-06-13 20:44 ` [PATCH net-next 2/3] net: ipv6: Do not add multicast route for l3 master devices David Ahern
2016-06-13 20:44 ` [PATCH net-next 3/3] net: vrf: Handle ipv6 multicast and link-local addresses David Ahern
2016-06-15 19:34 ` [PATCH net-next 0/3] " David Miller

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.