Netgate Discussion Forum
    • Categories
    • Recent
    • Tags
    • Popular
    • Users
    • Search
    • Register
    • Login

    pfsense and IPv6 default behavior

    IPv6
    5
    32
    4.3k
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • lohphatL
      lohphat @johnpoz
      last edited by

      @johnpoz Multicast group membership management is key for IPv6 functionality.

      https://en.wikipedia.org/wiki/IPv6_address#Multicast_addresses

      For these key IPv6 group addresses to work, multicast but be working. It is not optional.

      SG-3100 24.11-RELEASE (arm) | Avahi (2.2_6) | ntopng (5.6.0_1) | openvpn-client-export (1.9.5) | pfBlockerNG-devel (3.2.1_20) | System_Patches (2.2.20_1)

      1 Reply Last reply Reply Quote 0
      • johnpozJ
        johnpoz LAYER 8 Global Moderator
        last edited by johnpoz

        @lohphat said in pfsense and IPv6 default behavior:

        If it's blocking that, is it also interfering in other multicast group operations too?

        Again like what?? Not sure where you got the idea that link-local to broadcast is required for anything? Are you thinking of maybe icmpv6 that is required for say router solicitation, etc?

        edit:
        You might want do a bit more research ;)

        Pfsense is the gateway off that L3.. it has nothing to do with devices on that L2 talking whatever they want to talk to each other with... They can send traffic all day to [ff02::fb]:5353, pfsense is just not needed in that conversation and why should it allow the traffic to something its not listening on, etc.

        if you happen to add dhcpv6 enabled - just like when you enable dhcp - hidden rules are enabled that are not shown in the gui that allow the requirements... Look at the full ruleset if you want, etc.
        https://docs.netgate.com/pfsense/en/latest/firewall/viewing-the-full-pf-ruleset.html

        edit: also not sure what info you think you found about this

        One of the big benefits of IPv6 is large multicast media streaming e.g. YouTube live events

        Think you misread something somewhere ;)

        An intelligent man is sometimes forced to be drunk to spend time with his fools
        If you get confused: Listen to the Music Play
        Please don't Chat/PM me for help, unless mod related
        SG-4860 24.11 | Lab VMs 2.7.2, 24.11

        1 Reply Last reply Reply Quote 2
        • JKnottJ
          JKnott @lohphat
          last edited by

          @lohphat said in pfsense and IPv6 default behavior:

          @johnpoz That's my point. Why is link local LAN traffic blocked at all? What if mDNS behavior is desired?

          Given that link local addresses are not routeable, they will never pass through pfSense, so any rules for them will be useless. Link local addresses are useful only on the local network and may be used for things like router advertisements, etc.

          PfSense running on Qotom mini PC
          i5 CPU, 4 GB memory, 32 GB SSD & 4 Intel Gb Ethernet ports.
          UniFi AC-Lite access point

          I haven't lost my mind. It's around here...somewhere...

          lohphatL 1 Reply Last reply Reply Quote 0
          • JKnottJ
            JKnott @lohphat
            last edited by

            @lohphat said in pfsense and IPv6 default behavior:

            @johnpoz Isn't avahi/zeroconf/bonjour a form of mDNS for auto-enumeration of local hostnames?

            Not wanting to get into the weeds, this is my point of my original issue: IPv6 default behavior is not well documented. multicast/broadcast needs to work for IPv6 and when you see blocked link local traffic to broadcast destinations raises questions. If it's blocking that, is it also interfering in other multicast group operations too?

            First off, there's no such thing as broadcasts in IPv6, only multicasts. The closest thing to broadcasts in IPv6 is all hosts multicast. Then, with multicasts, there's the issue of scope, that is how far the multicast is supposed to travel. That could be as limited as an interface, the local network is commonly used and somewhere beyond a router. I mentioned router advertisements (RAs) in another note. If you watch a network with Packet Capture, you will see RAs from the router, from the router link local address to the all hosts multicast address etc. So, you'll have to consider what the multicast will be used for, it's scope, routeable vs link local addresses, etc.

            PfSense running on Qotom mini PC
            i5 CPU, 4 GB memory, 32 GB SSD & 4 Intel Gb Ethernet ports.
            UniFi AC-Lite access point

            I haven't lost my mind. It's around here...somewhere...

            1 Reply Last reply Reply Quote 0
            • JKnottJ
              JKnott @johnpoz
              last edited by

              @johnpoz said in pfsense and IPv6 default behavior:

              If you want to learn about IPv6 there are many a resource for that...

              I recommend IPv6 Essentials.

              Broadcast/multicast traffic isn't going anywhere - why should it be allowed.

              No such thing as broadcast on IPv6. Multicast might be passed by a router, depending on scope.

              PfSense running on Qotom mini PC
              i5 CPU, 4 GB memory, 32 GB SSD & 4 Intel Gb Ethernet ports.
              UniFi AC-Lite access point

              I haven't lost my mind. It's around here...somewhere...

              lohphatL 1 Reply Last reply Reply Quote 0
              • lohphatL
                lohphat @JKnott
                last edited by

                @JKnott I understand that. My question is why are Layer 2 packets used for IPv6 housekeeping making it into the logs in the first place? Either they're all handed properly as part of the protocol spec or they're blocked and not processed. Thus the confusion caused by layer 2 housekeeping showing up. If it's not going to be processed by the definition of link local, then why log it?

                SG-3100 24.11-RELEASE (arm) | Avahi (2.2_6) | ntopng (5.6.0_1) | openvpn-client-export (1.9.5) | pfBlockerNG-devel (3.2.1_20) | System_Patches (2.2.20_1)

                JKnottJ 1 Reply Last reply Reply Quote 0
                • lohphatL
                  lohphat @JKnott
                  last edited by

                  @JKnott I apologize for using "broadcast" I was referring to the all hosts multicast address. Old habits die hard. ;-)

                  SG-3100 24.11-RELEASE (arm) | Avahi (2.2_6) | ntopng (5.6.0_1) | openvpn-client-export (1.9.5) | pfBlockerNG-devel (3.2.1_20) | System_Patches (2.2.20_1)

                  1 Reply Last reply Reply Quote 0
                  • JKnottJ
                    JKnott @lohphat
                    last edited by

                    @lohphat said in pfsense and IPv6 default behavior:

                    My question is why are Layer 2 packets used for IPv6 housekeeping making it into the logs in the first place?

                    Layer 2 is Ethernet. I thought we were talking about IPv6, which is L3. Even link local addresses are L3. Perhaps this is where some of your confusion is coming from.

                    PfSense running on Qotom mini PC
                    i5 CPU, 4 GB memory, 32 GB SSD & 4 Intel Gb Ethernet ports.
                    UniFi AC-Lite access point

                    I haven't lost my mind. It's around here...somewhere...

                    lohphatL 1 Reply Last reply Reply Quote 1
                    • lohphatL
                      lohphat @JKnott
                      last edited by

                      @JKnott Yes, probably. With IPv6 the reserved multicast address member management packets are link local too (IGMP, etc.) so why aren't those packets showing up in the firewall logs but the mDNS packets are?

                      SG-3100 24.11-RELEASE (arm) | Avahi (2.2_6) | ntopng (5.6.0_1) | openvpn-client-export (1.9.5) | pfBlockerNG-devel (3.2.1_20) | System_Patches (2.2.20_1)

                      1 Reply Last reply Reply Quote 0
                      • johnpozJ
                        johnpoz LAYER 8 Global Moderator
                        last edited by johnpoz

                        I knew you would call me out on the "broadcast" term ;) My bad yes - bad habit I do need to break, and yes you are correct the term is not correct in relation to ipv6.. But its the same sort of thing in use ;)

                        An intelligent man is sometimes forced to be drunk to spend time with his fools
                        If you get confused: Listen to the Music Play
                        Please don't Chat/PM me for help, unless mod related
                        SG-4860 24.11 | Lab VMs 2.7.2, 24.11

                        1 Reply Last reply Reply Quote 0
                        • IsaacFLI
                          IsaacFL @lohphat
                          last edited by

                          @lohphat

                          pfsense by default blocks everything that isn't explicitly passed.

                          The more correct way would be to have a rule that passes "any" to "multicast". I use ff00::/8 as multicast.

                          The reason is that you will see multicast coming from your local ipv6 addresses and link local addresses both.

                          You have to have a rule to pass multicast, if you are using Avahi for instance. The Avahi service inside pfsense will never see the mDNS traffic via ipv6 otherwise.

                          1 Reply Last reply Reply Quote 0
                          • IsaacFLI
                            IsaacFL @johnpoz
                            last edited by

                            @johnpoz said in pfsense and IPv6 default behavior:

                            @lohphat said in pfsense and IPv6 default behavior:

                            I've had to add an IPv6(any) fe80::/10(from) any(to) to the LAN firewall rules to handle basic multicast traffic which is required for basic IPv6 operation

                            Where did you get idea that you had to add that?

                            And that is link-local space, multicast space would be ff00::/8

                            If you don't have a rule to allow "any" to "multicast", then Avahi will not work on ipv6.

                            You can verify it with wireshark. If you have no rule to pass the multicast, you will see devices asking for devices via mDNS, but no response from the router on ipv6 so it falls back to ipv4. If you pass the multicast then you will see the router respond via ipv6.

                            With no ipv6 rule Avahi never receives the packet to process it. The reason Avahi seems to works is many people have a rule that passes "LAN net" to "any" which allows ipv4 multicast, but ipv6 link local is not part of "LAN net" so it gets blocked.

                            lohphatL 1 Reply Last reply Reply Quote 0
                            • johnpozJ
                              johnpoz LAYER 8 Global Moderator
                              last edited by

                              @IsaacFL said in pfsense and IPv6 default behavior:

                              if you are using Avahi for instance

                              Which is not default setup.. So yes if you are adding new services that pfsense to do - then yes you might have to adjust the rules..

                              An intelligent man is sometimes forced to be drunk to spend time with his fools
                              If you get confused: Listen to the Music Play
                              Please don't Chat/PM me for help, unless mod related
                              SG-4860 24.11 | Lab VMs 2.7.2, 24.11

                              1 Reply Last reply Reply Quote 0
                              • lohphatL
                                lohphat @IsaacFL
                                last edited by lohphat

                                @IsaacFL This is my original point about pfSense's base config not supporting multicast by default. IPv6 relies on multicast for basic operations (e.g. enumerating the all hosts group) -- why should anyone need to manually enable rules for IPv6 multicast?

                                SG-3100 24.11-RELEASE (arm) | Avahi (2.2_6) | ntopng (5.6.0_1) | openvpn-client-export (1.9.5) | pfBlockerNG-devel (3.2.1_20) | System_Patches (2.2.20_1)

                                1 Reply Last reply Reply Quote 0
                                • johnpozJ
                                  johnpoz LAYER 8 Global Moderator
                                  last edited by

                                  because pfsense doesn't do anything with ipv6 multicast out of the box..

                                  An intelligent man is sometimes forced to be drunk to spend time with his fools
                                  If you get confused: Listen to the Music Play
                                  Please don't Chat/PM me for help, unless mod related
                                  SG-4860 24.11 | Lab VMs 2.7.2, 24.11

                                  IsaacFLI 1 Reply Last reply Reply Quote 0
                                  • JeGrJ
                                    JeGr LAYER 8 Moderator
                                    last edited by

                                    And it doesn't have to - per default. We're running an IPv6 enabled dualstacked hosting setup for years now without needing that. Only time I had to actually pass in multicast traffic was for allowing downstream core switch to talk OSPF with the firewall via FRR, and that was necessary for IP4 & IP6. Besides that, nothing comes to mind, that absolutely needs multicast to pass a firewall with IPv6?

                                    Don't forget to upvote 👍 those who kindly offered their time and brainpower to help you!

                                    If you're interested, I'm available to discuss details of German-speaking paid support (for companies) if needed.

                                    lohphatL IsaacFLI 2 Replies Last reply Reply Quote 0
                                    • lohphatL
                                      lohphat @JeGr
                                      last edited by

                                      @JeGr One of the befits of IPv6 is that it finally fixes multicast to enable realtime media streaming from non-local sources to reduce bandwidth needs consumed by unicast.

                                      IPTV is one such solution where each channel is it's own multicast channel. http://www.klicktv.co.uk/iptv-multicasting

                                      SG-3100 24.11-RELEASE (arm) | Avahi (2.2_6) | ntopng (5.6.0_1) | openvpn-client-export (1.9.5) | pfBlockerNG-devel (3.2.1_20) | System_Patches (2.2.20_1)

                                      1 Reply Last reply Reply Quote 0
                                      • IsaacFLI
                                        IsaacFL @JeGr
                                        last edited by

                                        @JeGr said in pfsense and IPv6 default behavior:

                                        And it doesn't have to - per default. We're running an IPv6 enabled dualstacked hosting setup for years now without needing that. Only time I had to actually pass in multicast traffic was for allowing downstream core switch to talk OSPF with the firewall via FRR, and that was necessary for IP4 & IP6. Besides that, nothing comes to mind, that absolutely needs multicast to pass a firewall with IPv6?

                                        If you turn off ipv4 you will find that some some services may not function correctly without a rule passing multicast into the router. Your dual stack lets it fall back on ipv4.

                                        1 Reply Last reply Reply Quote 1
                                        • IsaacFLI
                                          IsaacFL @johnpoz
                                          last edited by

                                          @johnpoz said in pfsense and IPv6 default behavior:

                                          because pfsense doesn't do anything with ipv6 multicast out of the box..

                                          Not correct. The routing in ipv6 uses multicast and there are some built in rules to pass them in. There are also some that have been missed and are getting blocked that shouldn’t be

                                          I know of at least one bug that I submitted that is being fixed in 2.5

                                          If you add a pass rule to multicast it fixes it in meantime.

                                          lohphatL 1 Reply Last reply Reply Quote 0
                                          • lohphatL
                                            lohphat @IsaacFL
                                            last edited by

                                            @IsaacFL This is my point, thanks. There are basic IPv6 functionality which is partially taken care of by default hidden rules and others which need manual intervention. This needs to be cleaned up and or clarified. WAN and LAN segments need to handle link local traffic properly (as an example) for both routing (OSPF broadcasts), ICMP, IGMP, etc. so that basic IPv6 functionality isn't broken due to incomplete/inconsistent/poorly documented defaults.

                                            In another pointless rant of mine =), all pfSense settings should have the default setting called out in the setting description. Currently it's very inconsistent.

                                            SG-3100 24.11-RELEASE (arm) | Avahi (2.2_6) | ntopng (5.6.0_1) | openvpn-client-export (1.9.5) | pfBlockerNG-devel (3.2.1_20) | System_Patches (2.2.20_1)

                                            IsaacFLI 1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post
                                            Copyright 2025 Rubicon Communications LLC (Netgate). All rights reserved.