From: Felix Huettner <felix.huettner@mail.schwarz>
To: Pablo Neira Ayuso <pablo@netfilter.org>
Cc: linux-kernel@vger.kernel.org, netfilter-devel@vger.kernel.org,
coreteam@netfilter.org, netdev@vger.kernel.org,
linux-kselftest@vger.kernel.org, kadlec@netfilter.org,
fw@strlen.de, davem@davemloft.net, edumazet@google.com,
pabeni@redhat.com, shuah@kernel.org, luca.czesla@mail.schwarz,
max.lamprecht@mail.schwarz
Subject: Re: [PATCH net-next v2] net: ctnetlink: support filtering by zone
Date: Fri, 1 Dec 2023 11:30:41 +0000 [thread overview]
Message-ID: <ZWnD4SqjhHXmtXlR@kernel-bug-kernel-bug> (raw)
In-Reply-To: <ZWSNrlHYdp+URAy6@calendula>
Hi,
On Mon, Nov 27, 2023 at 01:38:06PM +0100, Pablo Neira Ayuso wrote:
> Hi,
>
> On Mon, Nov 27, 2023 at 11:49:16AM +0000, Felix Huettner wrote:
> > conntrack zones are heavily used by tools like openvswitch to run
> > multiple virtual "routers" on a single machine. In this context each
> > conntrack zone matches to a single router, thereby preventing
> > overlapping IPs from becoming issues.
> > In these systems it is common to operate on all conntrack entries of a
> > given zone, e.g. to delete them when a router is deleted. Previously this
> > required these tools to dump the full conntrack table and filter out the
> > relevant entries in userspace potentially causing performance issues.
> >
> > To do this we reuse the existing CTA_ZONE attribute. This was previous
> > parsed but not used during dump and flush requests. Now if CTA_ZONE is
> > set we filter these operations based on the provided zone.
> > However this means that users that previously passed CTA_ZONE will
> > experience a difference in functionality.
> >
> > Alternatively CTA_FILTER could have been used for the same
> > functionality. However it is not yet supported during flush requests and
> > is only available when using AF_INET or AF_INET6.
>
> You mean, AF_UNSPEC cannot be specified in CTA_FILTER?
Currently ctnetlink_parse_tuple_filter returns EOPNOTSUPP if e.g.
AF_UNSPEC would be passed. This could probably be changed to only
require this for the CTA_IP_SRC and CTA_IP_DST filter flags. However i
am unsure about assumptions in other pieces of code that these fields
exist.
Also CTA_FILTER seems to be currently not supported when deleting
conntrack entries.
>
> Please, extend libnetfilter_conntrack to support for this feature,
> there is a filter API that can be used for this purpose.
I will do that and post it here (or in the next version) once i am done.
>
> Thanks.
Thanks for the fast feedback
next prev parent reply other threads:[~2023-12-01 11:30 UTC|newest]
Thread overview: 9+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-11-27 11:49 [PATCH net-next v2] net: ctnetlink: support filtering by zone Felix Huettner
2023-11-27 12:38 ` Pablo Neira Ayuso
2023-12-01 11:30 ` Felix Huettner [this message]
2023-12-05 9:39 ` Felix Huettner
2023-12-22 12:01 ` Pablo Neira Ayuso
2024-02-02 11:04 ` Ilya Maximets
2024-02-02 11:12 ` Pablo Neira Ayuso
2024-02-02 12:22 ` Felix Huettner
2024-02-05 10:04 ` Felix Huettner
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=ZWnD4SqjhHXmtXlR@kernel-bug-kernel-bug \
--to=felix.huettner@mail.schwarz \
--cc=coreteam@netfilter.org \
--cc=davem@davemloft.net \
--cc=edumazet@google.com \
--cc=fw@strlen.de \
--cc=kadlec@netfilter.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-kselftest@vger.kernel.org \
--cc=luca.czesla@mail.schwarz \
--cc=max.lamprecht@mail.schwarz \
--cc=netdev@vger.kernel.org \
--cc=netfilter-devel@vger.kernel.org \
--cc=pabeni@redhat.com \
--cc=pablo@netfilter.org \
--cc=shuah@kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.