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

    if_pppoe problems with php-fpm causing loops. (resolved)

    Scheduled Pinned Locked Moved General pfSense Questions
    41 Posts 3 Posters 1.1k Views
    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.
    • stephenw10S
      stephenw10 Netgate Administrator
      last edited by

      Nice debugging. Now why would that be required for your connection.... 🤔

      Can you show the new patch you've ended up using?

      C 1 Reply Last reply Reply Quote 0
      • C
        chrcoluk @stephenw10
        last edited by

        @stephenw10 Yeah sure.

        --- /etc/inc/interfaces.inc     2025-05-20 15:25:19.000000000 +0100
        +++ /etc/inc/interfaces.inc        2025-07-07 19:48:09.639482000 +0100
        @@ -4024,6 +4024,7 @@
                 * lock deleted.
                 */
         
        +        mwexec("/bin/sleep 3");
                if (!file_exists("/tmp/dhcp6c_lock")) {
                        kill_dhcp6client_process(true);
                        /* Lock it to avoid multiple runs */
        

        Also

        # ps ax | grep dhcp6
        88258  -  Is      0:00.01 /usr/local/sbin/dhcp6c -d -c /var/etc/dhcp6c.conf -p /var/run/dhcp6c.pid pppoe2
        99730  1  S+      0:00.00 grep --color dhcp6
        
        # cat /var/run/dhcp6c.pid 
        88258
        

        pfSense CE 2.8.0

        1 Reply Last reply Reply Quote 1
        • C
          chrcoluk
          last edited by

          ISP is doing LNS maintenance over the upcoming week, so will see how that reconnection goes.

          Also I patched mss clamping in the scrub code to make it 52 bytes instead of 40 for timestamps overhead, and wow things have never performed so good, so that combined with this driver is working really well for me now.

          pfSense CE 2.8.0

          1 Reply Last reply Reply Quote 1
          • stephenw10S
            stephenw10 Netgate Administrator
            last edited by

            Hmm did I miss something about timestamps? What did you discover that required that?

            C 1 Reply Last reply Reply Quote 1
            • w0wW
              w0w
              last edited by

              So, are we talking about RFC 1323 and a modification to /etc/inc/filter.inc?

              1 Reply Last reply Reply Quote 0
              • C
                chrcoluk @stephenw10
                last edited by chrcoluk

                I noticed pfSense code if mss clamp is enabled just does the basic 40 bytes (IPv4) 60 bytes (IPv6) so e.g. a 1460 bytes MSS clamp on IPv4 with a 1500 byte MTU, I think it should be 1448 in such a scenario, so I changed the 40 bytes to 52, currently I have only patched the IPv4 code. Timestamps now days is on by default in operating systems and important on high bandwidth.

                I did notice youtube videos had a stall before playing, as soon as I made this adjustment that has been fixed, and there is a wider improvement I am noticing as well.

                It is a very basic patch as well. Modifying the firewall generation script, scrub rules.

                w0w yes to both.

                                /* set up MSS clamping */
                                if ($mss) {
                                        /* different size of IPv4/IPv6 header, https://redmine.pfsense.org/issues/11409 */
                -                        $mssclamp4 = "max-mss " . ($mss - 40);
                +                        $mssclamp4 = "max-mss " . ($mss - 52);
                

                mssclamp6 is right under that as well.

                pfSense CE 2.8.0

                w0wW 1 Reply Last reply Reply Quote 0
                • w0wW
                  w0w @chrcoluk
                  last edited by

                  @chrcoluk said in if_pppoe problems with php-fpm causing loops. (resolved):

                  I have only patched the IPv4 code

                  Why not both stacks?

                  C 1 Reply Last reply Reply Quote 0
                  • C
                    chrcoluk @w0w
                    last edited by chrcoluk

                    @w0w I will do both stacks, it was something I did very quickly and I want to check if its still 12 bytes for ipv6 as well.

                    Patched it now. So on my 1500 bytes MTU, 1448 MSS for IPV4, 1428 MSS for IPv6.

                    pfSense CE 2.8.0

                    w0wW 1 Reply Last reply Reply Quote 1
                    • w0wW
                      w0w @chrcoluk
                      last edited by

                      @chrcoluk
                      I did the same and even captured WAN packets to confirm. Looks like it's working — we'll see. By the way, I'm using gigabit PPPoE.

                      1 Reply Last reply Reply Quote 1
                      • stephenw10S
                        stephenw10 Netgate Administrator
                        last edited by

                        Hmm, interesting. I can't say I've noticed that. But also I wasn't looking for it specifically. 🤔

                        1 Reply Last reply Reply Quote 0
                        • stephenw10S stephenw10 referenced this topic
                        • First post
                          Last post
                        Copyright 2025 Rubicon Communications LLC (Netgate). All rights reserved.