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

    pfSense Plus 23.01 XMLRPC Sync problems when addiing CARP VIPs

    HA/CARP/VIPs
    6
    11
    909
    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.
    • S
      santanna
      last edited by

      Dear all,

      I was configuring a HA cluster between 2 pfSense Plus 23.01 firewalls and the HA sync part is ok. When I start creating de CARP VIPs on the primary firewall, this configurations are not sent to the secondary firewall and I get some errors.

      Crash report begins. Anonymous machine information:

      amd64
      14.0-CURRENT
      FreeBSD 14.0-CURRENT #0 plus-RELENG_23_01-n256037-6e914874a5e: Fri Feb 10 20:30:29 UTC 2023 root@freebsd:/var/jenkins/workspace/pfSense-Plus-snapshots-23_01-main/obj/amd64/VDZvZksF/var/jenkins/workspace/pfSense-Plus-snapshots-23_01-main/sources/FreeBS

      Crash report details:

      PHP Errors:
      [24-Feb-2023 18:17:00 America/Sao_Paulo] PHP Fatal error: Uncaught TypeError: Cannot access offset of type string on string in /usr/local/www/xmlrpc.php:399
      Stack trace:
      #0 /usr/local/share/pear/XML/RPC2/Server/CallHandler/Instance.php(141): pfsense_xmlrpc_server->restore_config_section(Array, 900)
      #1 /usr/local/share/pear/XML/RPC2/Backend/Php/Server.php(135): XML_RPC2_Server_Callhandler_Instance->__call('pfsense.restore...', Array)
      #2 /usr/local/share/pear/XML/RPC2/Backend/Php/Server.php(99): XML_RPC2_Backend_Php_Server->getResponse()
      #3 /usr/local/www/xmlrpc.php(988): XML_RPC2_Backend_Php_Server->handleCall()
      #4 {main}
      thrown in /usr/local/www/xmlrpc.php on line 399
      [24-Feb-2023 18:18:10 America/Sao_Paulo] PHP Fatal error: Uncaught TypeError: Cannot access offset of type string on string in /usr/local/www/xmlrpc.php:399
      Stack trace:
      #0 /usr/local/share/pear/XML/RPC2/Server/CallHandler/Instance.php(141): pfsense_xmlrpc_server->restore_config_section(Array, 900)
      #1 /usr/local/share/pear/XML/RPC2/Backend/Php/Server.php(135): XML_RPC2_Server_Callhandler_Instance->__call('pfsense.restore...', Array)
      #2 /usr/local/share/pear/XML/RPC2/Backend/Php/Server.php(99): XML_RPC2_Backend_Php_Server->getResponse()
      #3 /usr/local/www/xmlrpc.php(988): XML_RPC2_Backend_Php_Server->handleCall()
      #4 {main}
      thrown in /usr/local/www/xmlrpc.php on line 399
      [24-Feb-2023 18:19:21 America/Sao_Paulo] PHP Fatal error: Uncaught TypeError: Cannot access offset of type string on string in /usr/local/www/xmlrpc.php:399
      Stack trace:
      #0 /usr/local/share/pear/XML/RPC2/Server/CallHandler/Instance.php(141): pfsense_xmlrpc_server->restore_config_section(Array, 900)
      #1 /usr/local/share/pear/XML/RPC2/Backend/Php/Server.php(135): XML_RPC2_Server_Callhandler_Instance->__call('pfsense.restore...', Array)
      #2 /usr/local/share/pear/XML/RPC2/Backend/Php/Server.php(99): XML_RPC2_Backend_Php_Server->getResponse()
      #3 /usr/local/www/xmlrpc.php(988): XML_RPC2_Backend_Php_Server->handleCall()
      #4 {main}
      thrown in /usr/local/www/xmlrpc.php on line 399
      [24-Feb-2023 18:20:31 America/Sao_Paulo] PHP Fatal error: Uncaught TypeError: Cannot access offset of type string on string in /usr/local/www/xmlrpc.php:399
      Stack trace:
      #0 /usr/local/share/pear/XML/RPC2/Server/CallHandler/Instance.php(141): pfsense_xmlrpc_server->restore_config_section(Array, 900)
      #1 /usr/local/share/pear/XML/RPC2/Backend/Php/Server.php(135): XML_RPC2_Server_Callhandler_Instance->__call('pfsense.restore...', Array)
      #2 /usr/local/share/pear/XML/RPC2/Backend/Php/Server.php(99): XML_RPC2_Backend_Php_Server->getResponse()
      #3 /usr/local/www/xmlrpc.php(988): XML_RPC2_Backend_Php_Server->handleCall()
      #4 {main}
      thrown in /usr/local/www/xmlrpc.php on line 399
      [24-Feb-2023 18:21:42 America/Sao_Paulo] PHP Fatal error: Uncaught TypeError: Cannot access offset of type string on string in /usr/local/www/xmlrpc.php:399
      Stack trace:
      #0 /usr/local/share/pear/XML/RPC2/Server/CallHandler/Instance.php(141): pfsense_xmlrpc_server->restore_config_section(Array, 900)
      #1 /usr/local/share/pear/XML/RPC2/Backend/Php/Server.php(135): XML_RPC2_Server_Callhandler_Instance->__call('pfsense.restore...', Array)
      #2 /usr/local/share/pear/XML/RPC2/Backend/Php/Server.php(99): XML_RPC2_Backend_Php_Server->getResponse()
      #3 /usr/local/www/xmlrpc.php(988): XML_RPC2_Backend_Php_Server->handleCall()
      #4 {main}
      thrown in /usr/local/www/xmlrpc.php on line 399

      No FreeBSD crash data found.

      Any help on this issue? Both firewalls were installed and upgraded to version 23.01. The same configuration works on pfSense 2.6.0-CE.

      empbillyE 1 Reply Last reply Reply Quote 1
      • empbillyE
        empbilly @santanna
        last edited by

        @santanna

        How is the HA sync configuration on master and backup? Post a screenshot

        https://eliasmoraispereira.wordpress.com/

        S 1 Reply Last reply Reply Quote 0
        • S
          santanna @empbilly
          last edited by

          @empbilly

          Firewall #1

          6cbec76e-5080-4562-84c3-51b90f9220ad-image.png

          ccde613a-51f4-416d-8580-6564a65f2729-image.png

          Firewall #2

          505cf545-94ba-470c-aabe-5385f0fa413b-image.png

          98ec1033-23a6-4ca7-a41e-e2eda3051617-image.png

          empbillyE 1 Reply Last reply Reply Quote 0
          • empbillyE
            empbilly @santanna
            last edited by

            @santanna

            Under Diagnostics > Backup & Restore > Configuration History you have the version of the XMLRPC configuration.

            Which versions does it show in master and backup?

            https://eliasmoraispereira.wordpress.com/

            S 1 Reply Last reply Reply Quote 0
            • S
              santanna @empbilly
              last edited by

              @empbilly

              Firewall #1 (Master)

              44c7a470-04ce-492c-89c5-eba7ddfd6054-image.png

              Firewall #2 (Secondary)

              f6e6dc71-2269-47f6-ada5-dfce36366762-image.png

              1 Reply Last reply Reply Quote 0
              • R
                roesh
                last edited by roesh

                Hello @santanna,

                I am running 23.01 too and have the same issue. It seems to be a an error on the XMLRPC receiving side, when it processes Virtual IPs config.

                My stack trace:

                Crash report begins.  Anonymous machine information:
                
                amd64
                14.0-CURRENT
                FreeBSD 14.0-CURRENT #0 plus-RELENG_23_01-n256037-6e914874a5e: Fri Feb 10 20:30:29 UTC 2023     root@freebsd:/var/jenkins/workspace/pfSense-Plus-snapshots-23_01-main/obj/amd64/VDZvZksF/var/jenkins/workspace/pfSense-Plus-snapshots-23_01-main/sources/FreeBS
                
                Crash report details:
                
                PHP Errors:
                [07-Mar-2023 00:09:46 Europe/Berlin] PHP Fatal error:  Uncaught TypeError: Cannot access offset of type string on string in /usr/local/www/xmlrpc.php:399
                Stack trace:
                #0 /usr/local/share/pear/XML/RPC2/Server/CallHandler/Instance.php(141): pfsense_xmlrpc_server->restore_config_section(Array, 900)
                #1 /usr/local/share/pear/XML/RPC2/Backend/Php/Server.php(135): XML_RPC2_Server_Callhandler_Instance->__call('pfsense.restore...', Array)
                #2 /usr/local/share/pear/XML/RPC2/Backend/Php/Server.php(99): XML_RPC2_Backend_Php_Server->getResponse()
                #3 /usr/local/www/xmlrpc.php(988): XML_RPC2_Backend_Php_Server->handleCall()
                #4 {main}
                  thrown in /usr/local/www/xmlrpc.php on line 399
                [07-Mar-2023 00:10:58 Europe/Berlin] PHP Fatal error:  Uncaught TypeError: Cannot access offset of type string on string in /usr/local/www/xmlrpc.php:399
                Stack trace:
                #0 /usr/local/share/pear/XML/RPC2/Server/CallHandler/Instance.php(141): pfsense_xmlrpc_server->restore_config_section(Array, 900)
                #1 /usr/local/share/pear/XML/RPC2/Backend/Php/Server.php(135): XML_RPC2_Server_Callhandler_Instance->__call('pfsense.restore...', Array)
                #2 /usr/local/share/pear/XML/RPC2/Backend/Php/Server.php(99): XML_RPC2_Backend_Php_Server->getResponse()
                #3 /usr/local/www/xmlrpc.php(988): XML_RPC2_Backend_Php_Server->handleCall()
                #4 {main}
                  thrown in /usr/local/www/xmlrpc.php on line 399
                [07-Mar-2023 00:12:10 Europe/Berlin] PHP Fatal error:  Uncaught TypeError: Cannot access offset of type string on string in /usr/local/www/xmlrpc.php:399
                Stack trace:
                #0 /usr/local/share/pear/XML/RPC2/Server/CallHandler/Instance.php(141): pfsense_xmlrpc_server->restore_config_section(Array, 900)
                #1 /usr/local/share/pear/XML/RPC2/Backend/Php/Server.php(135): XML_RPC2_Server_Callhandler_Instance->__call('pfsense.restore...', Array)
                #2 /usr/local/share/pear/XML/RPC2/Backend/Php/Server.php(99): XML_RPC2_Backend_Php_Server->getResponse()
                #3 /usr/local/www/xmlrpc.php(988): XML_RPC2_Backend_Php_Server->handleCall()
                #4 {main}
                  thrown in /usr/local/www/xmlrpc.php on line 399
                
                
                
                No FreeBSD crash data found.
                

                Line 399 is around this code part in xmlrpc.php:

                                $vipbackup = array();
                                $oldvips = array();
                                if (isset($sections['virtualip']) &&
                                    is_array($config['virtualip']['vip'])) {
                                        foreach ($config['virtualip']['vip'] as $vip) {
                

                Therefore, I deselected "Virtual IP" under "Select options to sync" and at least it does not generate these crash reports anymore. Of course, it wont sync the VIP settings.

                PS: I opened a ticket at Netgate's TAC Support.

                R 1 Reply Last reply Reply Quote 1
                • R
                  roesh @roesh
                  last edited by

                  It seems to be a known issue: https://redmine.pfsense.org/issues/14034

                  1 Reply Last reply Reply Quote 1
                  • W
                    williwinkie
                    last edited by

                    Same problem here, got two new 1541's[08-Mar-2023 12:23:52 Europe/Berlin] PHP Fatal error: Uncaught TypeError: Cannot access offset of type string on string in /usr/local/www/xmlrpc.php:399
                    Stack trace:
                    #0 /usr/local/share/pear/XML/RPC2/Server/CallHandler/Instance.php(141): pfsense_xmlrpc_server->restore_config_section(Array, 900)
                    #1 /usr/local/share/pear/XML/RPC2/Backend/Php/Server.php(135): XML_RPC2_Server_Callhandler_Instance->__call('pfsense.restore...', Array)
                    #2 /usr/local/share/pear/XML/RPC2/Backend/Php/Server.php(99): XML_RPC2_Backend_Php_Server->getResponse()
                    #3 /usr/local/www/xmlrpc.php(988): XML_RPC2_Backend_Php_Server->handleCall()
                    #4 {main}
                    thrown in /usr/local/www/xmlrpc.php on line 399

                    Not the first time I've setup HA Systems, usually work straight away but this one is making me go bald ๐Ÿ™„

                    1 Reply Last reply Reply Quote 0
                    • jimpJ
                      jimp Rebel Alliance Developer Netgate
                      last edited by

                      As mentioned above it's a bug in 23.01 (#14034)

                      The configuration on the secondary has an empty <virtualips> tag which is tripping up that PHP code. If you go on the secondary and add a dummy VIP, then the sync will succeed and you can delete the dummy entry if the sync doesn't do that on its own.

                      Remember: Upvote with the ๐Ÿ‘ button for any user/post you find to be helpful, informative, or deserving of recognition!

                      Need help fast? Netgate Global Support!

                      Do not Chat/PM for help!

                      R 1 Reply Last reply Reply Quote 1
                      • R
                        roesh @jimp
                        last edited by

                        @jimp Yes, once the secondary pfsense has some CARP virtual IP addresses, the error vanishes.

                        Deselecting the "Virtual IP" under "Select options to sync" does not work in the end, if one likes to also use DHCP failover.

                        N 1 Reply Last reply Reply Quote 0
                        • N
                          nick.loenders @roesh
                          last edited by

                          @roesh @jimp

                          I added another new CARP VIP, but the interface stays DOWN ?

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