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

    CARP preempt does't work

    Scheduled Pinned Locked Moved HA/CARP/VIPs
    18 Posts 3 Posters 1.7k 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.
    • DerelictD
      Derelict LAYER 8 Netgate
      last edited by

      What hardware is that?

      Chattanooga, Tennessee, USA
      A comprehensive network diagram is worth 10,000 words and 15 conference calls.
      DO NOT set a source address/port in a port forward or firewall rule unless you KNOW you need it!
      Do Not Chat For Help! NO_WAN_EGRESS(TM)

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

        Netgear SG-3100.
        I don't think it is an hardware problem, I get the exact same results with two virtual machines.

        1 Reply Last reply Reply Quote 0
        • DerelictD
          Derelict LAYER 8 Netgate
          last edited by

          How are you taking an interface physically down on a VM?

          Chattanooga, Tennessee, USA
          A comprehensive network diagram is worth 10,000 words and 15 conference calls.
          DO NOT set a source address/port in a port forward or firewall rule unless you KNOW you need it!
          Do Not Chat For Help! NO_WAN_EGRESS(TM)

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

            On the SG-3100 I've tried unplugging the cables or taking the interface down.
            On the VM I've taken the interface down.
            Always the same result, master fails to slave correctly but only for the failed interface and not both (LAN and WAN).
            It doesn't matter which interface I let fail (LAN or WAN), the other never switch together (WAN or respectively LAN)

            1 Reply Last reply Reply Quote 0
            • DerelictD
              Derelict LAYER 8 Netgate
              last edited by Derelict

              What is being logged by the node on which you are unplugging the device?

              It will be in the General system log.

              No, preemption is not broken so we need to figure out why yours is not working. Note that pfSense needs to see actual carrier down. I expect this might be problematic using the SG-3100 LAN switch ports and VM interfaces.

              The logs you are looking for will look similar to this:

              Mar 12 15:53:40 pfSense check_reload_status: Linkup starting igb2
              Mar 12 15:53:40 pfSense kernel: igb2: link state changed to DOWN
              Mar 12 15:53:41 pfSense check_reload_status: Reloading filter
              Mar 12 15:54:10 pfSense kernel: igb3: link state changed to DOWN
              Mar 12 15:54:10 pfSense kernel: carp: 13@lagg0: MASTER -> INIT (hardware interface down)
              Mar 12 15:54:10 pfSense kernel: carp: demoted by 240 to 240 (interface down)
              Mar 12 15:54:10 pfSense kernel: lagg0: link state changed to DOWN
              Mar 12 15:54:10 pfSense kernel: carp: 14@lagg1: MASTER -> BACKUP (more frequent advertisement received)
              

              Note the CARP interface going down demotes the node to advskew 240 which makes the other CARP VIP "slower" than the secondary at 100 so it assumes BACKUP state too. (That is an LACP lagg so it doesn't actually go DOWN until igb2 and igb3 lose link.)

              Chattanooga, Tennessee, USA
              A comprehensive network diagram is worth 10,000 words and 15 conference calls.
              DO NOT set a source address/port in a port forward or firewall rule unless you KNOW you need it!
              Do Not Chat For Help! NO_WAN_EGRESS(TM)

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

                It's probably this: https://redmine.pfsense.org/issues/8815

                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!

                1 Reply Last reply Reply Quote 1
                • M
                  mylos
                  last edited by

                  Hier is the log for the Master when unplugging the cable

                  Mar 12 17:08:12 syslogd kernel boot file is /boot/kernel/kernel
                  Mar 12 17:08:17 firewall1.localdomain nginx: 2019/03/12 17:08:17 [error] 87042#100091: send() failed (54: Connection reset by peer)
                  Mar 12 17:08:27 check_reload_status Carp backup event
                  Mar 12 17:08:27 kernel carp: 1@mvneta2: MASTER -> INIT (hardware interface down)
                  Mar 12 17:08:27 kernel carp: demoted by 240 to 240 (interface down)
                  Mar 12 17:08:27 kernel mvneta2: link state changed to DOWN
                  Mar 12 17:08:27 kernel carp: 2@mvneta1: MASTER -> BACKUP (more frequent advertisement received)
                  Mar 12 17:08:27 kernel ifa_maintain_loopback_route: deletion failed for interface mvneta1: 3
                  Mar 12 17:08:27 check_reload_status Linkup starting mvneta2
                  Mar 12 17:08:27 check_reload_status Carp backup event
                  Mar 12 17:08:28 php-fpm 248 /rc.linkup: DEVD Ethernet detached event for wan
                  Mar 12 17:08:28 php-fpm 42160 /rc.carpbackup: HA cluster member "(10.0.5.82@mvneta2): (WAN)" has resumed CARP state "BACKUP" for vhid 1
                  Mar 12 17:08:28 kernel ifa_maintain_loopback_route: deletion failed for interface mvneta2: 3
                  Mar 12 17:08:28 kernel ifa_maintain_loopback_route: deletion failed for interface mvneta2: 3
                  Mar 12 17:08:28 kernel carp: demoted by -240 to 0 (vhid removed)
                  Mar 12 17:08:28 kernel mvneta2: promiscuous mode disabled
                  Mar 12 17:08:28 php-fpm 247 /rc.carpbackup: HA cluster member "(10.0.0.1@mvneta1): (LAN)" has resumed CARP state "BACKUP" for vhid 2
                  Mar 12 17:08:28 check_reload_status Carp master event
                  Mar 12 17:08:28 kernel carp: 2@mvneta1: BACKUP -> MASTER (preempting a slower master)
                  Mar 12 17:08:28 kernel arp: 10.0.0.1 moved from 00:00:5e:00:01:02 to 00:08:a2:0e:10:f0 on mvneta1
                  Mar 12 17:08:29 php-cgi notify_monitor.php: Could not send the message to xxxxxx-- Error: Failed to connect to xxxxxxx:25 [SMTP: Failed to connect socket: php_network_getaddresses: getaddrinfo failed: hostname nor servname provided, or not known (code: -1, response: )]
                  Mar 12 17:08:29 php-fpm 32006 /rc.carpmaster: HA cluster member "(10.0.0.1@mvneta1): (LAN)" has resumed CARP state "MASTER" for vhid 2
                  Mar 12 17:08:30 php-fpm 248 /rc.linkup: Shutting down Router Advertisment daemon cleanly
                  Mar 12 17:08:30 check_reload_status Reloading filter

                  Hier the log for the slave

                  Mar 12 17:07:55 syslogd kernel boot file is /boot/kernel/kernel
                  Mar 12 17:08:25 kernel carp: 2@mvneta1: BACKUP -> MASTER (preempting a slower master)
                  Mar 12 17:08:25 check_reload_status Carp master event
                  Mar 12 17:08:26 php-fpm 248 /rc.carpmaster: HA cluster member "(10.0.0.1@mvneta1): (LAN)" has resumed CARP state "MASTER" for vhid 2
                  Mar 12 17:08:26 check_reload_status Carp backup event
                  Mar 12 17:08:26 kernel carp: 2@mvneta1: MASTER -> BACKUP (more frequent advertisement received)
                  Mar 12 17:08:26 kernel ifa_maintain_loopback_route: deletion failed for interface mvneta1: 3
                  Mar 12 17:08:27 check_reload_status Carp master event
                  Mar 12 17:08:27 kernel carp: 1@mvneta2: BACKUP -> MASTER (master timed out)
                  Mar 12 17:08:27 php-fpm 91794 /rc.carpbackup: HA cluster member "(10.0.0.1@mvneta1): (LAN)" has resumed CARP state "BACKUP" for vhid 2
                  Mar 12 17:08:28 php-fpm 52174 /rc.carpmaster: HA cluster member "(10.0.5.82@mvneta2): (WAN)" has resumed CARP state "MASTER" for vhid 1
                  Mar 12 17:08:29 php-cgi notify_monitor.php: Message sent to xxxxxx OK

                  1 Reply Last reply Reply Quote 0
                  • DerelictD
                    Derelict LAYER 8 Netgate
                    last edited by

                    You'll have to see if the CARP advertisements are actually arriving on the secondary in that case.

                    Mar 12 17:08:28 kernel arp: 10.0.0.1 moved from 00:00:5e:00:01:02 to 00:08:a2:0e:10:f0 on mvneta1

                    That should never happen. There should never be anything responding to ARP on a CARP VIP with an IS AT anything but the CARP MAC. What is at MAC Address 00:08:a2:0e:10:f0

                    Chattanooga, Tennessee, USA
                    A comprehensive network diagram is worth 10,000 words and 15 conference calls.
                    DO NOT set a source address/port in a port forward or firewall rule unless you KNOW you need it!
                    Do Not Chat For Help! NO_WAN_EGRESS(TM)

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

                      WAP VIP
                      10.0.5.82 at 0:0:5e:0:1:1
                      WAN Master
                      10.0.5.83 at 0:8:a2:0e:10:4f
                      WAN Slave
                      10.0.5.84 at 0:8:a2:e:10:f1
                      LAN VIP
                      10.0.0.1 at 0:0:5e:0:1:2
                      LAN Master
                      10.0.0.2 at 0:8:a2:e:10:4e
                      LAN Slave
                      10.0.0.3 at 0:8:a2:e:10:f0

                      1 Reply Last reply Reply Quote 0
                      • DerelictD
                        Derelict LAYER 8 Netgate
                        last edited by

                        Take a really good look at the configuration of the secondary.

                        Packet capture a bunch of ARP during failover tests and take a good look at that. There should never be an ARP IS AT response for a CARP VIP that contains an interface MAC as the payload. It will be sourced from the interface MAC but contain the CARP Mac. If there is I would like to see the capture.

                        Chattanooga, Tennessee, USA
                        A comprehensive network diagram is worth 10,000 words and 15 conference calls.
                        DO NOT set a source address/port in a port forward or firewall rule unless you KNOW you need it!
                        Do Not Chat For Help! NO_WAN_EGRESS(TM)

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

                          Operation: unplug the WAN cable on the Master

                          Packet capture on LAN on slave
                          17:34:48.781554 ARP, Request who-has 10.0.0.1 tell 10.0.0.1, length 28
                          17:34:48.781952 ARP, Reply 10.0.0.1 is-at 00:08:a2:0e:10:4e, length 46
                          17:34:50.173825 ARP, Request who-has 10.0.0.1 tell 10.0.0.1, length 46
                          17:34:50.173860 ARP, Reply 10.0.0.1 is-at 00:08:a2:0e:10:f0, length 28

                          Packet capture on LAN on master
                          17:34:48.783981 ARP, Request who-has 10.0.0.1 tell 10.0.0.1, length 46
                          17:34:48.784012 ARP, Reply 10.0.0.1 is-at 00:08:a2:0e:10:4e, length 28
                          17:34:50.175740 ARP, Request who-has 10.0.0.1 tell 10.0.0.1, length 28
                          17:34:50.176185 ARP, Reply 10.0.0.1 is-at 00:08:a2:0e:10:f0, length 46

                          Slave before failover
                          mvneta1: flags=8b43<UP,BROADCAST,RUNNING,PROMISC,ALLMULTI,SIMPLEX,MULTICAST> metric 0 mtu 1500
                          options=bb<RXCSUM,TXCSUM,VLAN_MTU,VLAN_HWTAGGING,JUMBO_MTU,VLAN_HWCSUM>
                          ether 00:08:a2:0e:10:f0
                          hwaddr 00:08:a2:0e:10:f0
                          inet 10.0.0.3 netmask 0xffffff00 broadcast 10.0.0.255
                          inet 10.0.0.1 netmask 0xffffff00 broadcast 10.0.0.255 vhid 2
                          inet6 fe80::1:1%mvneta1 prefixlen 64 scopeid 0x2
                          carp: BACKUP vhid 2 advbase 1 advskew 100
                          media: Ethernet 2500Base-KX <full-duplex>
                          status: active
                          nd6 options=21<PERFORMNUD,AUTO_LINKLOCAL>
                          mvneta2: flags=8b43<UP,BROADCAST,RUNNING,PROMISC,ALLMULTI,SIMPLEX,MULTICAST> metric 0 mtu 1500
                          options=800bb<RXCSUM,TXCSUM,VLAN_MTU,VLAN_HWTAGGING,JUMBO_MTU,VLAN_HWCSUM,LINKSTATE>
                          ether 00:08:a2:0e:10:f1
                          hwaddr 00:08:a2:0e:10:f1
                          inet6 fe80::208:a2ff:fe0e:10f1%mvneta2 prefixlen 64 scopeid 0x8
                          inet 10.0.5.84 netmask 0xffffff00 broadcast 10.0.5.255
                          inet 10.0.5.82 netmask 0xffffff00 broadcast 10.0.5.255 vhid 1
                          carp: BACKUP vhid 1 advbase 1 advskew 100
                          media: Ethernet autoselect (1000baseT <full-duplex>)
                          status: active
                          nd6 options=23<PERFORMNUD,ACCEPT_RTADV,AUTO_LINKLOCAL>

                          Master before failover
                          mvneta1: flags=8b43<UP,BROADCAST,RUNNING,PROMISC,ALLMULTI,SIMPLEX,MULTICAST> metric 0 mtu 1500
                          options=bb<RXCSUM,TXCSUM,VLAN_MTU,VLAN_HWTAGGING,JUMBO_MTU,VLAN_HWCSUM>
                          ether 00:08:a2:0e:10:4e
                          hwaddr 00:08:a2:0e:10:4e
                          inet 10.0.0.2 netmask 0xffffff00 broadcast 10.0.0.255
                          inet 10.0.0.1 netmask 0xffffff00 broadcast 10.0.0.255 vhid 2
                          inet6 fe80::1:1%mvneta1 prefixlen 64 scopeid 0x2
                          carp: MASTER vhid 2 advbase 1 advskew 0
                          media: Ethernet 2500Base-KX <full-duplex>
                          status: active
                          nd6 options=21<PERFORMNUD,AUTO_LINKLOCAL>
                          mvneta2: flags=8b43<UP,BROADCAST,RUNNING,PROMISC,ALLMULTI,SIMPLEX,MULTICAST> metric 0 mtu 1500
                          options=800bb<RXCSUM,TXCSUM,VLAN_MTU,VLAN_HWTAGGING,JUMBO_MTU,VLAN_HWCSUM,LINKSTATE>
                          ether 00:08:a2:0e:10:4f
                          hwaddr 00:08:a2:0e:10:4f
                          inet6 fe80::208:a2ff:fe0e:104f%mvneta2 prefixlen 64 scopeid 0x8
                          inet 10.0.5.83 netmask 0xffffff00 broadcast 10.0.5.255
                          inet 10.0.5.82 netmask 0xffffff00 broadcast 10.0.5.255 vhid 1
                          carp: MASTER vhid 1 advbase 1 advskew 0
                          media: Ethernet autoselect (1000baseT <full-duplex>)
                          status: active
                          nd6 options=23<PERFORMNUD,ACCEPT_RTADV,AUTO_LINKLOCAL>

                          slave after failover
                          mvneta1: flags=8b43<UP,BROADCAST,RUNNING,PROMISC,ALLMULTI,SIMPLEX,MULTICAST> metric 0 mtu 1500
                          options=bb<RXCSUM,TXCSUM,VLAN_MTU,VLAN_HWTAGGING,JUMBO_MTU,VLAN_HWCSUM>
                          ether 00:08:a2:0e:10:f0
                          hwaddr 00:08:a2:0e:10:f0
                          inet 10.0.0.3 netmask 0xffffff00 broadcast 10.0.0.255
                          inet 10.0.0.1 netmask 0xffffff00 broadcast 10.0.0.255 vhid 2
                          inet6 fe80::1:1%mvneta1 prefixlen 64 scopeid 0x2
                          carp: BACKUP vhid 2 advbase 1 advskew 100
                          media: Ethernet 2500Base-KX <full-duplex>
                          status: active
                          nd6 options=21<PERFORMNUD,AUTO_LINKLOCAL>
                          mvneta2: flags=8b43<UP,BROADCAST,RUNNING,PROMISC,ALLMULTI,SIMPLEX,MULTICAST> metric 0 mtu 1500
                          options=800bb<RXCSUM,TXCSUM,VLAN_MTU,VLAN_HWTAGGING,JUMBO_MTU,VLAN_HWCSUM,LINKSTATE>
                          ether 00:08:a2:0e:10:f1
                          hwaddr 00:08:a2:0e:10:f1
                          inet6 fe80::208:a2ff:fe0e:10f1%mvneta2 prefixlen 64 scopeid 0x8
                          inet 10.0.5.84 netmask 0xffffff00 broadcast 10.0.5.255
                          inet 10.0.5.82 netmask 0xffffff00 broadcast 10.0.5.255 vhid 1
                          carp: MASTER vhid 1 advbase 1 advskew 100
                          media: Ethernet autoselect (1000baseT <full-duplex>)
                          status: active
                          nd6 options=23<PERFORMNUD,ACCEPT_RTADV,AUTO_LINKLOCAL>

                          master after failover
                          mvneta1: flags=8b43<UP,BROADCAST,RUNNING,PROMISC,ALLMULTI,SIMPLEX,MULTICAST> metric 0 mtu 1500
                          options=bb<RXCSUM,TXCSUM,VLAN_MTU,VLAN_HWTAGGING,JUMBO_MTU,VLAN_HWCSUM>
                          ether 00:08:a2:0e:10:4e
                          hwaddr 00:08:a2:0e:10:4e
                          inet 10.0.0.2 netmask 0xffffff00 broadcast 10.0.0.255
                          inet 10.0.0.1 netmask 0xffffff00 broadcast 10.0.0.255 vhid 2
                          inet6 fe80::1:1%mvneta1 prefixlen 64 scopeid 0x2
                          carp: MASTER vhid 2 advbase 1 advskew 0
                          media: Ethernet 2500Base-KX <full-duplex>
                          status: active
                          nd6 options=21<PERFORMNUD,AUTO_LINKLOCAL>
                          mvneta2: flags=8a43<UP,BROADCAST,RUNNING,ALLMULTI,SIMPLEX,MULTICAST> metric 0 mtu 1500
                          options=800bb<RXCSUM,TXCSUM,VLAN_MTU,VLAN_HWTAGGING,JUMBO_MTU,VLAN_HWCSUM,LINKSTATE>
                          ether 00:08:a2:0e:10:4f
                          hwaddr 00:08:a2:0e:10:4f
                          inet6 fe80::208:a2ff:fe0e:104f%mvneta2 prefixlen 64 scopeid 0x8
                          media: Ethernet autoselect (none)
                          status: no carrier
                          nd6 options=23<PERFORMNUD,ACCEPT_RTADV,AUTO_LINKLOCAL>

                          1 Reply Last reply Reply Quote 0
                          • DerelictD
                            Derelict LAYER 8 Netgate
                            last edited by

                            @mylos said in CARP preempt does't work:

                            17:34:48.781554 ARP, Request who-has 10.0.0.1 tell 10.0.0.1, length 28

                            That also makes no sense. Does it make sense to you?

                            Please download and post the raw pcap.

                            Chattanooga, Tennessee, USA
                            A comprehensive network diagram is worth 10,000 words and 15 conference calls.
                            DO NOT set a source address/port in a port forward or firewall rule unless you KNOW you need it!
                            Do Not Chat For Help! NO_WAN_EGRESS(TM)

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

                              Nope does not make any sense for me as well

                              d4c3 b2a1 0200 0400 0000 0000 0000 0000
                              0000 0400 0100 0000 1998 8a5c 2f42 0a00
                              2a00 0000 2a00 0000 ffff ffff ffff 0008
                              a20e 10f0 0806 0001 0800 0604 0001 0000
                              5e00 0102 0a00 0001 0000 0000 0000 0a00
                              0001 1998 8a5c ad43 0a00 3c00 0000 3c00
                              0000 0000 5e00 0102 0008 a20e 104e 0806
                              0001 0800 0604 0002 0008 a20e 104e 0a00
                              0001 0000 5e00 0102 0a00 0001 0000 0000
                              0000 0000 0000 0000 0000 0000 0000 1b98
                              8a5c 06fc 0000 3c00 0000 3c00 0000 ffff
                              ffff ffff 0008 a20e 104e 0806 0001 0800
                              0604 0001 0000 5e00 0102 0a00 0001 0000
                              0000 0000 0a00 0001 0000 0000 0000 0000
                              0000 0000 0000 0000 0000 1b98 8a5c 26fc
                              0000 2a00 0000 2a00 0000 0000 5e00 0102
                              0008 a20e 10f0 0806 0001 0800 0604 0002
                              0008 a20e 10f0 0a00 0001 0000 5e00 0102
                              0a00 0001

                              1 Reply Last reply Reply Quote 0
                              • DerelictD
                                Derelict LAYER 8 Netgate
                                last edited by

                                You will need to attach the capture file.

                                I cannot properly test SG-3100 HA. I only have one unit.

                                Chattanooga, Tennessee, USA
                                A comprehensive network diagram is worth 10,000 words and 15 conference calls.
                                DO NOT set a source address/port in a port forward or firewall rule unless you KNOW you need it!
                                Do Not Chat For Help! NO_WAN_EGRESS(TM)

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

                                  The above is the capture file. Save as hexadecimal as dump.pcap

                                  1 Reply Last reply Reply Quote 0
                                  • DerelictD
                                    Derelict LAYER 8 Netgate
                                    last edited by

                                    Yeah, no thanks. attach the pcap please.

                                    Chattanooga, Tennessee, USA
                                    A comprehensive network diagram is worth 10,000 words and 15 conference calls.
                                    DO NOT set a source address/port in a port forward or firewall rule unless you KNOW you need it!
                                    Do Not Chat For Help! NO_WAN_EGRESS(TM)

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

                                      0_1552590318279_dump.pcap

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