mirror of
https://github.com/Dasharo/linux.git
synced 2026-03-06 15:25:10 -08:00
geneve: add initial netdev driver for GENEVE tunnels
This is an initial implementation of a netdev driver for GENEVE tunnels. This implementation uses a fixed UDP port, and only supports point-to-point links with specific partner endpoints. Only IPv4 links are supported at this time. Signed-off-by: John W. Linville <linville@tuxdriver.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
committed by
David S. Miller
parent
d37d29c305
commit
2d07dc79fe
@@ -179,6 +179,20 @@ config VXLAN
|
||||
To compile this driver as a module, choose M here: the module
|
||||
will be called vxlan.
|
||||
|
||||
config GENEVE
|
||||
tristate "Generic Network Virtualization Encapsulation netdev"
|
||||
depends on INET && GENEVE_CORE
|
||||
select NET_IP_TUNNEL
|
||||
---help---
|
||||
This allows one to create geneve virtual interfaces that provide
|
||||
Layer 2 Networks over Layer 3 Networks. GENEVE is often used
|
||||
to tunnel virtual network infrastructure in virtualized environments.
|
||||
For more information see:
|
||||
http://tools.ietf.org/html/draft-gross-geneve-02
|
||||
|
||||
To compile this driver as a module, choose M here: the module
|
||||
will be called geneve.
|
||||
|
||||
config NETCONSOLE
|
||||
tristate "Network console logging support"
|
||||
---help---
|
||||
|
||||
@@ -23,6 +23,7 @@ obj-$(CONFIG_TUN) += tun.o
|
||||
obj-$(CONFIG_VETH) += veth.o
|
||||
obj-$(CONFIG_VIRTIO_NET) += virtio_net.o
|
||||
obj-$(CONFIG_VXLAN) += vxlan.o
|
||||
obj-$(CONFIG_GENEVE) += geneve.o
|
||||
obj-$(CONFIG_NLMON) += nlmon.o
|
||||
|
||||
#
|
||||
|
||||
503
drivers/net/geneve.c
Normal file
503
drivers/net/geneve.c
Normal file
File diff suppressed because it is too large
Load Diff
@@ -390,6 +390,15 @@ struct ifla_vxlan_port_range {
|
||||
__be16 high;
|
||||
};
|
||||
|
||||
/* GENEVE section */
|
||||
enum {
|
||||
IFLA_GENEVE_UNSPEC,
|
||||
IFLA_GENEVE_ID,
|
||||
IFLA_GENEVE_REMOTE,
|
||||
__IFLA_GENEVE_MAX
|
||||
};
|
||||
#define IFLA_GENEVE_MAX (__IFLA_GENEVE_MAX - 1)
|
||||
|
||||
/* Bonding section */
|
||||
|
||||
enum {
|
||||
|
||||
Reference in New Issue
Block a user