Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 07 Sep 2023 16:10:43 +0000
From:      bugzilla-noreply@freebsd.org
To:        bugs@FreeBSD.org
Subject:   [Bug 273618] [pf] Port redirects for packets received on loopback have bad checksums
Message-ID:  <bug-273618-227@https.bugs.freebsd.org/bugzilla/>

next in thread | raw e-mail | index | archive | help
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=3D273618

            Bug ID: 273618
           Summary: [pf] Port redirects for packets received on loopback
                    have bad checksums
           Product: Base System
           Version: 13.2-STABLE
          Hardware: Any
                OS: Any
            Status: New
          Severity: Affects Only Me
          Priority: ---
         Component: kern
          Assignee: bugs@FreeBSD.org
          Reporter: dfr@rabson.org

Normally packets received on loopback bypass the tcp checksum calculation s=
ince
the packet is expected to not leave the host. The packet header is marked as
having a good checksum in looutput() even though the th_csum field (for tcp
packets) just contains the pseudo header partial sum.

If the packet's destination address is re-written to an address which route=
s it
to some other host, the packet will be delivered with a bad checksum and
discarded by the target's tcp stack. I can work around this with 'ifconfig =
lo0
-txcsum' but it would be better if there was a way for pf to detect this
situation and repair the checksum.

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



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