netfilter-devel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [ANNOUNCE] nftlb 0.4 release
@ 2019-03-18 10:19 Laura Garcia
  0 siblings, 0 replies; only message in thread
From: Laura Garcia @ 2019-03-18 10:19 UTC (permalink / raw)
  To: Mail List - Netfilter, Netfilter Development Mailing list

Hi!

I'm honored to present

    nftlb 0.4

nftlb stands for nftables load balancer, a user space tool
that builds a complete load balancer and traffic distributor
using the nft infrastructure.

nftlb is a nftables rules manager that creates virtual services
for load balancing at layer 2, layer 3 and layer 4, minimizing
the number of rules and using structures to match efficiently the
packets. It comes with an easy JSON API service to control,
to monitor and to automate the configuration.

Most important changes in this version are:
* Security Policies per virtual service including:
 - White and blacklisting
 - Queuing packets to user space
 - TCP flow validation
 - Maximum of established connections
 - TCP resets per second allowed
 - Limit of new connections per service
* Configurable hashing parameters based on source/destination ip
address, source/destination port, source/destination MAC address, or
combinations of them.
* Configurable persistence for client-backend affinity with a timeout
based on source/destination ip address, source/destination port,
source/destination MAC address, or combinations of them.

For further details, please refer to the official repository:

https://github.com/zevenet/nftlb

You can download this tool from:

https://github.com/zevenet/nftlb/releases/tag/v0.4

Happy load balancing!

--
Detailed changelog:

New features
- farms: add persistence between client and backend during a timeout
- policies: support of security policies per virtual service
- farms: support of queuing packets to user space per service
- farms: support of tcp flow validation per service
- farms: support of max established connections per virtual service
per source address
- farms: support of tcp resets per second allowed per virtual service
per source address
- farms: support of new connections limit per second per virtual
service and optional burst
- farms: add configurable hashing parameters
- src: support of delete all farms at once

Improvements
- nft: refactor farm rules generation code
- server: add long body support
- config: parsing json values hardening
- nft: fix helpers rules according to protocol
- readme: update the new parameter tcp-strict to avoid bogus tcp attacks
- farms: enable mac discovery for stateless dnat
- main: hide the key parameter when the process is running for security reasons
- nft: separate services by interface name for ingress modes
- farms: force the network data reload when changing the virtual ip
- farm: set masquerade if source addr is empty
- nft: add prerouting filter chain for marking and helpers
- buffer: remove debug messages
- farm: set default scheduler parameter for hash algorithm only
- config: use string keys as much as possible
- readme: add stateless nat mode option
- tests: allow launch of one single test without service
- buffer: fix code identation
- backends: only actionable if the backend is available
- backends: declare actionable functions
- buffer: support of scalable buffer
- backends: enable restart of backends after configuration
- nft: apply reset action per farm and backends
- nft: generalize actions for add or deletion postrouting elements
- farms: rename farm source-addr attribute instead of src-addr
- config: print marks in hex format
- tests: support to launch tests through web api
- build: move -lev to LDADD
- build: move preprocessor flags to CPPFLAGS

Bugfixes
- config: return error when an object has not been selected
- backends: avoid go to config_error after setting dnat ip addresses
- nft: fix stateless dnat rules when the input and output interfaces
are different
- nft: fix service name for stateless nat
- backend: fix backend validation during automated mac address request
- network: protect double free in handle
- server: fix double free segfault
- backends: fix backend validation when applying dsr mode
- farms: strim virtual interfaces for ingress chains
- nft: fix add element filter rules in reload
- nft: fix stateless dnat rules actions
- nft: avoid the use of filter chain and backend marks for ingress
- nft: avoid empty rules in filter chain when there is no backends
- backends: apply reload if changing the state of a backend
- nft: fix skb mark insertion from ct mark in filter chain
- nft: fix flush and delete chain filter
- nft: fix delete filter service and chain
- nft: fix delete elements from filter chain
- nft: avoid rules generation if there is no backend available
- backends: fix backend availability for ingress modes
- logs: fix set log level at startup
- objects: avoid buffer copy overlap
- buffer: fix typo in error message
- backends: fix backend going down
- Remove config.h file from .gitignore
- src: fix string copy sizes
- src: add a cleanup parsing structures to avoid null objects references
- config: fix farm mark json dump
- server: fix parse input body that produces buffer parsing error

^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2019-03-18 10:20 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-03-18 10:19 [ANNOUNCE] nftlb 0.4 release Laura Garcia

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).