[PATCH net-next v4 0/4] net: add local address bind support to vxlan and geneve

From: Richard Gobert
Date: Thu Jul 17 2025 - 07:56:20 EST


This series adds local address bind support to both vxlan
and geneve sockets.

v3 -> v4:
- Fix a problem where vxlan socket is bound before its outgoing interface is up
- v3: https://lore.kernel.org/netdev/20240711131411.10439-1-richardbgobert@xxxxxxxxx/

v2 -> v3:
- Fix typo and nit problem (Simon)
- v2: https://lore.kernel.org/netdev/20240708111103.9742-1-richardbgobert@xxxxxxxxx/

v1 -> v2:
- Change runtime checking of CONFIG_IPV6 to compile time in geneve
- Change {geneve,vxlan}_find_sock to check listening address
- Fix incorrect usage of IFLA_VXLAN_LOCAL6 in geneve
- Use NLA_POLICY_EXACT_LEN instead of changing strict_start_type in geneve
- v1: https://lore.kernel.org/netdev/df300a49-7811-4126-a56a-a77100c8841b@xxxxxxxxx/

Richard Gobert (4):
net: udp: add freebind option to udp_sock_create
net: vxlan: add netlink option to bind vxlan sockets to local
addresses
net: vxlan: bind vxlan sockets to their local address
net: geneve: enable binding geneve sockets to local addresses

drivers/net/geneve.c | 80 ++++++++++++++++++++++++++---
drivers/net/vxlan/vxlan_core.c | 81 ++++++++++++++++++++++++------
include/net/geneve.h | 6 +++
include/net/udp_tunnel.h | 3 +-
include/net/vxlan.h | 1 +
include/uapi/linux/if_link.h | 3 ++
net/ipv4/udp_tunnel_core.c | 1 +
net/ipv6/ip6_udp_tunnel.c | 1 +
tools/include/uapi/linux/if_link.h | 3 ++
9 files changed, 156 insertions(+), 23 deletions(-)

--
2.36.1