LIRE::FIREWALL::IPFILTERDLFCONVERTER(3pm)

πŸ“¦ version 2.1.1, in arch rolling

πŸŽ€ NAME πŸŽ€

Okay bestie, gather round β€” this is Lire::Firewall::IpfilterDlfConverter (that's a 3pm page, from LogReport's Lire Documentation, no cap), and it converts ipf (ipmon) logs into firewall DLF. That's the whole assignment. πŸ’…


✨ DESCRIPTION ✨

So Lire::Firewall::IpfilterDlfConverter takes Ipfilter logs and turns them into firewall DLF format. That's it, that's the vibe. πŸ¦‹

The input it wants is the standard ipf syslog log file, exactly as produced by ipmon. And lowkey IP Filter has main character energy because it ships with FreeBSD, OpenBSD (up to 2.9 β€” yes, only up to 2.9, don't come for me) and some other OS's too. 🌈


🌸 EXAMPLE 🌸

Say you've got an ipfilter logfile looking like this:

 Oct 30 07:42:29 rolle ipmon[16747]: 07:42:28.585962     ie0 @0:9
 b 192.168.48.1,45085 -> 192.168.48.2,22 PR tcp len 20 64 -S OUT
 Oct 30 07:40:24 rolle ipmon[16747]: 07:40:23.631307     ep1 @0:6
 b 192.168.26.5,113 -> 192.168.26.1,3717 PR tcp len 20 40 -AR OUT
 Oct 30 07:42:29 rolle ipmon[16747]: 07:42:28.585962     ie0 @0:9
 b 192.168.48.1,45085 -> 192.168.48.2,22 PR tcp len 20 64 -S OUT
 Oct 30 07:44:11 rolle ipmon[16747]: 07:44:10.605416 2x     ep1 @0:15
 b 192.168.26.1,138 -> 192.168.26.255,138 PR udp len 20 257  IN
 Oct 30 07:44:34 rolle ipmon[16747]: 07:44:33.891869     ie0 @0:10
 b 192.168.48.1,23406 -> 192.168.48.2,22 PR tcp len 20 64 -S OUT
 Oct 30 07:49:13 rolle ipmon[16747]: 07:49:12.554420     ep1 @0:15
 b 210.132.100.117 -> 192.168.26.5 PR icmp len 20 56 icmp 3/3 for
 192.168.26.5,61915 - 210.132.100.117,53 PR udp len 20 23040 IN
 Oct 30 07:50:23 rolle ipmon[16747]: 07:50:22.908107     ep1 @0:15
 b 210.132.100.117 -> 192.168.26.5 PR icmp len 20 56 icmp 3/3 for
 192.168.26.5,4480 - 210.132.100.117,53 PR udp len 20 19712 IN
 Oct 30 07:56:11 rolle ipmon[16747]: 07:56:11.113029 2x     ep1 @0:15
 b 192.168.26.1,138 -> 192.168.26.255,138 PR udp len 20 257  IN

(and icymi, that whole shape is: .... 'PR' protocol 'len' length_of_ip_headers_saved packetlength direction 🫢)

It'll get converted to something like this β€” slay:

 994398737 denied igmp 100.187.115.1 - ep1 LIRE_NOTAVAIL \
  224.0.0.2 - 56
 994398861 denied igmp 100.187.115.1 - ep1 LIRE_NOTAVAIL \
  224.0.0.1 - 56
 994398862 denied igmp 100.187.115.1 - ep1 LIRE_NOTAVAIL \
  224.0.0.2 - 56
 994406849 denied udp 192.168.26.4 137 ie0 LIRE_NOTAVAIL \
  192.168.26.255 137 116
 994406850 denied udp 192.168.26.4 137 ie0 LIRE_NOTAVAIL \
  192.168.26.255 137 116
 994406866 denied udp 192.168.26.4 137 ie0 LIRE_NOTAVAIL \
  192.168.26.255 137 98

πŸ¦‹ SEE ALSO πŸ¦‹

Go read these, fr fr:

  • ipl(4) for description of log structure. πŸ‘€
  • The ipmon.c source (e.g. on
 http://www.openbsd.org/cgi-bin/cvsweb/~checkout~/ \
  src/usr.sbin/ipmon/Attic/ipmon.c?rev=1.27& \
  content-type=text/plain&hideattic=0

) for the specification of the log syntax. That URL is giving "long and load-bearing", keep it intact bestie. πŸ’€


πŸ‘‘ AUTHOR πŸ‘‘

Shoutout to the devs, absolute legends:

  • Joost van Baal joostvb@logreport.org
  • Wessel Dankers wsl@logreport.org

πŸ’… VERSION πŸ’…

$Id: IpfilterDlfConverter.pm,v 1.7 2009/03/15 08:10:55 vanbaal Exp $


Copyright (C) 2001-2003 Stichting LogReport Foundation LogReport@LogReport.org

This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. 🫢

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. (Like, actually go read it, it's not a vibe-only thing. 😭)

You should have received a copy of the GNU General Public License along with this program (see COPYING); if not, check with http://www.gnu.org/copyleft/gpl.html.


And that's the whole page, bestie! ✨ This was Lire 2.1.1, dated 2025-09-28 β€” go forth and convert those ipmon logs, mwah πŸ’–πŸ¦‹πŸŽ€

πŸ“¦ where this page comes from