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

    Pfsense needs to be restartet in case of pppoe 24h disconnect

    Scheduled Pinned Locked Moved 2.0-RC Snapshot Feedback and Problems - RETIRED
    38 Posts 11 Posters 16.4k 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.
    • M
      mino
      last edited by

      Hi,

      the problem is still present and i think its a major bug for pppoe users, who cannot use it for wan connections. In germany nearly all DSL Providers give only pppoe access. If i just hit the "save" Button under my WAN Interface it took along time until the webinterface reacts to it (it seems to be frozen, also if i try to access it while he is restarting the mpd services). I added now a cronjob to restart every 24 hours the pfSense Box but it its not a solution.

      Running:   2.0-ALPHA-ALPHA
      built on Mon Jan 26 03:00:33 EST 2009
      FreeBSD 7.1-RELEASE-p2
      IRC Nick: mino

      1 Reply Last reply Reply Quote 0
      • S
        sullrich
        last edited by

        When you enable this feature it is supposed to setup a cron entry.  Do you see the entry in /etc/crontab?

        1 Reply Last reply Reply Quote 0
        • M
          morbus
          last edited by

          I think it is the code underlying this that is broke not the cron job.

          The PPPoE disconnect button has never worked for me on 2.0 (and 1.3) on embeded (never tried it on full).
          When I click the disconnect button nothing happens and if I do get disconnected (I have no forced reset from my ISP) the button still says disconnect and when clicked has no effect. Just stays with disconnect as the text. The only way to get PPPoE to come up is to reboot.

          I think (but haven't looked too hard) that the disconnect code is looking at the interface (ie xl0) and not the PPPoE adaptor.

          1 Reply Last reply Reply Quote 0
          • M
            mino
            last edited by

            Yes there is a entry for the restart i think:

            0       4       *       *       *       root    /etc/pppoerestart
            

            i tried to start it by hand. I got an error:

            
            # /etc/pppoerestart
            
            Fatal error: Call to undefined function interfaces_wan_pppoe_restart() in /root/- on line 1
            
            

            so that might be why it will not disconnect to a given time. But i hope that he also reestablish the link to my dsl provider if he looses it at any time.

            Running:   2.0-ALPHA-ALPHA
            built on Mon Jan 26 03:00:33 EST 2009
            FreeBSD 7.1-RELEASE-p2
            IRC Nick: mino

            1 Reply Last reply Reply Quote 0
            • E
              eri--
              last edited by

              try latest snapshot and report.

              1 Reply Last reply Reply Quote 0
              • M
                mino
                last edited by

                Hi ermal,

                same error occurs if try to restart it by hand with the latest snapshot.

                Greetz,
                mino

                Running:   2.0-ALPHA-ALPHA
                built on Mon Jan 26 03:00:33 EST 2009
                FreeBSD 7.1-RELEASE-p2
                IRC Nick: mino

                1 Reply Last reply Reply Quote 0
                • E
                  eri--
                  last edited by

                  Yeah i am going to trace this cause it happened to me at my home installation on pppoe too.
                  I will come back with something later tomorrow.

                  Do you have anything in logs after mpd exits and it tries to restart it?!

                  1 Reply Last reply Reply Quote 0
                  • S
                    sullrich
                    last edited by

                    I believe this should be fixed now.  Please try next snapshot cycle.

                    If you want to test now, replace the pppoe_reconfigure function in /etc/pppoe_restart with interface_reconfigure();

                    1 Reply Last reply Reply Quote 0
                    • S
                      sullrich
                      last edited by

                      PS: you need to click save on the wan interfaces configuration page to regenerate the /etc/pppoe_restart file..

                      1 Reply Last reply Reply Quote 0
                      • E
                        eri--
                        last edited by

                        As sullrich said retry with latest snapshot.

                        1 Reply Last reply Reply Quote 0
                        • M
                          mino
                          last edited by

                          Okay, i installed the latest snapshot. I saved the WAN interface many times. But the /etc/pppoerestart file is still the same and so the error still occurs.

                          
                          #!/bin/sh
                          echo 'es_dyndns_reset(wan); ?>' | /usr/local/bin/php -q
                          
                          

                          Running:   2.0-ALPHA-ALPHA
                          built on Mon Jan 26 03:00:33 EST 2009
                          FreeBSD 7.1-RELEASE-p2
                          IRC Nick: mino

                          1 Reply Last reply Reply Quote 0
                          • E
                            eri--
                            last edited by

                            The new file should be on /var/etc/pppoefile actually.
                            It should have interface_reconfigure in it.

                            1 Reply Last reply Reply Quote 0
                            • M
                              mino
                              last edited by

                              Okay can be executed but it wont restart the wan session, it just reload the filter (seen in the logs)

                              
                              # cat /var/etc/pppoewanrestart
                              #!/bin/sh
                              /usr/bin/touch /tmp/filter_dirty
                              # 
                              
                              

                              Running:   2.0-ALPHA-ALPHA
                              built on Mon Jan 26 03:00:33 EST 2009
                              FreeBSD 7.1-RELEASE-p2
                              IRC Nick: mino

                              1 Reply Last reply Reply Quote 0
                              • S
                                sullrich
                                last edited by

                                Did you click save on the Interfaces -> WAN page?

                                The code is there…

                                define("CRON_PPPOE_CMD", "#!/bin/sh\necho '' | /usr/local/bin/php -q");

                                1 Reply Last reply Reply Quote 0
                                • E
                                  eri--
                                  last edited by

                                  You are on an older snapshot. Try a new one.

                                  1 Reply Last reply Reply Quote 0
                                  • M
                                    mino
                                    last edited by

                                    So I have now the latest snapshot:

                                    2.0-ALPHA-ALPHA
                                    built on Fri Nov 21 04:39:23 EST 2008
                                    FreeBSD 7.1-PRERELEASE

                                    Console:

                                    
                                    # cat /var/etc/pppoewanrestart
                                    #!/bin/sh
                                    /usr/bin/touch /tmp/filter_dirty
                                    #
                                    
                                    
                                    
                                    #cat /etc/crontab
                                    ...
                                    0	4	*	*	*	root	/etc/pppoerestart
                                    0	4	*	*	*	root	/var/etc/pppoewanrestart
                                    ...
                                    
                                    

                                    So you see still the same. And in my crontab are now two entries, i think the old entry and the new corrected one. I think i triggered the save routine now 3 times but same result.

                                    And i recognized that if i save the wan configuration and aplly them the whole system is interuppted. I take up to 30 seconds until my box reacts on request (http, ssh and so on) to the box itself. I think a routine for resetting the interface or restarting the mpd daemon shut not block the whole system.

                                    Running:   2.0-ALPHA-ALPHA
                                    built on Mon Jan 26 03:00:33 EST 2009
                                    FreeBSD 7.1-RELEASE-p2
                                    IRC Nick: mino

                                    1 Reply Last reply Reply Quote 0
                                    • S
                                      sullrich
                                      last edited by

                                      First edit /etc/crontab and remove both of those reset entries.

                                      Next update to the snapshot that will be ready about 2 hours from this post.  Next click save on interfaces, wan.

                                      Check the file in /conf/ (not /var/etc/).  /var/ is a ramdisk on embedded and that file will be wiped out on a reboot.

                                      1 Reply Last reply Reply Quote 0
                                      • M
                                        mino
                                        last edited by

                                        Okay i did what you said.

                                        My /etc/crontab now look like that:

                                        cat /etc/crontab

                                        SHELL=/bin/sh
                                        PATH=/etc:/bin:/sbin:/usr/bin:/usr/sbin
                                        HOME=/var/log
                                        #minute hour    mday    month   wday    who      command

                                        pfSense specific crontab entries

                                        Created: November 29, 2008, 9:49 am

                                        0 * * * * root /usr/bin/nice -n20 newsyslog
                                        1,31 0-5 * * * root /usr/bin/nice -n20 adjkerntz -a
                                        1 3 1 * * root /usr/bin/nice -n20 /etc/rc.update_bogons.sh
                                        */60 * * * * root /usr/bin/nice -n20 /usr/local/sbin/expiretable -v -t 3600 sshlockout
                                        1 1 * * * root /usr/bin/nice -n20 /etc/rc.dyndns.update
                                        */60 * * * * root /usr/bin/nice -n20 /usr/local/sbin/expiretable -v -t 3600 virusprot
                                        */60 * * * * root /usr/bin/nice -n20 /usr/local/sbin/expiretable -t 3600 snort2c
                                        */5 * * * * root /usr/local/bin/checkreload.sh
                                        */5 * * * * root /etc/ping_hosts.sh
                                        */140 * * * * root /usr/local/sbin/reset_slbd.sh
                                        0 5 * * * root /etc/pppoerestart
                                        0 4 * * * root /conf/pppoewanrestart

                                        If possible do not add items to this file manually.

                                        If you do so, this file must be terminated with a blank line (e.g. new line)

                                        My reset time is set to 4 o'clock. I dunno why still there is a entry for 5 o'clock, it wasnt there before.

                                        So today at 4 o'clock he triggered the script and reinitiate the pppoe connection. But after that the dnsmasq hung. He consumes up to 80% of the cpu usage and dont like to respond anymore. I killed the process and startet it again, it works now again. I think a bit of delay is needed after restarting the dnsmasq service. Because i also triggered the script(/conf/pppoewanrestart) by hand and the same problem occured. I got also a message back, but i think it has nothing to do with the dnsmasq problem:

                                        /conf/pppoewanrestart

                                        Warning: Missing argument 2 for services_dyndns_reset(), called in /root/- on line 1 and defined in /etc/inc/services.inc on line 438

                                        Running:   2.0-ALPHA-ALPHA
                                        built on Mon Jan 26 03:00:33 EST 2009
                                        FreeBSD 7.1-RELEASE-p2
                                        IRC Nick: mino

                                        1 Reply Last reply Reply Quote 0
                                        • S
                                          sullrich
                                          last edited by

                                          Okay this is due to Ermals changes (eri–).  I'll leave this to him to fix.

                                          1 Reply Last reply Reply Quote 0
                                          • E
                                            eri--
                                            last edited by

                                            Try next snapshot should be fixed.

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