[OpenWrt-Devel] Linux IP Virtual Server for OpenWrt trunk or github?

Felix Fietkau nbd at openwrt.org
Wed Mar 9 07:00:36 EST 2016

On 2016-03-09 09:24, Mauro Mozzarelli wrote:
> All,
> I have been having conversations with John on whether to include ipvs and ipvsadm in
> trunk or github. Initially I did not know of github and thanks to John's patience now I
> have a better understanding of the differences between the two.
> IP Virtual server is provided by kernel modules that have been available  since kernel
> release 2.4. For some reasons these were always omitted by OpenWrt
> IP Virtual server is part of kernel netfilter and lives together with IP NAT and
> netfilter modules.
> IP Netfilter has a userland tool to configure the kernel tables: iptables. Similarly IP
> Virtual server has a tool named ipvsadm to configure the ip vs kernel tables.
> ipvsadm is fundamental to ip vs. It stands to ip vs kernel modules like iptables stands
> to ip netfilter modules. ipvsadm has been adopted by the linux kernel project and it is
> available here: https://www.kernel.org/pub/linux/utils/kernel/ipvsadm/
> OpenWrt:
> The ip_vs kernel configuration is achieved by activating the relative ip_vs modules build
> with a simple modification of OpenWrt's netfilter.mk
> Logically ipvsadm belongs to the same OpenWrt folder where iptables is.

> That is the reason I created the package there (package/network/utils/ipvsadm) in the
> first place.
> Now that I understand more about github packages, I am convinced that ipvsadm does not
> belong there as it isn't yet another userland tool. It is a tool which is strictly
> linked to kernel capabilities and it is essential to IP VS kernel modules.
> For this reason I believe it should be included in the core trunk OpenWrt.
Not all packages on github are plain userland tools, there are kernel
modules there and there are also packages without which the
corresponding kernel functionality is useless (e.g. ipsec).

The split of trunk vs packages is about who maintains the package, and
in some cases also about the relative importance of the package as well.
Packages in trunk are usually maintained by core developers, whereas
packages on github are more of a community project.

In OpenWrt, ipvs is a relatively exotic use case, so I believe that
asking you to submit it to github instead of trunk is reasonable.
The exception of course is the kernel module part, since it's just a
small piece of metadata.

- Felix
openwrt-devel mailing list
openwrt-devel at lists.openwrt.org

More information about the openwrt-devel mailing list