Upgrades into RC1 via 26.1.11 opnsense-devel

Started by franco, July 08, 2026, 03:56:01 PM

Previous topic - Next topic
Labels are off due to a kernel error but we found the problem already, see https://github.com/opnsense/src/issues/295


Quote from: franco on July 12, 2026, 12:51:27 PMLabels are off due to a kernel error but we found the problem already, see https://github.com/opnsense/src/issues/295
Hi Franco,
Sorry for this follow-up. I assume that this issue has deen fixed and implemented in the new 26.7 kernel but unfortunate, I'm still seeing FW-Logs without Label after every reboot. I've upgraded my appliance from RC2 to 26.7 this morning.

Thanks and regards,
Wrigleys

Do these rules have descriptions? If they don't have descriptions there will be no label correlation.

July 15, 2026, 01:00:15 PM #19 Last Edit: July 15, 2026, 01:41:24 PM by Wrigleys
In my case all rules have descriptions. For automatic generated rules and for my manually added rules. I think that those label-less rules are proceeded in the background. Could it be from kernel-/pf-internal filter rules?

Response from ChatGPT:
If the entries:
  • only occur during boot,
  • appear only once or twice per restart,
  • have the destination ff02::16,
  • and never reappear until the next reboot,

then they are most likely related to the initialization of the IPv6 networking stack. During startup, FreeBSD/OPNsense registers multicast group memberships on active interfaces using MLDv2 (Multicast Listener Discovery v2). The IPv6 multicast address ff02::16 is specifically reserved for all MLDv2-capable routers.

The fact that the source address is shown as :: (the IPv6 unspecified address) also fits the startup phase of an interface, before a normal IPv6 address has been fully configured. IPv6 control protocols can legitimately use special addresses during initialization.

The upgrade to OPNsense 26.7 (which is based on FreeBSD 15.1) likely changed how these packets are logged or made them visible in the firewall log. The underlying behavior itself is probably not new.

Conclusion
Based on the symptoms you described, these log entries look like normal IPv6/MLDv2 startup traffic generated during interface initialization. The upgrade likely made the packets visible in the logs, but there is no indication of an actual networking or security problem.

Quote from: Wrigleys on July 12, 2026, 09:43:35 AMI've upgraded my system to OPNsense 26.7.r2_3-amd64 and noticed the following Blocked Firewall Logs without any Label after every reboot:

WG Out 2026-07-12T09:25:39 IP :: ff02:16 block
WG Out 2026-07-12T09:25:38 IP :: ff02::16 block
WAN Out 2026-07-12T09:25:29 IP :: ff02::16 block
WAN Out 2026-07-12T09:25:28 IP :: ff02::16 block

I can confirm this. With current 26.7 I can see this messages for all interfaces at startup.  Later on I can see allow messages from WAN from fe80::22 (connect with ONT Modem and DHCPv6). All my rules have labels and rules are made in this way that I can see only blocks, everything else is not logged. It has worked until latest 26.1 version, know I see this.

I'm still seeing those Label-less blocked filter rules even after installing 26.7 from scratch.

For testing purposes, I've enabled all logs under Firewall - Advanced but those few Label-less blocked filter rules are still there after a reboot.

It looks like a backend kernel-/pf-internal filter rules, which we unfortunately can't handle.

Can you grab the relevant entries from the firewall plain log?

July 16, 2026, 09:09:01 AM #23 Last Edit: July 16, 2026, 09:41:48 AM by Wrigleys
Sure, here you go:

2026-07-15T21:54:03    Informational    filterlog    ,,,0,wg0,ip-option,block,out,6,0x00,0x00000,1,ip,0,76,::,ff02::16,INVALIDOPT
2026-07-15T21:54:00    Informational    filterlog    ,,,0,wg0,ip-option,block,out,6,0x00,0x00000,1,ip,0,76,::,ff02::16,INVALIDOPT
2026-07-15T21:53:53    Informational    filterlog    ,,,0,igb1,ip-option,block,out,6,0x00,0x00000,1,ip,0,36,::,ff02::16,INVALIDOPT
␀␀␀
Thanks for your help!

Output from ChatGPT:
The sequence fits well with the following startup behavior:

  • OPNsense boots up.
  • IPv6 is initialized on the interfaces (igb1, wg0).
  • The kernel or network services generate initial IPv6 multicast/MLD packets.
  • At that moment, the interface may not yet have a fully configured IPv6 address, which is why the source address appears as ::.
  • PF (the packet filter) classifies the packet as INVALIDOPT and drops it.
  • A few seconds later, interface initialization is complete and IPv6 operates normally.

The fact that the packets are sent to ff02::16 (the MLDv2 multicast address) and appear only during startup strongly suggests an IPv6 initialization/timing issue rather than a configuration error.

Mine look like this (mac address shorted)

2026-07-16T09:34:52 Informational filterlog,,,0,vtnet1,normalize,pass,out,6,0xc0,0x00000,254,ipv6-icmp,58,32,fe80::22,fe80::short,datalength=32
2026-07-16T09:32:41 Informational filterlog,,,0,vtnet1,normalize,pass,out,6,0xc0,0x00000,254,ipv6-icmp,58,32,fe80::22,fe80::short,datalength=32
2026-07-16T09:20:31 Informational filterlog,,,0,vtnet2,ip-option,block,in,6,0x00,0x00000,1,ip,0,36,::,ff02::16,INVALIDOPT

Yes so according to https://github.com/opnsense/ports/blob/master/opnsense/filterlog/files/description.txt

rulenr = empty
subrulenr = empty
anchorname = empty
label = 0

Which basically means this isn't a rule coming from our generated rules or pf doesn't know where this log entry comes from at all.



Cheers,
Franco

July 16, 2026, 10:08:18 AM #26 Last Edit: July 16, 2026, 10:12:32 AM by Ampfinger
I have looked into "Firewall -> Settings -> Advanced"

There are two new options which seems new to me (they're also in English and not translated into German as this my language as default).

Disable RFC4890 requirement rules
Disable port 0 block

Both options are not set in my case, so rules are created. All default logging options are disabled.

So maybe in this two settings the log options are not respected? (just a wild guess)

Quote from: franco on July 16, 2026, 09:58:44 AMYes so according to https://github.com/opnsense/ports/blob/master/opnsense/filterlog/files/description.txt

rulenr = empty
subrulenr = empty
anchorname = empty
label = 0

Which basically means this isn't a rule coming from our generated rules or pf doesn't know where this log entry comes from at all.



Cheers,
Franco

Thanks franco for this clarification. Makes sense to me. Therefore we have to wait and see if upstream FreeBSD will fix it in upcoming patches/releases.

@Ampfinger: as far as I understood, as long as the Packetfilter System returning Logs starting with 0, there are no options to configure inside OPNsense to prevent those logs from listing/spamming.