ADC Training Aug23
ADC Training Aug23
ADC Training Aug23
Corp SE Team
Most ADC deployments involve the utilization of the server load balancing
features.
The purpose of server load balancing:
To distribute traffic across a cluster of servers.
To increase throughput and performance.
Minimizes response times.
Avoids resource overload.
Increases reliability by having server redundancy in a server cluster.
Consists of 3 elements
–Virtual Server(s) : VIP Service Group - Web Web
Representative IP address for the services Application
contains one or more service ports Service Group - DNS DNS
Defines various advanced features Application Server
– Enhanced security
Service Group - SMTP SMTP
– Application acceleration
Application
–Service Group(s)
Service port collection
Contains back-end servers as member
VIP Web
Application
Defines load-balancing algorithm
Health Checks DNS
Application Server
–Server(s)
DNS
Real (back-end) server information Application
Rich health-check techniques
Once a server load balancing decision is made, the A10 ADC will take the
following actions to forward the traffic to the correct server:
• Change the destination MAC address to that of the server (sometimes called layer 2
rewrite or layer 2 NAT)
• Change the destination IP address to that of the real server (sometimes called
destination NAT).
• Change the destination port number (if configured to do so using the port-translation
command under the virtual-port).
• Change the source IP and source port if source-nat is configured
(3)
(2)
Src IP: 20.20.20.154
Src IP: 20.20.20.200
Dst IP: 20.20.20.200
Dst IP: 20.20.20.154
ip nat pool p1 20.20.20.200 20.20.20.200 netmask /32 slb virtual-server vip1 10.10.10.100
Physical interfaces: copper, gigabit fiber, 10 gig fiber, 40 gig fiber or 100gig fiber ports
Switching ASIC: Used for l2/l3 programming and maintaining the mac table. Receive packets and hash's
them based on the src-ip, src-port, dest-ip, dest-port as tuple to select the FPGA via Xaui
FTA(Flexible Traffic Asic): Takes care of CPU selection based on following hash:
L2: Source-MAC-Destination-MAC
L3: Source-IP-Destination-IP
L4: Source-Port-Destination-Port hash
Fragmented packets: IP-ID
CPU: Handles processing of everything including l4-l7 sessions, application data, cgn, natting
SSL acceleration card: takes care of all SSL encryption/decryption. CPU is connected to SSL cards via PCIE links, for SSL
offload traffic, CPU sends traffic to SSL card for processing encryption/decryption, once done SSL card sends traffic
back to CPU. We can have a mThunderimum of 4 SSL cards
Mgmt port: A10 supports an out of band management port which is connected via PCIE directly to the ASIC. This
makes it independent from the data path and even if the device is under attack or data plane stops working you can
still control the device via mgmt port
Control CPU: Takes care of control functions like CLI, GUI, health checking
ACOS features a shared memory architecture which sets us apart from competition. This shared memory
stores everything including session tables, buffer information, application data etc. The memory is shared
between all CPU’s and thus saves a lot of extra processing
For competition there is a dedicated memory per CPU and each CPU is not aware of what is stored in the
other memory block, this arises the need for a dedicated CPU to communicate between different
memory blocks to consolidate information and provide to data CPU’s. This is called as inter processor
communication channel (IPC). This causes a lot of overhead communicating between different memory
blocks to consolidate information
This shared memory architecture makes ACOS a lot faster and efficient and saves a lot of extra processing
cycles.
10M
Thunder 7440
Thunder 5840
Thunder 5630 Thunder 6440
5M
Thunder 6430
Thunder 5440
Thunder 5430-11
Thunder 5330
3M
Thunder 4440
Thunder 4430
Thunder 3430
Thunder 3230
1M
Thunder 3040 All inclusive licensing
Thunder 1030S
Thunder 840
7.1M
Thunder 6635 SPE (100GbE)
Thunder 6435 SPE
L4 CPS
3.7M
Thunder 5435 SPE
3.1M
Thunder 4435 SPE
Confidential | ©A10 Networks, Inc. * SPE (Security Policy Engine) acceleration included 23
Thunder ADC Hybrid Virtual Appliances (HVA)
40 VMs
8 VMs
Bare Metal
Bare Metal
vThunder
Bare Metal
L4 CPS
vThunder
vThunder
vThunder
vThunder (Perpetual Licensing)
All ADC features inclusive
vThunder VMware, KVM, Hyper-V hypervisors support
DPDK, SR-IOV supported*
Public could: Azure, and AWS hypervisors
vThunder
200 Mbps 1 Gbps 4 Gbps 8 Gbps 10 Gbps 20 Gbps 40 Gbps
Throughput
4 Cores 8 Cores 14 Cores
Confidential | ©A10 * Depending on hypervisor
Networks, Inc. 25
Other vThunder Appliances and Flexible Billing Options
Advantages
Ease of configuration and deployment.
Ease of troubleshooting.
Disadvantages
No layer 3 functionalities.
Dependent on L3 device for routing decisions.
Thunder processes pass through L2/L3 traffic.
routes
Ve20.20.20.101.1 Dest IP: 20.20.101.50
Router/gateway mode.
Full support for Layer 2 functionalities: ARP, Vlans, tagged/untagged interfaces, logical link aggregation, multi-
netted environment.
Full support for Layer 3 functionalities: IP NAT, Access-list, static routes, RIP, OSPF, IS-IS, and BGP.
Advantages
Easy to integrate into Layer 2 and Layer 3 network.
Ease of troubleshooting.
Disadvantages
Can easily become over complicated when many features are configured.
Thunder processes pass through L2/L3 traffic.
From server perspective, all traffic is sourced (4) Source IP: 20.20.101.203
Advantages
Ease of network integration, configuration and
deployment.
Thunder does not process pass-through L2-3
traffic.
Server1: 20.20.101.50 Server3: 20.20.101.52
Disadvantages Server2: 20.20.101.51 Server4: 20.20.101.53
No layer 3 functionalities.
Dependent on L3 device for routing decisions.
Confidential | ©A10 Networks, Inc. 37
Configuration: Transparent One-armed Mode
Source-NAT Configuration Switched Mode: Verfication Commands:
show interface brief
======================= show ip
show arp
vlan 20
show mac
untagged ethernet 3 show slb server
! show slb virtual
ip address 20.20.101.2 255.255.255.0 show slb service-group
ip default-gateway 20.20.101.1 /24 show ip nat pool stat
! show session
ip nat pool src-nat-pool 20.20.101.210 20.20.101.210 netmask /24
======================= AX2500(config)#sh int brief
Port Link Dupl Speed Trunk Vlan MAC IP Address IPs Name
slb server web-50 20.20.101.50 ------------------------------------------------------------------------------------
mgmt Up Full 1000 N/A N/A 001f.a001.ef74 192.168.144.164/24 1
port 80 tcp
1 Disb None None None 10 001f.a004.03c8
! 2 Disb None None None 10 001f.a004.03c9
slb server web-51 20.20.101.51 3 Up Full 1000 None 10 001f.a004.03ca
port 80 tcp 4 Disb None None None 1 001f.a004.03cb
! 5 Disb None None None 1 001f.a004.03cc
slb server web-52 20.20.101.52 6 Disb None None None 1 001f.a004.03cd
port 443 tcp 7 Disb None None None 1 001f.a004.03ce
! 8 Disb None None None 1 001f.a004.03cf
slb server web-53 20.20.101.53 9 Disb None None None 1 001f.a002.8c94
port 443 tcp 10 Disb None None None 1 001f.a002.8c95
11 Disb None None None 1 001f.a002.8c96
!
12 Disb None None None 1 001f.a002.8c97
slb service-group https tcp
member web-52:443 AX2500#show ip
member web-53:443 System is running in Transparent Mode
! IP address: 20.20.101.2 255.255.255.0
slb service-group http tcp IP Gateway address: 20.20.101.1
member web-50:80 SMTP Server address: Not configured
member web-51:80
! AX2500#sh arp
slb virtual-server src-nat-vip-203 20.20.101.203 Total arp entries: 6 Age time: 300 secs
IP Address MAC Address Type Age Interface Vlan
port 80 tcp
---------------------------------------------------------------------------
name _20.20.101.203_TCP_80 20.20.101.1 001f.a002.60aa Dynamic 154 ethernet 3 10
source-nat pool src-nat-pool 20.20.101.50 000c.299c.6853 Dynamic 69 ethernet 3 10
service-group http 20.20.101.51 000c.299c.6853 Dynamic 185 ethernet 3 10
port 443 tcp 20.20.101.52 000c.299c.6853 Dynamic 69 ethernet 3 10
name _20.20.101.203_TCP_443 20.20.101.53 000c.299c.6853 Dynamic 69 ethernet 3 10
source-nat pool src-nat-pool 192.168.144.1 001f.a002.eec3 Dynamic 1 Management 1
service-group https
Prot Forward Source Forward Dest Reverse Source Reverse Dest Age Hash Flags
----------------------------------------------------------------------------------------------------------------
Tcp 20.20.1.10:20395 20.20.101.203:80 20.20.101.50:80 20.20.101.254:14880 0 1 NFe0
Tcp 20.20.1.10:20660 20.20.101.203:80 20.20.101.51:80 20.20.101.254:15145 0 1 NFe0
Tcp 20.20.1.10:20655 20.20.101.203:80 20.20.101.50:80 20.20.101.254:15140 0 1 NFe0
Tcp 20.20.1.10:20415 20.20.101.203:80 20.20.101.50:80 20.20.101.254:14900 0 1 NFe0
Tcp 20.20.1.10:20480 20.20.101.203:80 20.20.101.51:80 20.20.101.254:14965 0 1 NFe0
Tcp 20.20.1.10:20580 20.20.101.203:80 20.20.101.51:80 20.20.101.254:15065 0 1 NFe0
Tcp 20.20.1.10:20465 20.20.101.203:80 20.20.101.50:80 20.20.101.254:14950 0 1 NFe0
Tcp 20.20.1.10:20690 20.20.101.203:80 20.20.101.51:80 20.20.101.254:15175 0 1 NFe0
Tcp 20.20.1.10:20720 20.20.101.203:80 20.20.101.51:80 20.20.101.254:15205 0 1 NFe0
Tcp 20.20.1.10:20745 20.20.101.203:80 20.20.101.50:80 20.20.101.254:15230 0 1 NFe0
Tcp 20.20.1.10:20695 20.20.101.203:80 20.20.101.50:80 20.20.101.254:15180 0 1 NFe0
clients
Source NAT is used for communication with
the server if server is in different subnet. A
separate pool is configured for each server Server1: 10.20.101.50 Server1: 10.20.101.52
Server2: 10.20.101.53
Server2: 10.20.101.51
subnet. Else server can point to VE as
default gateway
Confidential | ©A10 Networks, Inc. 41
One-armed Router Mode
Router/gateway mode.
Full support for Layer 2 functionalities: ARP, Vlans, tagged/untagged interfaces, logical link aggregation, multi-
netted environment.
Full support for Layer 3 functionalities: IP NAT, Access-list, static routes, RIP, OSPF, IS-IS, and BGP.
Advantages
Easy to integrate into Layer 2 and Layer 3 network.
Ease of troubleshooting.
Thunder may not processes pass through L2/L3 traffic.
Disadvantages
May need to manipulate routes on servers and other network devices.
Port translation is not possible because port selection is done at Layer 4. A10 does
not change anything in the packet beyond Layer 2 ( MAC addresses) in L2 DSR.
LB and all servers should be on the same L2 network segment.
Server needs to know the following: This extra information is saved in the
-clients source IP address Differentiated Services Code Point
(DSCP) in the IP header, originally
-VIP address for which the request was known as Type of Service which has 6
made free bits.
LB needs to do the following The VIP IP is mapped to these 6
-tell the server behind the VIP the unused bits.
source IP address of the client LB and server work on this mutually
-send the request to the real server IP agreed DSCP VIP mapping
and not the VIP IP
-tell server the original destination
address(VIP IP)
(3)
Add
Define the health monitor iptables -t mangle -A INPUT -m dscp --dscp 10 -j DADDR --set-daddr=5.5.5.101
health monitor l3dsr where X is the dscp value and 1.2.3.4 is the loopback IP on the server.
slb dsr-health-check-enable
health-check dscp
member s1:80
Floating IP: This is the IP address that Tracking Options: Determine the
provides redundancy for the default events to be tracked in order to
gateway IP address used by the trigger a failover. Vlans, interfaces,
downstream devices gateways can be tracked to trigger a
Configure sync: to sync configuration failover.
between the VRRP-A devices. Can VRRP interface: Define an interface to
be done via both management port be used specifically to send out the
and data port. heartbeat messages between the
Session sync: Also called connection VRRP peers
mirroring, session synchronization
sends information about active client
sessions to the Standby Thunder
device. If a failover occurs, the client
sessions are maintained without
interruption. Use ha-conn-mirror to
enable session syncing on individual
Confidential | ©A10 Networks, Inc. 67
Deployment Modes: Active-Standby Mode
Thunder1 Thunder2
vrrp-a common
device-id 1 vrrp-a common
set-id 1 device-id 2
enable set-id 1
enable
! Vlan 10 !
vrrp-a vrid 0 Ve 10.10.10.0/24 vrrp-a vrid 0
floating-ip 10.10.10.3
floating-ip 20.20.20.3 floating-ip 10.10.10.3
blade-parameters heartbeat floating-ip 20.20.20.3
priority 200 blade-parameters
vrrp-a vrid 1 Vlan 30 priority 100
floating-ip 10.10.10.4 Eth3 vrrp-a vrid 1
floating-ip 20.20.20.4 Active for VIP1 Vlan 20
Ve 30.30.30.0/24 Standby for VIP1 floating-ip 10.10.10.4
floating-ip 20.20.20.4
blade-parameters
priority 150 Standby for VIP2 Ve 20.20.20.0/24 Active for VIP2 blade-parameters
priority 210
!
vrrp-a interface ethernet 3 !
vlan 30 vrrp-a interface ethernet 3
vlan 30
Slb virtual-server vip1 10.10.10.100
Port 80 tcp Slb virtual-server vip1 10.10.10.100
ha-conn-mirror Port 80 tcp
service-group sg1-http ha-conn-mirror
service-group sg1-http
Slb virtual-server vip2 10.10.10.101
vrid 1 Slb virtual-server vip2 10.10.10.101
Port 80 tcp vrid 1
ha-conn-mirror Port 80 tcp
service-group sg2-http ha-conn-mirror
service-group sg2-http
Device with the highest weight or In case the standby device fails then
priority will become the active unit. the backup device with highest
If multiple devices have same priority priority takes over, in case of tie the
then device with lowest device ID lowest device ID takes over.
becomes the active device
In a set with more than 2 devices the
device with second highest priority
becomes the hot standby and
remaining devices act as backup
If multiple secondary devices have
the same priority then the one with
the lowest device ID becomes the
hot standby
The standby ACOS device stops The VRRP-A priority on the active
receiving VRRP-A hello messages device is manually reduced below
from the active ACOS device. the priority on the standby device by
Using Tracking options: The VRRP-A an administrator, and preemption is
priority on the active device is enabled.
dynamically reduced below the The force-self-standby option is used
priority on the standby device. The on the active device by an
priority can be dynamically reduced administrator.
when a tracked default gateway, Policy based failover defined by
data port, or VLAN goes down, a configuration templates.
tracked route is not in the data route
table or a server bound to a service
group in a VIP fails its health check.
ACOS-Active(config-common)# exit prompt updated to refect status ACOS-Standby(config-common)# exit prompt updated to reflect status
ACOS-Active(config-vrid:13)#blade-parameters ACOS-Active(config-vrid:13)#blade-parameters
ACOS-Active(config-vrid:13-blade-parameters)#tracking-options ACOS-Active(config-vrid:13-blade-parameters)#tracking-options
Define vrrp interface to send hello messages Define vrrp interface to send hello messages
ACOS-Active(config)#vrrp-a interface ethernet 2 ACOS-Active(config)#vrrp-a interface ethernet 2
Define the preffered session sync port for session syncing Define the preffered session sync port for session syncing
ACOS-Active(config)#vrrp-a preferred-session-sync-port ethernet 3 vlan 200 Confidential |ACOS-Active(config)#vrrp-a
©A10 Networks, Inc. preferred-session-sync-port ethernet 3 vlan 200 76
Configuration Contd.
On active: On Standby
vThunder_150-Active(config)#show vrrp-a vThunder_151-Standby(config)#show vrrp-a
vrid 0 vrid 0
Unit State Weight Priority Unit State Weight Priority
1 (Local) Active 65534 200 2 (Local) Standby 65534 150 *
became Active at: Apr 11 17:07:14 2017 became Standby at: Apr 11 17:07:06 2017
for 0 Day, 0 Hour,20 min for 0 Day, 0 Hour,20 min
2 (Peer) Standby 65534 150 * 1 (Peer) Active 65534 200
vrid that is running: 0 vrid that is running: 0
#show vrrp-a
#show run vrrp-a
#show vrrp-a detail
#show vrrp-a statistics
#show vrrp-a mac
VRRP-A vrid MACs
0 021f.a000.0001
Inline mode is only supported with single Priority is recalculated for each vrid
Vrid group every few seconds.
By default VRRP-A uses IP multicast To prevent unnecessary failover
address(224.0.0.210) as destination for configure track event delay.
VRRP-A heartbeat messages. Preemption enabled by default, which
Total of 512 VRIDS can be configured means any manual change in the
system-wide, 32 on shared(numbered 0- priority will trigger a failover in 3 secs
31) and 8 on each L3V Configure preemption delay to allow
partition(numbered 0-7) enough time for the session
The virtual MAC assigned for each VRID synchronization before failover happens.
is numbered as follows Default is 6 seconds.
021f.a000.nnnn Force self standby if applied to shared
The last 2 bytes (nnnn portion) of the applies to all vrids on all partitions, if
applied in private partition only applies
address indicate the partition ID, VRRP-A
set ID, and VRID to that partitions in that vrid
Session sync happens only between Priorities are defined under vrid config
active and standby device(hot and can be changed under vrids.
standby) Weights can only be changed using
Session sync applies to L4 sessions. the policy template.
Does not apply to DNS, Natted ICMP Preemption cannot be disabled for
sessions or to static NAT sessions. weights it is enabled by default.
If no interface is defined as VRRP
interface then by default interface
which can reach the other device is
used for VRRP hello messages.
If a interface is explicitly configured
for VRRP then all hello messages for
shared and L3V are sent on this
interface for all vrids. This operation
can only be prepared in the shared
partition Confidential | ©A10 Networks, Inc. 81
HTTP Load Balancing
HTTP load balancing and features
HTTP load balancing manages HTTP traffic across a Web server farm.
ACOS supports the following services types for HTTP virtual-port:
HTTP – Complete TCP stack. Use this service type if you plan to customize any
templates. For example, if you plan to use SSL (HTTPS load balancing or SSL
offload), or customize the HTTP template to change information in the HTTP
headers of server replies, use the HTTP service type. Also use this service type for
stream-based applications such as RAM Caching and compression.
Fast-HTTP – Streamlined hybrid stack for high performance. If you do not plan to
offload SSL or customize any templates, use Fast-HTTP.
HTTP templates provide many SLB options. Some options control selection of real
servers or service groups, while other options modify HTTP header information or
enhance website performance.
HTTP templates can be used with the following service (virtual port) types:
• HTTP
• HTTPS
• Fast-HTTP (does not support all options under the template)
Options for Server and Service Group Selection Performance Enhancing Options
URL hash switching – Selects a real server based on a hash HTTP Packet Flow Modes – ACOS devices define two
value calculated from part of the URL string. HTTP/HTTPS proxy packet flow modes that specify the device
method of managing High-speed HTTP Content Replacement
URL / host switching – Selects a service group based on the – Allows quick configuration of content replacement in HTTP
URL path or domain in the client’s GET request. replies from load-balanced servers.
Failover URL – If the URL in GET request cannot be reached Content Compression – You can configure the ACOS device
due to server unavailability, the ACOS device sends a 302 to offload content compression from real servers.
Redirect to the client.
Options that Modify HTTP Requests
5xx retry and reassignment – Retries a server that replies to a
request with a 5xx status code instead of sending the status Client IP insertion – Inserts the client’s IP address into GET
code to the client, and reassigns the request to another requests before sending the requests to a real server. The
server if the first server continues to reply with a 5xx status address is added as a value to the X-ClientIP field by default.
code.
Header insertion / erasure – Inserts a field:value pair into
Strict transaction switching – Performs server selection for requests or responses, or deletes a header.
each request within a client-server session, rather than
performing server-selection once per session. This option Options that Modify Server Replies
provides a simple method to force rebalancing of server Redirect rewrite – Modifies 302 Redirect messages from real
selection. servers before sending the redirect messages to clients. This
Non-HTTP bypass – Redirects non-HTTP traffic to a specific option can convert HTTP URLs into HTTPS URLs, and can
service group. This feature helps prevent non-HTTP traffic from modify the domain or URL path in the redirect message.
being dropped by the ACOS device.
Using URL / Host Switching along with Cookie Persistence: The following command configures an HTTP template that
ACOS supports use of URL / host switching and cookie inserts “Cookie: c=3” into every HTTP request. If the request
persistence in the same SLB configuration. However, to already contains “Cookie” headers, the first header is
enable this support, you must enable the match-type service- replaced.
group option in the cookie persistence template.
ACOS(config)# slb template http replace-cookie
ACOS(config)# slb template persist cookie persist-cookie-sg
ACOS(config-HTTP template)# request-header-insert "Cookie: c=3"
ACOS(config-cookie persist)# name SGCookie
Useful commands:
• Show slb http-proxy
• Show slb http-proxy detail
• Show slb http-proxy debug
Ram Cache is a high performance in-memory Web cache, it can store variety of
static and dynamic content.
Its a feature that allows HTTP responses to be cached (temporarily stored) on the
A10 device.
The A10 device stores these HTTP responses in memory and serves it to clients
directly from the cache, when requested.
HTTP/HTTPS HTTP/HTTPS
requests requests
HTTP/HTTPS
responses
HTTP/HTTPS RAM Caching
responses
If HTTP GET request contains any of the following headers, the response is not cached.
– “Authorization”
– “Proxy-Authorization”
– “If-Match”
– “If-Unmodified-Since”
If HTTP response contains any of the following headers, the response is not cached.
– “Pragma”
– “Cache-Control”
No-Cache
No-Store
Private
– “Set-Cookie”
By default, the A10 inserts the “Age” and “Via” headers into responses served from the
cache.
“Age” header specifies how long the cached response has been in the cache, in
seconds.
“Via” header provides a little bit of information about the A10. The value of this header
has the following format:
– “A10-CACHE-<software-version(major.minor)>: <last-octet-of-VIP-address>
You can disable the insertions of these headers using the “disable-insert-age” and
“disable-insert-via” options under the cache template.
HTTP/1.1 200 OK
Server: Thunder-3200
Date: Thu, 04 Mar 2010 20:46:23 GMT
Content-Type: text/plain
Content-Length: 4096
Last-Modified: Fri, 29 Jan 2010 00:37:46 GMT
Age: 230
Via: A10-CACHE-4.1:130
When no RAM caching policies are configured (default), the Thunder caches
everything that meets the requirements of the cache template as long as the
content is cacheable.
Thunder has the option to configure policies, which provides more granular
control over what is and isn’t cache.
Policies also provide you the ability to invalidate entries that are currently in the
cache, forcing the Thunder to re-fetch content from the real server.
You have a Web application with the following URLs and actions
–http://x.y.com/list Lists all items from database
http://x.y.com/add?a=p1&b=p2 Adds item to database
http://x.y.com/del?c=p3 Deletes item from database
http://x.y.com/private?user=u1 Private info for user
The “list” URI gets a lot of hits. It makes sense to cache that URI while it remains up
to date. However, when the user does an add/delete operation, or one of the
other URIs arrives, the database would change and the cached list needs to be
refreshed
#show session
Notice that if content is served from the cache, you will see * in the “Reverse
Source” and “Reverse Dest” fields.
HTTP Response: HTTP/1.1 200 OK [CACHE] Date: Thu, 23 Aug 2012 21:31:06 GMT
[CACHE] Date: Thu, 23 Aug 2012 21:31:06 GMT [CACHE] Content-Type: text/html; charset=iso-8859-1
[CACHE] Content-Type: text/html; charset=UTF-8 [CACHE] Cache miss. Creating entry to store response...
[CACHE] Response has Content-Length header [CACHE] Cache entry 0x93a55410: saved 250 bytes...
[CACHE] Request cacheable: cache enabled via aFleX [CACHE] Cache entry 0x93a55410: saved 672 bytes...
[CACHE] Response code 200: Cacheable [CACHE] Cache entry 0x93a55410: saved response 922 bytes total.
[CACHE] Headers: 231 bytes, Payload: 672 bytes, Total: 0 bytes [CACHE] Successfully saved response (922 bytes) in cache
HTTP/HTTPS
HTTP/HTTPS
HTTP Compression
Configure HTTP compression template Apply template to the virtual service port
ACOS(config)# slb template http http-compress slb virtual-server VIP-HTTP 10.10.10.100
ACOS(config-HTTP template)# compression enable port 80 http
ACOS(config-HTTP template)# compression level 5 service-group SG-HTTP
ACOS(config-HTTP template)# compression content-type image template http http-compress
ACOS(config-HTTP template)# compression exclude-content-type
application/zip
---------------------------------------------------------------------------------
Total/Avg 0.00 0.00B/0.00B 0.00B
Application
Application
SSL / TLS
TCP TCP
Network Network
Data Data
Versions supported
SSL v3.0
TLS v1.0 (default)
TLS v1.1
TLSv1.2
(1)Client Hello: SSL Version, Ciphers Supported, Session ID, session specific data
(2)Server Hello: SSL Version, Cipher Settings, assigned Session ID, session specific Data
Server Certificate (Public Key, Authentication Signature) Client Certificate Request (optional)
Create a pre-master secret for the session depending on the cipher selected and encrypt it with servers public key
(4) Client Key Exchange: Send premaster secret + client Certificate if requested
Server uses its private key to decrypt the pre-master secret, and compute a shared secret, verify client certificate
(Generate sessions keys which are used to encrypt and decrypt information exchanged during SSL session
CA-signed
To obtain a CA-signed certificate, an admin creates a key and a Certificate
Signing Request (CSR), and sends the CSR to the CA. The CSR includes the key. The
CA then creates and signs a certificate. The admin installs the certificate on the
ACOS device. When a client sends a HTTPS request, the ACOS device sends a
copy of the certificate to the client, to verify the identity of the server (ACOS
device).
Self-Signed
Self-signed certificate is a certificate that is created and signed by the ACOS
device. CA is not used to create or sign the certificate
Note: If you configure the ACOS device to present a self-signed certificate to clients, the client’s browser
may display a certificate warning. This can be alarming or confusing to end users. Users can select the option
to trust a self-signed certificate, in which case the warning will not re-appear.
cert
– Specifies the certificate that the A10 will use (as a server)
ca-cert (optional)
– Used to authenticate client certificate
– Only used if “client-certificate request/require” is used
chain-cert (optional)
– Uses the intermediate cert, if necessary
cipher (optional)
– Chooses the cipher suite that A10 will allow
close-notify
–A10 will send a close_notify message to client before the SSL transaction is over
Some applications require this, such as PHP cgi.
3. (optional)
Validate server 2. Server public certificate
certificate
NOTE: If you replace a certificate and key in a client-SSL or server-SSL template, you must unbind the
template from the virtual ports that use it, then rebind the template to the virtual ports, to place the change
into effect.
Confidential | ©A10 Networks, Inc. 123
Server-SSL Template Options
ca-cert
– Used to authenticate back-end server certificate
key
Specifies the private key that the
cert A10 will use
– Specifies the client-certificate that the A10 will use Only used if the back-end server
uses client certificate request
– Only used if the back-end server uses client
certificate request
version
cipher Version of SSL that is being used.
– Chooses the cipher suites that A10 will allow TLSv1.2
close-notify SSLv3.0
TLSv1.0 (SSLv3.1)
– A10 will send a close_notify message to server
before the SSL transaction is over
Import or create a certificate and its key to use for TLS sessions Configure the real servers for the TCP service:
with clients.
ACOS(config)#slb server HTTPS1 10.5.5.2
ACOS#import cert sslcert1.crt ftp:
ACOS(config-real server)#port 80 tcp
Address or name of remote host []?1.1.1.2
ACOS(config)#slb server HTTPS2 10.5.5.3
User name []?Admin-15
ACOS(config-real server)#port 80 tcp
Password []?*********
The following configures a service group for the HTTPS servers:
File name [/]?sslcert1.crt
ACOS(config)#slb service-group HTTPS_servers tcp
ACOS#import key sslcertkey.pem ftp:
ACOS(config-slb svc group)#member HTTPS1 80
Address or name of remote host []?1.1.1.2
ACOS(config-slb svc group-member:80)#member HTTPS2 80
User name []?Admin-15
Configure a virtual server and add a virtual port that has the
Password []?********* service type https. Bind the service-group to the virtual port
File name [/]?sslcertkey.pem
and to the HTTP template (if configured) and client-SSL
template.
Configure a client SSL template and bind the certificate and
ACOS(config)#slb virtual-server v1 10.6.6.6
key to it.
ACOS(config-slb vserver)#port 443 https
ACOS(config)#slb template client-ssl sslcert-tmplt
ACOS(config-slb vserver-vport)#service-group HTTPS_servers
ACOS(config-client ssl)#cert sslcert.crt
ACOS(config-slb vserver-vport)#template client-ssl sslcert-tmplt
ACOS(config-client ssl)#key sslcertkey.pem
The SSL offload feature is enabled by the https option of the port
command.
• ACOS provides encrypted connection on both client side and server side
• Client connects to the VIP via https
• ACOS device acts as the server and provides certificate to client for server verification
• ACOS initiates HTTPS connection with the server.
• Server provides with its certificate to ACOS and a secure connection is established with server
as well
• Provides end-to-end encryption Encrypted
Import or create a certificate and its key to use for TLS sessions Configure the real servers for the tcp service listening on
with clients. https:
ACOS#import cert sslcert1.crt ftp: ACOS(config)#slb server HTTPS1 10.5.5.2
Address or name of remote host []?1.1.1.2 ACOS(config-real server)#port 443 tcp
User name []?Admin-15 ACOS(config)#slb server HTTPS2 10.5.5.3
Password []?********* ACOS(config-real server)#port 443 tcp
File name [/]?sslcert1.crt The following configures a service group for the HTTPS servers:
ACOS#import key sslcertkey.pem ftp: ACOS(config)#slb service-group HTTPS_servers tcp
Address or name of remote host []?1.1.1.2 ACOS(config-slb svc group)#member HTTPS1 443
User name []?Admin-15 ACOS(config-slb svc group-member:80)#member HTTPS2 443
Password []?********* Configure a virtual server and add a virtual port that has the
File name [/]?sslcertkey.pem service type https. Bind the service-group to the virtual port
and to the HTTP template (if configured),client-SSL template
Configure a client SSL template and bind the certificate and and server-ssl template
key to it.
ACOS(config)#slb virtual-server v1 10.6.6.6
ACOS(config)#slb template client-ssl sslcert-tmplt
ACOS(config-slb vserver)#port 443 https
ACOS(config-client ssl)#cert sslcert.crt
ACOS(config-slb vserver-vport)#service-group HTTPS_servers
ACOS(config-client ssl)#key sslcertkey.pem
ACOS(config-slb vserver-vport)#template client-ssl sslcert-tmplt
3. Configure a server SSL template and optionally bind the CA to it
ACOS(config-slb vserver-vport)#template server-ssl ca-cert
ACOS(config)#slb template server-ssl ca-cert
Confidential | ©A10 Networks, Inc. 132
End-to-End SSL
Advantages
–This setup would mainly be used by customers who need to make sure that all of their traffic
will always be encrypted (I.E: Banks) while taking advantage of the A10 L7 Features
Disadvantages
–There is an additional SSL handshake that needs to take place between the A10 and server
–The server still has to have the cert/key and so there is no load taken off of the server.
• In SSL proxy, the ACOS device acts as a Layer 4 SSL proxy for TCP services such as POPS,
SMTPS, IMAPS, and LDAPS. It combines TCP load balancing (Layer 4 SLB) with these proxy
services.
• Client connects to the VIP via HTTPS
• ACOS device acts as the server and provides certificate to client for server verification
• ACOS initiates encrypted/decrypted connection with the server.
• Requires Client SSL template on V-Port Encrypted
Decrypted
SSL Request Encrypted/decrypted
Import or create a certificate and its key to use for TLS sessions Configure the real servers for the TCP service. The following
with clients. commands configure proxy SSL for POPS
ACOS#import cert sslcert1.crt ftp: ACOS(config)#slb server POP1 10.5.5.2
Address or name of remote host []?1.1.1.2 ACOS(config-real server)#port 110 tcp
User name []?Admin-15 ACOS(config)#slb server POP2 10.5.5.3
Password []?********* ACOS(config-real server)#port 110 tcp
File name [/]?sslcert1.crt 3. The following commands configure a service group for the POP servers:
ACOS#import key sslcertkey.pem ftp: ACOS(config)#slb service-group POP_servers tcp
Address or name of remote host []?1.1.1.2 ACOS(config-slb svc group)#member POP1 110
User name []?Admin-15 ACOS(config-slb svc group-member:110)#member POP2 110
Password []?********* The following commands configure a virtual server (VIP)
File name [/]?sslcertkey.pem which proxies for the service POP server (port 110): The
following commands configure the VIP to which clients will
Configure a client SSL template and bind the certificate and send POPS traffic (that is, port 110):
key to it.
ACOS(config)#slb virtual-server v1 10.6.6.6
ACOS(config)#slb template client-ssl sslcert-tmplt
ACOS(config-slb vserver)#port 110 ssl-proxy
ACOS(config-client ssl)#cert sslcert.crt
ACOS(config-slb vserver-vport)#service-group SMTP_servers
ACOS(config-client ssl)#key sslcertkey.pem
ACOS(config-slb vserver-vport)#template client-ssl sslcert-tmplt
Older models use Nitrox-PX cards which has less cores does not support PFS ciphers
(ECDHE/DHE)
Some AX models and all Thunder models use Nitrox-III which supports ECDHE/DHE
starting 2.7.2-P2
Some systems have PX card installed on board and a Nitrox-III can be added later.
When both cards are present, Thunder will use Nitrox-III only (e.g. Thunder3400)
All Nitrox-III are not same. They have different number of cores. To confirm use the
‘show hardware’ and ‘show slb ssl stat’ command. This command is not available in
2.6 code.
Note: ECHDE/DHE performance has been optimized a lot in the later 2.7.2 releases
and hence always recommend customer to use 2.7.2 latest patch.
We use HSM cards as well in some systems which are used for FIPS compliance.
ACOS#
Confidential | ©A10 Networks, Inc. 138
Cipher Support ECDHE/DHE & Optimization
ACOS also provides support for ECDHE/DHE ciphers, including ECDHE-RSA ciphers,
DHE-RSA ciphers, ECDHE-ECDSA ciphers, and GCM & SHA384. This feature also
allows for the configuration of EC and DH parameters, EC Curve selection, the
importing/verification of EC Keys for ECDSA ciphers, and support for TLS1.0/TLS1.1.
Offload data CPU by configuring ec-names which enables Nitrox card hardware
to process the ECDHE/DHE client traffic thus lowering the data CPU’s
Nitrox III SSL card only offers hardware support for two Elliptical Curves, ec-name
secp256r1 and secp384r1, which must be explicitly configured in the client SSL
template to take advantage of hardware offload.
When processing a SSL handshake, if the user has configured a template for both
ECDHE and DHE with the same priority levels, the priority is given to ECDHE over
DHE to optimize CPU usage on the ACOS device. DHE ciphers will be considered
as the lowest priority if there are other supported ciphers in the client-hello
message.
DDoS Mitigation
–Check traffic for IP anomalies
Policy-based SLB (PBSLB)
–Black/White List individual clients or subnets
IP Limiting (Rate Limiting)
- enhanced connection limit and rate limit
SYN Cookie
- Protects against TCP SYN flood attack
WAF
IP Anomaly filtering detects and drops packets that contain common signature
DDoS attacks
Following filters are currently available
PBSLB can load balance traffic based on user defined policy, which can be
dropping packets, resetting connections, limiting concurrent connections, limiting
connection rate and selecting a service group.
ACOS allows you to black-list or White-list individual client or client subnets.
For white-lists the traffic can be steered to a different service-group.
For black-lists you can specify the action to be taken (drop or reset) on a new
connection that exceeds the configured connection threshold.
PBSLB can be applied on a system-wide basis or on individual virtual-ports.
IP lists for PBSLB can be configured by using BW-list or class list.
B/W List: It is an IP/subnet list that maps IP lists to a group ID which define the rules
to be applied to the IP list. It also provides connection limit feature.
It can be created on external device and imported to ACOS or created on the
ACOS device on GUI/CLI
It can contain upto 8million individual host addresses and upto 64000 subnets
Syntax for bw-list
ipaddr [/network-mask] [group-id] [#conn-limit] [;comment-string]
Import the black-white list from the remote host Bind it to the virtual-port
ACOS(config)# import bw-list sample-bwlist tftp://myhost/TFTP- ACOS(config)# slb virtual-server PBSLB_VS1 10.10.10.69
Root/ACOS_bwlists/sample-bwlist.
ACOS(config-slb vserver)# port 80 http
Display the imported bw-list ACOS(config-slb vserver-vport)#service-gorup sg1-http
ACOS(config)# show bw-list ACOS(config-slb vserver-vport)# template policy bw1
Name Url Size(Byte) Date
Display the pbslb information
------------------------------------------------------------------------------
ACOS(config-slb vserver-vport)# show pbslb
sample-bwlist tftp://myhost/TFTP-Root/ACOS_ N/A N/A
Total number of PBSLB configured: 1
bwlists/sample-bwlist.txt Virtual Server Port Blacklist/whitelist GID Connection # (Establish Reset Drop)
Total: 1 ------------------------------------------------------------------------------
Create the policy template, bind the imported bwlist PBSLB_VS1 80 sample-bwlist 2 0 0 0
Importing from remote host: Age: removes a host entry from class list after specified
number of minutes. (not supported for subnets)
ACOS(config)#import class-list class_list ftp://1.1.1.2/home/user/class_list
Global Limit number (Glid/Lid): Number from 1-31 that
User name []? ACOSadmin
identifies the rule
Password []? *********
Connection limit: Maximum number of concurrent
Using CLI:
connections that are allowed for a client.
Creating class list on CLI: Connection rate limit: Maximum number of new connections
that are allowed for a client in a given limit period.
class-list <name> [type] Request limit: Maximum number of concurrent Layer 7
ipaddr/network-mask [glid num|lid num][age minutes][;comment-string] requests allowed for a client
Defining glids Request-rate limit: maximum number of layer 7 requests that
glid <id>
are allowed for a client in the limit period
conn-limit <conn-limit-num> Over limit action: action to take when a client exceeds at
least one limit: drop/reset/forward. If logging is enabled
conn-rate-limit(num) per <num-of-100ms> ACOS also generated a log
request-limit <request-limit-num> Lockout period: Number of minutes during which to apply the
request-rate-limit (num) per <num-of-100ms> over-limit-action over limit action after the client exceeds the limit.
[forward|reset] [lockout] [log ]
Logging: generated log messaged when clients exceed a
limit.
Here is an example of a simple class list. This list matches on all clients and uses an IP
limiting rule that is configured at the global configuration level:
0.0.0.0/0 glid 1
Create class-list with the IP rules and their glid/lid Bind the policy template to the virtual-port
binding ACOS(config)# slb virtual-server vs-55 55.1.1.55
ACOS(config)# class-list 2 ACOS(config-slb vserver)# port 80 http
ACOS(config-class list)# 5.1.1.100/32 glid 1023 ACOS(config-slb vserver-vport)# service-group sg1-http
ACOS(config-class list)# 55.1.1.0/24 lid 31 ACOS(config-slb vserver-vport)# template policy global_policy
ACOS(config-glid:1023)# request-limit 10
ACOS(config-policy)# class-list 2
ACOS(config-policy-class-list:l3)# lid 31
ACOS(config-policy-class-list:l3-lid:31)# request-limit 10
Request limit and request rate limit only applicable to policy templates bound to
a virtual-port. They can only be applied to HTTP, fast-HTTP and HTTPS virtual-ports.
Wild card entries such as “0.0.0.0/0” can be configured in a bw-list or class-list and
applied globally and is used by system-wide PBSLB policy
When a client sends an HTTP or HTTPS connection request, the ACOS device
checks the system-wide PBSLB policy’s black/white list for the client’s IP address,
with one of the following results:
If there is no entry for the client, the ACOS device creates a dynamic entry for
the client’s host address.
If there is a dynamic entry for the client, the ACOS device resets the timeout value
for the entry.
The timeout value can be set to 1-127 mins (default 5 mins)
ACOS supports 8 million dynamic client entries for system-wide PBSLB. Once limit
reached it will not track connections or anomaly for additional clients
0.0.0.0/0 1 #20
The clients who do not match the static entry in the list are assigned to group 1
and are limited to 20 concurrent connections.
The connection limit is applied to each client that has a dynamic entry in the
black/white list
#Show log
Apr 11 2017 18:03:45 Info [PBSLB]:[ve 10] TCP 10.10.10.153 > 10.10.10.106:80 PBSLB resets connection because connection number is over limit (VP Policy
class)
Apr 11 2017 18:03:45 Info [PBSLB]:[ve 10] TCP 10.10.10.153 > 10.10.10.106:80 PBSLB resets connection because connection number is over limit (VP Policy
class)
Note: The policy is to reset the connections once the connection limit is reached for the client, we can see
resets being sent to the client
During the syn flood attack the attacker opens many TCP SYN requests, receives
SYN-ACK’s from the server but does not respond back with an ack. This opens
large number of half open connections on the server and consume system
resources. Under large scale attack it causes the TCP connection queue to
become full and causes legitimate traffic to get dropped.
SYN cookie mitigates the damage caused by such attack by preventing the
attacks from consuming system resources
Allows you to configure threshold to enable/disable syn cookie once the number
of half open connections are met.
On-threshold – specifies the mThunderimum number of concurrent half-open TCP
connections that are allowed on the ACOS device, before SYN cookies are
enabled. 0- 2147483647 half-open connections.
Off-threshold – specifies the minimum number of concurrent half-open TCP
connections for which to keep SYN cookies enabled. If the number of half-open
TCP connections falls below this level, SYN cookies are disabled. You can specify
0-2147483647 half-open connections.
On FTA models:
ACOS(config)# syn-cookie enable Once syn-cookie is enabled the MAC address on the virtual-
server changes:
Dynamic Syn-cookie
TH3430S-Active(config)#show slb virtual-server v2 detail
ACOS(config)# syn-cookie enable on-threshold 50000 off-threshold
30000 Virtual server name: v2
Non-FTA Models Virtual server IP address: 5.1.1.240
To enable software-based SYN cookies, use the syn-cookie command at Virtual server MAC: 021f:a020:0001
the virtual-port level. For example:
ACOS(config)# slb virtual-server vip1
Disable syn-cookie:
ACOS(config-slb vserver)# port 80 tcp
TH3430S-Active(config)#show slb virtual-server v2 detail
ACOS(config-slb vserver-vport)# syn-cookie
Virtual server name: v2
Modifying the threshold for tcp handshake completion
(default is 4), For example, to set the threshold to 3 seconds: Virtual server IP address: 5.1.1.240
Determine State
Periodically sent
In simple words, Thunder says “are you there?” and the server responds “yes, I am”
Essential to determine whether the backend servers are really operational or not.
The Thunder will mark the server as “Up” or “Down”
Depending on the Health monitor status, the Thunder will forward or load balance traffic
to the server
Default and custom health checks
Default Methods:
ICMP at server level
After ICMP health check passes, the Thunder will issue a Layer 4 health check to the
configured port under the server.
–TCP Handshake
–Packet sent for UDP and no responds is expected
By default how often does the Thunder perform health monitors and when does it take the
server out of rotation?
Interval is 5 seconds (Configurable from 1 to 180sec)
Retries is 3 (Configurable from 1 to 10)
Timeout is 5 (Configurable from 1 to 180sec)
Up-retry (Configurable from 1 to 10)
In switch mode, Thunder box global IP address performs the HC. In a multi-netted
environment, the Thunder will use the source-nat ip address for the health checks.
In routed mode, the “VE” interfaces ip address or interface ip address will be used to
perform the HC.
Similarly, in multi-netted environment, the respective VE ip address will perform the health
checks.
20.2020.2
30.30.30.2
Vlan 20
Eth1
VE 20 20.20.20.1
Eth1
AX AX
Ip address 30.30.30.1/24
Vlan 30 Eth2 Ip default-gateway 30.30.30.2
Ethe 2
VE 30 30.30.30.1
In the Routed mode, diagram in previous slide, the health checks are issued from VE interface 30.30.30.1 to all the servers.
When we first define a server with command as below
Thunder3200-12-65(config)# slb server s1 30.30.30.101
VE interface sends ICMP request and makes server up when we get ICMP response .
Thunder3200-12-65#debug packet l3 ip 30.30.30.101
Thunder3200-12-65#debug mon
@1785438 o( 3, 30, a83e)> ip 30.30.30.1 > 30.30.30.101 icmp echo req seq=12
@1785438 i( 3, 30, 8069)> ip 30.30.30.101 > 30.30.30.1 icmp echo rsp seq=12
@1786695 o( 3, 30, a842)> ip 30.30.30.1 > 30.30.30.101 icmp echo req seq=13
@1786695 i( 3, 30, 806d)> ip 30.30.30.101 > 30.30.30.1 icmp echo rsp seq=13
-------------------------------------------------------------------------------------------------------------
30.30.30.101 default UP 11 /0 @0 0 0 /0 0
Thunder3200-12-65#devcall hm_up_reason(11)
ICMP Receive OK
If we define a TCP port in the server, then Thunder starts its default health check at port level.
Thunder3200-12-65(config)# slb server s1 30.30.30.101
Thunder3200-12-65(config-real server)# port 80 tcp
As seen in the above pcap file, there is a proper 3way handshake and closing (closing can be a 3way or a 4 way).
Thunder3200-12-65(config)#show health stat
-------------------------------------------------------------------------------------------------------------
30.30.30.101 80 default UP 20 /0 @0 0 0 /0 0
Thunder3200-12-65#devcall hm_up_reason(20)
As see from above capture, we started default HC after defining a server port as 69 (tftp).
Thunder3200-12-65(config-real server)# port 69 udp
IP address Port Health monitor Status Cause(Up/Down) Retry PIN
30.30.30.101 69 default UP 24 /0 @0 2 0 /0 0
Thunder3200-12-65#devcall hm_up_reason(24)
UDP No Response
As previously mentioned, for UDP health checks, the Thunder sends a packet with garbage data and no response is expected
for UDP Layer 4. If the server is not listening on the specified UDP port, it will issue an ICMP port unreachable message.
In this example, the server replies with a HTTP 200 OK response code. This is in response to the GET
“index.html” request in previous slide.
Notice that the message body says that the site is under maintenance.
Apply the named health monitor “http_hc” to the server, server port or at service-group level.
First, the Layer-4 TCP 3-way handshake is established between the Thunder and server using the VE
interface. Then the Thunder issues a Layer 7 health check (HTTP GET URI “/index.html”)requesting
content from the server. Finally, the server replies with a HTTP 200 OK response code.
By default, the Thunder issues a HC every 5 seconds. If the health check fails, the Thunder will try three more
times (15 sec). On the fourth try, or after 20 secs, the Thunder marks the server as “down”. At this point the
Thunder will continue to issue HC at 5 sec interval, until the server responses properly.
The default timeout, intervals, and retries can be changed locally or globally.
Globally changing the parameters do not affect existing health monitors until the Thunder is rebooted. Global
parameters take affect when new health monitors are configured.
Example:
Thunder3200-12(config)#health global interval 2 retry 1 timeout 2 up-retry 2 (custom)
Thunder3200-12(config)#health global interval 5 retry 3 timeout 5 up-retry 1 (default)
Note: Be careful when changing these variables. You don’t want to be too aggressive nor too slow in flagging
the servers as “Up or Down”…
The example below applies the same changes in the interval, retry, and
timeout. However, it is applied locally under the real server.
Issue the command “no health-check” at server level to disable ICMP HC and at port level
to disable port level HC.
slb server s2 30.30.30.102 slb server s1 10.1.1.11
no health-check health-check-disable
port 80 tcp port 80 tcp
no health-check health-check-disable
QUESTION: what if we issue “no health-check” at both server and port level. Does Thunder
stop doing health check? If yes why? If no why?
--------------------------------------------------------------------------------
Thunder#devcall hm_down_reason(92)
Compound Down
-----------------------------------------------------------------------------------------------
s3:9480 0 0 0 0 0
--------------------------------------------------------------------------------
Thunder#devcall hm_down_reason(92)
Compound Down
-----------------------------------------------------------------------------------------------
s3:9480 0 0 0 0 0
DNS-Based GSLB
–Global Server Load Balancing enables Thunder devices to add intelligence to authoritative
Domain Name System (DNS) servers
–The GSLB controller evaluates the DNS replies, and based on the results of that evaluation it
directs traffic to the ‘best’ site by replacing the IP address in the DNS reply
IP-Based Route Health Injection (RHI)
–Routing based global server load balancing
–RHI allows the Thunder devices to advertise the availability of a VIP throughout the network
–Inject static route for VIP and redistribute using routing protocols such as RIP, OSPF, IS-IS, BGP,
RIPng, OSPFv3, IS-ISv6, BGP4+
–Typical topology includes primary and backup site, with backup monitoring primary’s
health, and inject VIP route in case of primary failure
–Also supports ‘IP Anycast’
5 5 Client-2
Client-1 Connect to Connect to
VIP-West
VIP-East VIP West VIP East VIP-West
VIP-East
Web Web
Servers Servers
Advantages:
–Can be implemented without impacting current DNS traffic
–Does not require change in DNS server IP address
–Customer can be using external DNS service
Disadvantages:
–Requires changes to DNS server configuration
Add Sub-domain to existing DNS for Thunder
Add Thunder “proxy ip” as NS records
Add Thunder “proxy ip” as A records
CNAME existing records to sub-domain
Advantages:
–Does not require changes to current DNS server configuration
–Single client request for DR services
–Can be implemented with DNS firewall, and provide SLB services to DNS servers
Disadvantages:
–Requires changes to DNS server IP address, or change in registered NS server IP
address
–Can not be implemented without downtime
–Customer has to own and run their own DNS servers
products?
Quality of Support 92%
Source: TechValidate
Source: TechValidate
Easiest Cisco ACE migration: Similar CLIs and converting contexts to ADPs
In-service, hitless
App Specific Template upgrade of Templates
ACT
Automated
and
Real-time Insights Dashboard Troubleshooting Point-and-click
● 9 ACTs
– L4 SLB, HTTPS, Exchange, SharePoint, WIA
– SSLi, Security, IPsec
– Dashboard Wizard
API Navigation
From Cloud
● Demo Videos
– https://a10.sharefile.com/d-s3f50f93cdf54e6fa