From 49e733ea3c4203df921e3e4ed858eddcfb9e3541 Mon Sep 17 00:00:00 2001 From: Chen Minqiang Date: Wed, 21 Apr 2021 13:27:42 +0800 Subject: [PATCH] kernel: add kmod-ipvlan support This kmod is similar to macvlan with the difference being that the endpoints have the same mac address. It is useful on cloud where only one mac address allowed on port, where macvlan not works but ipvlan would. One use case is where multiple IPs and gateways assign on one net port Signed-off-by: Chen Minqiang Signed-off-by: maurerr --- package/kernel/linux/modules/netdevices.mk | 16 ++++++++++++++++ target/linux/generic/config-5.10 | 1 + target/linux/generic/config-5.4 | 1 + 3 files changed, 18 insertions(+) diff --git a/package/kernel/linux/modules/netdevices.mk b/package/kernel/linux/modules/netdevices.mk index bc6ed2c7aa8..5c1f3b2ee73 100644 --- a/package/kernel/linux/modules/netdevices.mk +++ b/package/kernel/linux/modules/netdevices.mk @@ -885,6 +885,22 @@ endef $(eval $(call KernelPackage,macvlan)) +define KernelPackage/ipvlan + SUBMENU:=$(NETWORK_DEVICES_MENU) + TITLE:=IP-VLAN support + KCONFIG:=CONFIG_IPVLAN + FILES:=$(LINUX_DIR)/drivers/net/ipvlan/ipvlan.ko + AUTOLOAD:=$(call AutoProbe,ipvlan) +endef + +define KernelPackage/ipvlan/description + A kernel module which allows one to create virtual interfaces that + map packets to or from specific IP addresses to a particular interface +endef + +$(eval $(call KernelPackage,ipvlan)) + + define KernelPackage/tulip TITLE:=Tulip family network device support DEPENDS:=@PCI_SUPPORT +kmod-mii diff --git a/target/linux/generic/config-5.10 b/target/linux/generic/config-5.10 index 00c60c12270..11d05aba6f5 100644 --- a/target/linux/generic/config-5.10 +++ b/target/linux/generic/config-5.10 @@ -2662,6 +2662,7 @@ CONFIG_IPV6_NDISC_NODETYPE=y # CONFIG_IPV6_TUNNEL is not set # CONFIG_IPV6_VTI is not set # CONFIG_IPVLAN is not set +# CONFIG_IPVTAP is not set # CONFIG_IPW2100 is not set # CONFIG_IPW2100_DEBUG is not set CONFIG_IPW2100_MONITOR=y diff --git a/target/linux/generic/config-5.4 b/target/linux/generic/config-5.4 index e8527f8068f..8a93027d4dd 100644 --- a/target/linux/generic/config-5.4 +++ b/target/linux/generic/config-5.4 @@ -2434,6 +2434,7 @@ CONFIG_IPV6_NDISC_NODETYPE=y # CONFIG_IPV6_TUNNEL is not set # CONFIG_IPV6_VTI is not set # CONFIG_IPVLAN is not set +# CONFIG_IPVTAP is not set # CONFIG_IPW2100 is not set # CONFIG_IPW2100_DEBUG is not set CONFIG_IPW2100_MONITOR=y