Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 13 Aug 2024 09:28:18 +0000
From:      bugzilla-noreply@freebsd.org
To:        bugs@FreeBSD.org
Subject:   [Bug 269770] libalias udp redirect_port temporary translation failure
Message-ID:  <bug-269770-227-uxzR8bv4zJ@https.bugs.freebsd.org/bugzilla/>
In-Reply-To: <bug-269770-227@https.bugs.freebsd.org/bugzilla/>

index | next in thread | previous in thread | raw e-mail

https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=269770

Peter Much <pmc@citylink.dinoex.sub.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |donner@FreeBSD.org

--- Comment #6 from Peter Much <pmc@citylink.dinoex.sub.org> ---
Hunting it down - the problem is a race condition: libalias has an internal
representation of a flow (called a "temporary link"). 
These can expire and get deleted - the logic when and how this happens is
unintellegible, but there is a time gap between expiry and deletion.

When another packet arrives from outside during this time gap - which is
unlikely in TCP, but likely with UDP (like syslog sending another message after
some pause, or VPN restarting after reboot) - libalias finds the old "temporary
link", detects that it is already expired, and deletes it - but does then not
anymore check for a configured portforward for this flow.
So the newly installed "temporary link" is without portforwarding, and will
continue to exist until perchance traffic ceases and it might get expired.

-- 
You are receiving this mail because:
You are the assignee for the bug.

home | help

Want to link to this message? Use this
URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?bug-269770-227-uxzR8bv4zJ>