You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
GRE dissector for IPGRE/IP6GRE on LINUX_SLL/SLL2 #2501
Part of #2460. LinuxSLL/LinuxSLL2 fall back to Raw for the IPGRE
(778) and IP6GRE (823) arphrd_type values, whose protocol_type field
isn't an EtherType (see _ARPHRD_NOT_ETHERTYPE in pcapkit/protocols/link/linux_sll.py). The header is preserved, nothing
crashes, but nothing is dissected either.
Scope
GRE over IPv4 and GRE over IPv6 respectively -- no GRE dissector exists yet
in this codebase at all (confirmed: no pcapkit/protocols/*/gre.py). The
GRE header itself (RFC 2784, with the optional checksum/key/sequence fields
of RFC 2890) is identical regardless of which IP version carries it; what
differs between IPGRE and IP6GRE is only which outer IP version the
Linux kernel's GRE tunnel interface reports via arphrd_type, not the GRE
framing itself.
So this is naturally one dissector, two arphrd_type bindings:
a GRE class under pcapkit/protocols/link/ (or wherever the
layer-placement convention lands it once drafted) implementing RFC
2784/2890's header: flags, version, protocol type (an EtherType, selecting
the tunnelled payload), and the optional checksum/offset, key and sequence
number fields gated by the flag bits
Activity
JarryShaw commentedon Nov 1, 2026
Covered by #2508, merged as
574186ef9:GREnow dissectsARPHRD_IPGRE/ARPHRD_IP6GREon LinuxSLL/SLL2. Closing. The registry-map follow-up is #2510.