This article applies to:Clavister Security Gateway 8.x, 9.x and 10.x
Note changes as of 8.30.01 for Linux Heartbeat clusters and Microsoft Cluster Server
Note changes as of 8.50.02 for Microsoft Network Load Balancing
Background
Some high-availability server clusters work by sharing an IP address, where only one server “owns” this address at a time. If the server currently owning the IP address goes down, the backup server will start serving requests on that IP address.
A basic problem here is getting surrounding network equipment (routers, Security Gateways) to understand that the IP address should be routed a new hardware address. This is often done through gratitious ARP responses, whereby the new server sends responses to all hosts that need to know about the change, even though these units have not sent ARP queries.
The problem
Clavister Secturity Gateway will not listen to ARP responses that it has not sent out queries for. This is to make “ARP spoofing” (IP address spoofing on the local network through bogus ARPs) harder.
This means that the ARP cache of the Security Gateway will not be updated by the gratuitous ARPs sent by the new server. Rather, it will take up to 15 minutes (using default settings) for the Security Gateway to start routing traffic to the new server.
You will likely also see entries like these in your logs (syslog example):
Jun 6 11:38:13 mygw EFW: ARP: rule=UnsolicitedARPReplies action=drop reason=already_exists recvif=int hwsender=0090:0b02:5c70 hwdest=0001:020d:fb16 arp=reply srcenet=0090:0b02:5c70 srcip=192.168.16.136 destenet=0001:020d:fb16 destip=192.168.16.1
The solution
Clavister Secturity Gateway can be made to accept gratuitous ARPs by turning off the extra checks and making it fully compliant with the ARP specification: RFC 826.
Make the following modifications to Advanced Settings -> ARP:
Note: In newer cOS Core versions (10+) the ARP settings can be found under Network->ARP->Advanced Settings.
- UnsolicitedARPReplies: Accept or AcceptLog (default: DropLog)
This is necessary if the server cluster transmits gratitious requests. - ARPRequests: Accept (default: Drop)
This may be necessary if the server cluster transmits queries rather than requests. - ARPChanges: Accept or AcceptLog (default: AcceptLog)
This is necessary, since the hardware address will change when failover occurs. - ARPMatchEnetSender: Ignore or Log (default: DropLog)
Some server cluster implementations build somewhat ugly ARP packets, where the sender address in the MAC header does not match the address supplied in the ARP data. If that is the case, this setting cannot be Drop or DropLog. - ARPMulticast: Accept, Log, Drop or DropLog (default: DropLog)
Some cluster implementations like Windows 2003 servers with IIS requires that this option be set to Accept or Log.
Note that Clavister Security Gateway before 8.30.01 only listens to ARP packets destined to the Security Gateway itself. This presents a problem for the Linux Heartbeat cluster system and MS Cluster Server, which does not send targeted ARP queries when it attempts to update the ARP caches of nearby units.
As of v8.30.01, the Security Gateway will listen to any ARP queries if ARPRequests is set to Accept, and any ARP responses if UnsolicitedARPReplies is set to Accept or AcceptLog.
Note that Clavister Security Gateway before 8.50.02 always sent ARP responses to the MAC address found in the ethernet header of the query. Microsoft NLB apparently does rely on the response to be sent to the source MAC address in the ARP data.
As of v8.50.02 the core sends ARP responses to the source MAC address in the ARP data.
Related articles
11 Jan, 2023 ipsec core vpn
13 Sep, 2024 core
15 Jan, 2024 dictionary troubleshoot core stream incontrol incenter oneconnect cloudservice
10 Mar, 2023 core vpn ikev2 windows radius certificate
24 Mar, 2023 core ipsec ippool dhcp
22 Sep, 2021 core ftps sftp
23 Aug, 2022 core ipreputation
17 Feb, 2023 license core
26 Apr, 2023 core rules
4 Apr, 2023 core tls alg https
21 Oct, 2022 core arp routing
12 Apr, 2023 core proxyarp arp ipsec routing
1 Feb, 2023 core wizard hardware migration netwall
25 Nov, 2022 core hyperv azure
9 Dec, 2022 arp core
14 Nov, 2022 incontrol cli core webui
21 Mar, 2023 core ipreputation log
18 Jan, 2024 arm x86 core
18 Mar, 2024 core certificate oneconnect ipsec vpn
4 Apr, 2023 core vmware highavailability ha promiscuous
24 Apr, 2023 core legacy activedirectory radius userauth
23 Aug, 2022 sslvpn openconnect oneconnect android core
17 Nov, 2022 core license updates idp antivirus wcf ipreputation applicationcontrol
19 Oct, 2022 core wizard setup
8 Sep, 2020 snmp core wireshark
16 Mar, 2023 core incontrol statistics rules
30 Mar, 2022 core ethernet netwall coscore
2 May, 2023 core rules schedule applicationcontrol
4 Apr, 2023 core stateless connections
9 Feb, 2024 core oneconnect windows splittunneling dns
2 Feb, 2021 core sslvpn macos certificate
11 Apr, 2023 ldap core authentication radius
26 Jan, 2023 core rules transpose
23 Nov, 2022 core ipsec
7 Sep, 2022 core cli pcap netwall pcapdump
23 Aug, 2022 core ha cluster
21 Feb, 2023 ipsec certificate windows ca core
17 Oct, 2022 core license
22 Mar, 2021 core ipsec routing
23 Aug, 2022 vmware log ha rarp arp core
18 Mar, 2024 core incontrol certificate oneconnect ipsec vpn
16 Apr, 2024 core routing ospf ipsec
24 Nov, 2022 core snmp
7 Sep, 2023 core ipreputation
15 Apr, 2021 core brokenlink cluster
17 Jun, 2021 core ipsec routing
23 Aug, 2022 core arp garp
16 Feb, 2023 core ssh sshpublickey management
9 Mar, 2021 core ping connections
5 Mar, 2021 sslvpn openconnect oneconnect linux core
4 Apr, 2023 core pcap pcapdump wireshark
8 Apr, 2021 core sslvpn oneconnect interfaces arp
30 Nov, 2022 core routing
1 Jun, 2022 core routing management
8 Mar, 2023 core l2tp ipsec
8 Sep, 2020 core ipreputation blacklist threatprevention
23 Jun, 2021 core connections
31 Mar, 2022 incontrol core netcon netwall ha cluster coscore
12 Apr, 2023 howto core authenticator authentication webauth captive
20 Feb, 2023 core vpn ipsec
25 Nov, 2022 core routing bgp
16 Oct, 2024 core license
24 May, 2021 core howto mdns multicast transparentmode airprint igmp dns
4 Aug, 2023 core ipsec troubleshoot ike
14 Apr, 2021 core license ipsec
8 Sep, 2020 core ipsec rules access
23 Jan, 2024 core howto certificate management letsencrypt
26 May, 2021 kvm core arm x86
29 Mar, 2023 ipsec core windows vpn l2tp
25 Jan, 2022 core ethernet settings
15 Nov, 2022 tcp log core
22 Apr, 2024 core idp security antivirus wcf
11 Apr, 2023 core loopback license
6 Jul, 2021 core stream tcpsequence sequence stateless
10 Oct, 2024 sase oneconnect core userauth
15 Nov, 2022 core cli
2 Nov, 2022 core threshold
27 Feb, 2024 oneconnect userbased core
7 Feb, 2024 core sfp gbic hardware
23 Aug, 2022 core oneconnect
28 Nov, 2022 core configuration oneconnect
8 Mar, 2023 core wcf
5 Apr, 2023 ipsec core
28 Oct, 2020 core howto ethernet packetloss cpu
20 Feb, 2023 ha core idp cli cluster antivirus configuration
24 Nov, 2021 core arm kvm
27 Mar, 2023 core log webui memlog
25 Nov, 2022 core configuration sslvpn management
7 Dec, 2022 pcapdump log cli core logsnoop
29 Jun, 2021 core oneconnect
7 Dec, 2022 ipsec ike troubleshoot core
23 May, 2022 core log logreceiver
14 Dec, 2022 core ipsec
16 Oct, 2023 howto core pbr routing netwall isp
6 Apr, 2023 core radius authentication
20 May, 2021 kvm core arm coscore netwall
20 Mar, 2024 arm x86 core kvm vmware hyperv
27 Mar, 2023 applicationcontrol core
23 Aug, 2022 core behaviour icmp ping traceroute
5 Apr, 2023 core nps ipsec radius legacy
15 Dec, 2022 core routing ospf
14 Mar, 2023 core ipsec vpn ikev2 certificate
11 Apr, 2023 core dns
16 Apr, 2024 core cpu troubleshoot
6 Feb, 2023 core trafficshaping pipes tcp
5 May, 2023 core idp
23 Aug, 2022 core ipsec license memory
19 Apr, 2023 core hyperv serial console log
7 Nov, 2022 core arp log routing
15 Mar, 2023 core ipsec ipv6
17 Feb, 2023 core ha cluster transparentmode l2tpv3
18 Nov, 2022 core cluster
30 Nov, 2020 howto core cloud-init dhcp
15 Dec, 2021 core idp ipreputation log4j
28 Nov, 2022 core stream
24 Mar, 2021 core connections
21 Jun, 2022 core ha hacluster netwall coscore slb
6 Apr, 2023 core ripv2 routing
7 May, 2021 core ethernet vlan arp garp
22 May, 2024 netwall ikev2 windows certificate vpn core
17 Mar, 2023 core routing rules ping icmp cli
10 Oct, 2022 core mtu netwall mtudiscovery
23 Aug, 2022 core connections ipsec memory
14 Mar, 2023 core console
27 Jan, 2021 core stateless routing brokenlink
4 Aug, 2023 core tcp
23 Feb, 2023 core troubleshoot cluster ha
13 Feb, 2023 ipsec core routing failover
13 Feb, 2023 core url httpposter
18 Apr, 2023 core routing transparentmode proxyarp
23 Aug, 2022 sslvpn openconnect oneconnect macos windows linux core
8 Jul, 2021 incontrol domains core
21 Nov, 2022 radius ldap authentication core
28 Mar, 2023 dhcp ipsec core