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

    pfSense 2.7 with an old 2.4.5 config failing to upgrade

    Scheduled Pinned Locked Moved Problems Installing or Upgrading pfSense Software
    27 Posts 3 Posters 3.0k 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

      That's from the 2.4 config before it is restored?

      T 1 Reply Last reply Reply Quote 0
      • T
        tbyte @stephenw10
        last edited by

        @stephenw10 yes on the live router.

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

          Ok, that looks like a bug. https://redmine.pfsense.org/issues/14859

          You can workaround it by simply removing the <gres></gres> line before importing it if you need to.

          Steve

          T 1 Reply Last reply Reply Quote 1
          • T
            tbyte @stephenw10
            last edited by

            @stephenw10 That worked! Nice catch, thank you! Sorry for replying that slow, I couldn't test it until now.

            1 Reply Last reply Reply Quote 1
            • D
              davin.landry
              last edited by

              I'm having a similar problem, but I'm upgrading from 2,2.6. I've looked for gre/gres in my config but don't see that anywhere. I do have a IPSec connection though.

              My error also has different numbers and paths.

              Fatal error: Uncaught TypeError: Unsupported operand types: string * int in /etc/inc/upgrade_config.inc:4163
              Stack trace:
              #0 /etc/inc/config.lib.inc(513): upgrade_130_to_131()
              #1 /usr/local/pfSense/include/www/backup.inc(403): convert_config()
              #2 /usr/local/www/diag_backup.php(63): execPost(Array, Array)
              #3 {main} thrown in /etc/inc/upgrade_config.inc on line 4163
              PHP ERROR: Type: 1, File: /etc/inc/upgrade_config.inc, Line: 4163, Message: Uncaught TypeError: Unsupported operand types: string * int in /etc/inc/upgrade_config.inc:4163
              Stack trace:
              #0 /etc/inc/config.lib.inc(513): upgrade_130_to_131()
              #1 /usr/local/pfSense/include/www/backup.inc(403): convert_config()
              #2 /usr/local/www/diag_backup.php(63): execPost(Array, Array)
              #3 {main} thrown

              Any ideas?

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

                @davin-landry said in pfSense 2.7 with an old 2.4.5 config failing to upgrade:

                upgrade_config.inc:4163

                That code updates custom gateway monitoring settings to be valid in newer instances.
                https://github.com/pfsense/pfsense/blob/master/src/etc/inc/upgrade_config.inc#L4161

                Do you have custom gateway values in your config?

                Steve

                D 1 Reply Last reply Reply Quote 0
                • D
                  davin.landry @stephenw10
                  last edited by

                  @stephenw10

                  Yes I do, we have 4 entries in 'Gateways' and 2 rely on the IPSec connection.

                  Also, sorry for the delay in responding.

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

                    Ah so gateways at the remote side of a VTI tunnel?

                    That should still be valid. Do you have custom values in those? Latency, ping frequency etc?

                    D 1 Reply Last reply Reply Quote 0
                    • D
                      davin.landry @stephenw10
                      last edited by

                      Yeah, they are for AWS. But no, no custom values, just have monitoring turned off.

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

                        Can we see the gateways section from the config you are importing? You can redact any public IP there if you wish.

                        D 1 Reply Last reply Reply Quote 0
                        • D
                          davin.landry @stephenw10
                          last edited by

                          config-router.xml

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

                            That appears to be only the ipsec config. What matters here is the gateway section like:

                            	<gateways>
                            		<gateway_item>
                            			<interface>opt9</interface>
                            			<gateway>172.27.116.1</gateway>
                            			<name>WG0GW</name>
                            			<weight>1</weight>
                            			<ipprotocol>inet</ipprotocol>
                            			<descr></descr>
                            			<monitor_disable></monitor_disable>
                            			<gw_down_kill_states></gw_down_kill_states>
                            		</gateway_item>
                            		<gateway_item>
                            			<interface>opt14</interface>
                            			<gateway>dynamic</gateway>
                            			<name>GIF0_TUNNELV4</name>
                            			<weight>1</weight>
                            			<ipprotocol>inet</ipprotocol>
                            			<descr><![CDATA[Interface GIF0_TUNNELV4 Gateway]]></descr>
                            		</gateway_item>
                            		<gateway_item>
                            			<interface>opt17</interface>
                            			<gateway>dynamic</gateway>
                            			<name>WWAN0_PPP</name>
                            			<weight>1</weight>
                            			<ipprotocol>inet</ipprotocol>
                            			<interval>5000</interval>
                            			<time_period>100000</time_period>
                            			<alert_interval>20000</alert_interval>
                            			<descr><![CDATA[Interface WWAN0_PPP Gateway]]></descr>
                            			<monitor>1.1.1.1</monitor>
                            			<loss_interval>19995</loss_interval>
                            		</gateway_item>
                            		<gateway_item>
                            			<interface>opt25</interface>
                            			<gateway>10.0.2.1</gateway>
                            			<name>WG_GW0</name>
                            			<weight></weight>
                            			<ipprotocol>inet</ipprotocol>
                            			<descr><![CDATA[Wireguard gateway]]></descr>
                            			<gw_down_kill_states></gw_down_kill_states>
                            		</gateway_item>
                            		<defaultgw4>WAN_DHCP</defaultgw4>
                            		<defaultgw6></defaultgw6>
                            	</gateways>
                            
                            D 1 Reply Last reply Reply Quote 0
                            • D
                              davin.landry @stephenw10
                              last edited by

                              Sorry. Here you go.

                              config-router.xml

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

                                Great. Nothing jumps out at me there, I've raised it with our devs.

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

                                  Hmm, OK are you able to retest that?

                                  If so try removing the <interval/> lines from the config before importing it. If that prevents the error we should be able to add something to allow it.

                                  D 2 Replies Last reply Reply Quote 0
                                  • D
                                    davin.landry @stephenw10
                                    last edited by

                                    Yes I can retry, I'll let you know something after the holiday.

                                    1 Reply Last reply Reply Quote 1
                                    • D
                                      davin.landry @stephenw10
                                      last edited by

                                      Test was successful most of the settings are now in the new system. A few things aren't working, like the openVPN service and DHCP service won't start but I think it might be because it doesn't have any real connections.
                                      I'm also getting the following error now.

                                      PHP Errors:
                                      [28-Nov-2023 03:29:20 America/Chicago] PHP Fatal error: Uncaught TypeError: Cannot access offset of type string on string in /etc/inc/upgrade_config.inc:4290
                                      Stack trace:
                                      #0 /etc/inc/config.lib.inc(513): upgrade_136_to_137()
                                      #1 /etc/rc.bootup(135): convert_config()
                                      #2 {main}
                                      thrown in /etc/inc/upgrade_config.inc on line 4290

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

                                        Still into 2.7.0 not 2.7.1?
                                        https://github.com/pfsense/pfsense/blob/RELENG_2_7_0/src/etc/inc/upgrade_config.inc#L4290

                                        if (!is_array($dhcpd['numberoptions']['item'])) {
                                        

                                        Do you have custom numbered options in your dhcp server config?

                                        Steve

                                        D 1 Reply Last reply Reply Quote 0
                                        • D
                                          davin.landry @stephenw10
                                          last edited by

                                          Yes I have 10 total different networks(vlans) with different scopes and 7 of those use the DHCP server.

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

                                            Right but do any of them have numbered options set like:
                                            Screenshot from 2023-11-28 18-30-57.png

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