OpenBSD Journal

pfctl(8) and systat(8) to display fragment reassembly statistics

Contributed by Peter N. M. Hansteen on from the assembling, not dissembling my fragments dept.

The OpenBSD toolbox for network debugging just got better. In a recent thread on tech@ titled pfctl show fragment info, Alexander Bluhm (bluhm@) posted a patch to enable packet reassembly statistics in pfctl(8).

Several other developers joined in, and Claudio Jeker (claudio@) suggested that systat(8) should too be enhanced to display packet reassembly data in pf(4) related views.

This suggestion was well received, and the resulting code has now been committed,

List:       openbsd-cvs
Subject:    CVS: cvs.openbsd.org: src
From:       Alexander Bluhm &.t;bluhm () openbsd ! org>
Date:       2024-04-22 13:30:22

CVSROOT:	/cvs
Module name:	src
Changes by:	bluhm@cvs.openbsd.org	2024/04/22 07:30:22

Modified files:
	sys/net        : pf_ioctl.c pf_norm.c pfvar.h pfvar_priv.h 
	sbin/pfctl     : pfctl_parser.c 
	usr.bin/systat : pf.c 

Log message:
Show pf fragment reassembly counters.

Framgent count and statistics are stored in struct pf_status.  From
there pfctl(8) and systat(1) collect and show them.  Note that pfctl
-s info needs the -v switch to show fragments.  As fragment reassembly
has its own mutex, also grab this in pf ipctl(2) and sysctl(2) code.

input claudio@; OK henning@

and will be available in -current snapshots.

If you know you occasionally or even frequently need to see fragment reassembly statistics, you will appreciate this improvement to the two crucial tools pfctl(8) and systat(8).


Credits

Copyright © - Daniel Hartmeier. All rights reserved. Articles and comments are copyright their respective authors, submission implies license to publish on this web site. Contents of the archive prior to as well as images and HTML templates were copied from the fabulous original deadly.org with Jose's and Jim's kind permission. This journal runs as CGI with httpd(8) on OpenBSD, the source code is BSD licensed. undeadly \Un*dead"ly\, a. Not subject to death; immortal. [Obs.]