[OpenWrt-Devel] [PATCH 1/3] IP Virtual Server - Load Balancer - kernel modules configuration

Mauro Mozzarelli mauro at ezplanet.net
Wed Feb 24 13:25:00 EST 2016


All,

I am resubmitting all 3 patches to keep them grouped together. This patch 1 of 3 is unchanged. The next 2 have changes.

Please find enclosed the first of three patches to add IP Virtual Server capability to OpenWrt. This patch adds configuration
for IP Virtual Server kernel modules This part does not have dependencies and it can be included without the following 2
parts.

Mauro

commit 5430316fd97a81b4759445b19e1a1cee89adb7c6
Author: Mauro Mozzarelli <mauro at ezplanet.net>
Date:   Wed Feb 24 18:09:25 2016 +0000

    This ipvs package adds Linux IP Virtual Server capability to OpenWRT
    IPVS (IP Virtual Server) implements transport-layer load balancing inside the Linux kernel, so called Layer-4 switching.
    IPVS running on a host acts as a load balancer at the front of a cluster of real servers, it can direct requests for
    TCP/UDP based services to the real servers, and makes services of the real servers to appear as a virtual service on a
    single IP address.

    This patch enables configuration of the IP Virtual Server kernel modules

    Signed-off-by: Mauro Mozzarelli <mauro at ezplanet.net>

diff --git a/package/kernel/linux/modules/netfilter.mk b/package/kernel/linux/modules/netfilter.mk
index a0a19b2..71bed3d 100644
--- a/package/kernel/linux/modules/netfilter.mk
+++ b/package/kernel/linux/modules/netfilter.mk
@@ -270,6 +270,56 @@ define KernelPackage/ipt-ipset
 endef
 $(eval $(call KernelPackage,ipt-ipset))

+IPVS_MODULES:= \
+	ipvs/ip_vs \
+	ipvs/ip_vs_lc \
+	ipvs/ip_vs_wlc \
+	ipvs/ip_vs_rr \
+	ipvs/ip_vs_wrr \
+	ipvs/ip_vs_lblc \
+	ipvs/ip_vs_lblcr \
+	ipvs/ip_vs_dh \
+	ipvs/ip_vs_sh \
+	ipvs/ip_vs_fo \
+	ipvs/ip_vs_nq \
+	ipvs/ip_vs_sed
+
+define KernelPackage/ipvs
+  SUBMENU:=Netfilter Extensions
+  TITLE:=IP Virtual Server modules
+  DEPENDS:=+kmod-lib-crc32c
+  KCONFIG:= \
+	CONFIG_IP_VS \
+	CONFIG_IP_VS_IPV6=y \
+	CONFIG_IP_VS_DEBUG=n \
+	CONFIG_IP_VS_PROTO_TCP=y \
+	CONFIG_IP_VS_PROTO_UDP=y \
+	CONFIG_IP_VS_PROTO_AH_ESP=y \
+	CONFIG_IP_VS_PROTO_ESP=y \
+	CONFIG_IP_VS_PROTO_AH=y \
+	CONFIG_IP_VS_PROTO_SCTP=y \
+	CONFIG_IP_VS_TAB_BITS=12 \
+	CONFIG_IP_VS_RR \
+	CONFIG_IP_VS_WRR \
+	CONFIG_IP_VS_LC \
+	CONFIG_IP_VS_WLC \
+	CONFIG_IP_VS_FO \
+	CONFIG_IP_VS_OVF \
+	CONFIG_IP_VS_LBLC \
+	CONFIG_IP_VS_LBLCR \
+	CONFIG_IP_VS_DH \
+	CONFIG_IP_VS_SH \
+	CONFIG_IP_VS_SED \
+	CONFIG_IP_VS_NQ \
+	CONFIG_IP_VS_SH_TAB_BITS=8 \
+	CONFIG_IP_VS_NFCT=n \
+	CONFIG_NETFILTER_XT_MATCH_IPVS=n
+
+  FILES:=$(foreach mod,$(IPVS_MODULES),$(LINUX_DIR)/net/netfilter/$(mod).ko)
+  #AUTOLOAD:=$(call AutoLoad,70,$(notdir $(IPVS_MODULES_LOAD)))
+  $(call AddDepends/ipt,+kmod-ipt-conntrack)
+endef
+$(eval $(call KernelPackage,ipvs))

 define KernelPackage/ipt-nat
   TITLE:=Basic NAT targets
_______________________________________________
openwrt-devel mailing list
openwrt-devel at lists.openwrt.org
https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-devel



More information about the openwrt-devel mailing list