AX Config Guide v2 4 3-20100621
AX Config Guide v2 4 3-20100621
AX Config Guide v2 4 3-20100621
b y
D e s i g n
Configuration Guide
Document No.: D-030-01-00-0006 Ver. 2.4.3 6/21/2010
Headquarters A10 Networks, Inc. 2309 Bering Dr. San Jose, CA 95131-1125 USA Tel: +1-408-325-8668 (main) Tel: +1-408-325-8676 (support) Fax: +1-408-325-8666 www.a10networks.com
Information in this document is subject to change without notice. Trademarks: A10 Networks, the A10 logo, ACOS, aFleX, aXAPI, IDaccess, IDsentrie, IP-to-ID, SoftAX, Virtual Chassis, and VirtualN are trademarks or registered trademarks of A10 Networks, Inc. All other trademarks are property of their respective owners. Patents Protection: A10 Networks products including all AX Series products are protected by one or more of the following US patents and patents pending: 7716378, 7675854, 7647635, 7552126, 20090049537, 20080229418, 20080040789, 20070283429, 20070271598, 20070180101 A10 Networks Inc. software license and end users agreement Software for all AX Series products contains trade secrets of A10 Networks and its subsidiaries and Customer agrees to treat Software as confidential information. Anyone who uses the Software does so only in compliance with the terms of this Agreement. Customer shall not: 1) reverse engineer, reverse compile, reverse de-assemble or otherwise translate the Software by any means 2) sublicense, rent or lease the Software. Disclaimer The information presented in this document describes the specific products noted and does not imply nor grant a guarantee of any technical performance nor does it provide cause for any eventual claims resulting from the use or misuse of the products described herein or errors and/or omissions. A10 Networks, Inc. reserves the right to make technical and other changes to their products and documents at any time and without prior notification. No warranty is expressed or implied; including and not limited to warranties of noninfringement, regarding programs, circuitry, descriptions and illustrations herein. Environmental Considerations Some electronic components may possibly contain dangerous substances. For information on specific component types, please contact the manufacturer of that component. Always consult local authorities for regulations regarding proper disposal of electronic components in your area. Further Information For additional information about A10 products, terms and conditions of delivery, and pricing, contact your nearest A10 Networks, Inc. location which can be found by visiting www.a10networks.com.
P e r f o r m a n c e
b y
3 of 950
4 of 950
P e r f o r m a n c e
b y
D e s i g n
Corporate Headquarters A10 Networks, Inc. 2309 Bering Dr. San Jose, CA 95131-1125 USA Tel: +1-408-325-8668 (main) Tel: +1-888-822-7210 (support toll-free in USA) Tel: +1-408-325-8676 (support direct dial) Fax: +1-408-325-8666 www.a10networks.com
P e r f o r m a n c e
b y
5 of 950
6 of 950
P e r f o r m a n c e
b y
D e s i g n
This document assumes that you have already performed the basic deployment tasks described in the AX Series Installation Guide.
The AX Series is the industrys best performing application acceleration switch that helps organizations scale and maximize application availability through the worlds most advanced application delivery platform. The AX Series Advanced Core Operating System (ACOS) accelerates and
P e r f o r m a n c e D e s i g n Document No.: D-030-01-00-0006 - Ver. 2.4.3 6/21/2010 b y
7 of 950
Audience
This document is intended for use by network architects for determining applicability and planning implementation, and for system administrators for provision and maintenance of the A10 Networks AX Series.
Icon
Layer 3 router
8 of 950
P e r f o r m a n c e
b y
D e s i g n
5 7
System Description The AX Series .................................................................................................... 7 Audience.................................................................................................................................................. 8 Representations of Layer 2 and Layer 3 Devices ................................................................................ 8
System Overview
25
AX Series Features............................................................................................................................... 25 ACOS Architecture ............................................................................................................................... 27 AX Software Processes .................................................................................................................. 27 Local File Storage ........................................................................................................................... 29 Hardware Interfaces ............................................................................................................................. 30 Software Interfaces............................................................................................................................... 30 Server Load Balancing......................................................................................................................... 31 Intelligent Server Selection ............................................................................................................. 32 Configuration Templates ................................................................................................................. 32 Global Server Load Balancing............................................................................................................. 34 Outbound Link Load Balancing .......................................................................................................... 34 Transparent Cache Switching ............................................................................................................. 34 Firewall Load Balancing....................................................................................................................... 34 Where Do I Start?.................................................................................................................................. 35
Basic Setup
37
Logging On............................................................................................................................................ 37 Logging Onto the CLI ...................................................................................................................... 38 Logging Onto the GUI ..................................................................................................................... 39 Configuring Basic System Parameters .............................................................................................. 41 Setting the Hostname and Other DNS Parameters ........................................................................ 42 Setting the CLI Banners .................................................................................................................. 43 Setting Time/Date Parameters ....................................................................................................... 44 Configuring Syslog Settings ............................................................................................................ 46
P e r f o r m a n c e
b y
9 of 950
Enabling SNMP .............................................................................................................................. 50 SNMP Traps ................................................................................................................................ 51 SNMP Communities and Views .................................................................................................. 53 SNMP Configuration Steps ......................................................................................................... 54 Configuration Examples .......................................................................................................................57 Emailing Log Messages........................................................................................................................64
Network Setup
71
Overview ................................................................................................................................................71 IP Subnet Support .......................................................................................................................... 72 Transparent Mode .................................................................................................................................73 Configuration Example ................................................................................................................... 74 Transparent Mode in Multinetted Environment ..................................................................................80 Configuration Example ................................................................................................................... 82 Route Mode............................................................................................................................................86 Configuration Example ................................................................................................................... 87 Direct Server Return in Transparent Mode .........................................................................................91 Configuration Example ................................................................................................................... 93 Direct Server Return in Route Mode....................................................................................................96 Configuration Example ................................................................................................................... 97 Direct Server Return in Mixed Layer 2/Layer 3 Environment............................................................99
105
Support for Multiple OSPFv2 Processes and OSPFv3 Instances...................................................105 Support for OSPFv2 and OSPFv3 on the Same Interface or Link ..................................................105 OSPF MIB Support ..............................................................................................................................105 Configuration Example .......................................................................................................................106 Interface Configuration ................................................................................................................. 106 Global OSPF Parameters ............................................................................................................. 107 OSPF Logging .............................................................................................................................. 108
109
10 of 950
P e r f o r m a n c e
b y
D e s i g n
125
Overview.............................................................................................................................................. 125 Summary of HTTP Options ........................................................................................................... 125 HTTP Template Configuration ...................................................................................................... 126 URL Hash Switching........................................................................................................................... 128 URL Hash Switching with Server Load Awareness ...................................................................... 130 Configuring URL Hashing ............................................................................................................. 132 URL / Host Switching ......................................................................................................................... 133 Configuring URL / Host Switching ................................................................................................ 136 Using URL / Host Switching along with Cookie Persistence ........................................................ 137 Using URL / Host Switching along with Source IP Persistence .................................................... 141 URL Failover........................................................................................................................................ 141 Configuring URL Failover ............................................................................................................. 142 5xx Retry and Reassignment............................................................................................................. 143 Content Compression ........................................................................................................................ 144 Hardware-Based Compression ..................................................................................................... 146 How the AX Device Determines Whether to Compress a File ...................................................... 147 Configuring Content Compression ................................................................................................ 148 Client IP Insertion / Replacement...................................................................................................... 151 Configuring Client IP Insertion / Replacement .............................................................................. 153 Header Insertion / Erasure ................................................................................................................. 154 Configuring Header Insertion / Replacement ................................................................................ 155 Configuring Header Erasure ......................................................................................................... 158 URL Redirect Rewrite......................................................................................................................... 159 Configuring URL Redirect Rewrite ................................................................................................ 160 Strict Transaction Switching ............................................................................................................. 161 Enabling Strict Transaction Switching .......................................................................................... 162
163
P e r f o r m a n c e
b y
11 of 950
183
Load Balancing for SIP over UDP......................................................................................................183 Configuring Load Balancing for SIP over UDP ............................................................................. 184 Load Balancing for SIP over TCP/TLS ..............................................................................................197 SIP Multiplexing ............................................................................................................................ 197 Client Keepalive and Server Keepalive ........................................................................................ 200 AX Actions if Selection of a Client or SIP Server Fails ................................................................. 201 SLB Network Address Translation for SIP over TCP / TLS .......................................................... 201 Configuring SIP over TCP / TLS for SIP Multiplexing .................................................................. 202 CLI Example ............................................................................................................................. 213 Displaying SIP SLB Statistics .................................................................................................... 215 CLI Example ............................................................................................................................. 215 Disabling Reverse NAT Based on Destination IP Address..............................................................216 IP NAT for SIP ......................................................................................................................................218
219
Overview ..............................................................................................................................................219 Choosing an SSL Optimization Implementation ........................................................................... 219 Configuring Client SSL .......................................................................................................................220 Configuring HTTPS Offload................................................................................................................224 Configuring the SSL Proxy Feature...................................................................................................231
239
249
255
263
Wildcard VIPs
271
SLB Protocol Translation Stateless SLB Outbound Link Load Balancing Transparent Cache Switching
Stateless Load-Balancing Methods .................................................................................................. 285 Configuring Link Load Balancing .................................................................................................. 291
Overview.............................................................................................................................................. 295 Configuring Layer 4 TCS.................................................................................................................... 298 Configuring Layer 7 TCS.................................................................................................................... 301 Service Type HTTP Without URL Switching Rules ...................................................................... 304 Service Type HTTP with URL Switching Rules ............................................................................ 305 Optimizing TCS with Multiple Cache Servers ............................................................................... 306 Enabling Support for Cache Spoofing .......................................................................................... 308 Configuring IPv4 TCS in High Availability Layer 3 Inline Mode ..................................................... 309 AX-1 Configuration ....................................................................................................................... 312 AX-2 Configuration ....................................................................................................................... 314 Configuring IPv6 TCS in High Availability Layer 3 Inline Mode ..................................................... 316 AX-1 Configuration ....................................................................................................................... 317 AX-2 Configuration ....................................................................................................................... 320 Configuring TCS for FTP.................................................................................................................... 322 Configuration ................................................................................................................................ 323
327
Overview.............................................................................................................................................. 327 FWLB HA with Direct Connection of AX Devices to Firewalls ...................................................... 329 FWLB Parameters............................................................................................................................... 332 TCP and UDP Session Aging ....................................................................................................... 335 Configuring FWLB .............................................................................................................................. 336
P e r f o r m a n c e
b y
13 of 950
353
Overview ..............................................................................................................................................353 Parameters That Can Be Configured Using Server and Port Templates ..................................... 354 Default Server and Service Port Templates ................................................................................. 356 Configuring Server and Service Port Templates..............................................................................357 Applying a Server or Service Port Template.....................................................................................358 Binding a Server Template to a Real Server ................................................................................ 359 Binding a Server Port Template to a Real Server Port ................................................................. 360 Binding a Virtual Server Template to a Virtual Server .................................................................. 360 Binding a Virtual Server Port Template to a Virtual Service Port ................................................. 361 Binding a Server Port Template to a Service Group .................................................................... 361 Connection Limiting............................................................................................................................362 Setting a Connection Limit ........................................................................................................ 363 Connection Rate Limiting...................................................................................................................364 Slow-Start.............................................................................................................................................366 Gratuitous ARPs for Subnet VIPs......................................................................................................369 TCP Reset Option for Session Mismatch..........................................................................................370
Health Monitoring
373
Default Health Checks ........................................................................................................................373 Health Method Timers.........................................................................................................................374 Health Check Operation ............................................................................................................... 375 Health Method Types ..........................................................................................................................377 Protocol Port Numbers Tested by Health Checks ........................................................................ 382 Configuring and Applying a Health Method .....................................................................................382 Configuring Health Monitoring of Virtual IP Addresses in DSR Deployments .............................. 386 Configuring POST Requests in HTTP/HTTPS Health Monitors ................................................... 388 Customizing DNS Health Monitors ............................................................................................... 391 Overriding the Target IP Address or Protocol Port Number ......................................................... 394 Basing a Ports Health Status on Another Ports Health Status ................................................... 397 Service Group Health Checks ............................................................................................................398 Disable Following Failed Health Check.............................................................................................401 In-Band Health Monitoring .................................................................................................................402 Configuring In-Band Health Monitoring ........................................................................................ 404 Consecutive Health Checks Within a Health Check Period ............................................................406 14 of 950
P e r f o r m a n c e b y D e s i g n
Maintenance Health Status for Servers in Persistence Configurations ........................................ 407 On-Demand Health Checks................................................................................................................ 408 Enabling Strict Retries ....................................................................................................................... 410 Globally Changing Health Monitor Parameters ............................................................................... 411 Globally Disabling Layer 3 Health Checks .................................................................................... 412 Compound Health Monitors............................................................................................................... 413 Displaying Health Status.................................................................................................................... 417 Using External Health Methods......................................................................................................... 420 Configuration ................................................................................................................................ 420 Script Examples ............................................................................................................................ 422 TCL Script Example .................................................................................................................. 422 Perl Script Example ................................................................................................................... 424 Shell Script Example ................................................................................................................. 425
427
Overview.............................................................................................................................................. 427 Advantages of GSLB .................................................................................................................... 429 Zones, Services, and Sites ........................................................................................................... 430 GSLB Policy .................................................................................................................................. 430 Health Checks ........................................................................................................................... 432 Geo-Location ............................................................................................................................. 433 DNS Options ............................................................................................................................. 435 Metrics That Require the GSLB Protocol on Site AX Devices .................................................. 437 Configuration Overview ..................................................................................................................... 438 Configure Health Monitors ............................................................................................................ 439 Configure the DNS Proxy ............................................................................................................. 440 Configure a GSLB Policy .............................................................................................................. 442 Enabling / Disabling Metrics ...................................................................................................... 442 Changing the Metric Order ........................................................................................................ 444 Configuring RTT Settings .......................................................................................................... 445 Passive RTT .............................................................................................................................. 451 Configuring BW-Cost Settings ................................................................................................... 452 Configuring Alias Admin Preference ......................................................................................... 458 Configuring Weighted Alias ....................................................................................................... 459 Loading or Configuring Geo-Location Mappings ....................................................................... 459 Configure Services ....................................................................................................................... 468 Gateway Health Monitoring ....................................................................................................... 469 CLI ExampleSite with Single Gateway Link ........................................................................... 472 CLI ExampleSite with Multiple Gateway Links ....................................................................... 473 Multiple-Port Health Monitoring ................................................................................................. 473
P e r f o r m a n c e D e s i g n Document No.: D-030-01-00-0006 - Ver. 2.4.3 6/21/2010 b y
15 of 950
Configure Sites ............................................................................................................................. 475 Configure a Zone .......................................................................................................................... 476 Enable the GSLB Protocol ........................................................................................................... 477 GSLB Parameters................................................................................................................................479 Policy Parameters ........................................................................................................................ 494 Configuration Examples .....................................................................................................................506 CLI Example ................................................................................................................................. 506 Configuration on the GSLB AX Device (GSLB Controller) ........................................................ 506 Configuration on Site AX Device AX-A ..................................................................................... 507 Configuration on Site AX Device AX-B ..................................................................................... 508 GUI Example ................................................................................................................................ 508 Configuration on the GSLB AX Device (GSLB Controller) ........................................................ 508 Configuration on Site AX Devices ............................................................................................. 518
RAM Caching
519
Overview ..............................................................................................................................................519 RFC 2616 Support ....................................................................................................................... 519 If-Modified-Since Header Support ............................................................................................. 520 Support for no-cache and max-age=0 Cache-Control Headers ................................................ 520 Insertion of Age and Via Headers into Cached Responses ...................................................... 521 Cacheability Behavior of AX RAM Cache .................................................................................... 521 Dynamic Caching ......................................................................................................................... 522 Host Verification ........................................................................................................................... 522 Configuring RAM Caching..................................................................................................................523
High Availability
533
Overview ..............................................................................................................................................533 Layer 3 Active-Standby HA .......................................................................................................... 534 Layer 3 Active-Active HA .............................................................................................................. 536 Layer 2 Active-Standby HA (Inline Deployment) .......................................................................... 538 Preferred HA Port ...................................................................................................................... 541 Port Restart ............................................................................................................................... 542 Layer 3 Active-Standby HA (Inline Deployment) .......................................................................... 543 HA Messages ............................................................................................................................... 544 HA Heartbeat Messages ........................................................................................................... 545 Gratuitous ARPs ....................................................................................................................... 545 HA Interfaces ................................................................................................................................ 546 Session Synchronization .............................................................................................................. 547
16 of 950
P e r f o r m a n c e
b y
D e s i g n
Optional Failover Triggers ............................................................................................................ 548 VLAN-based Failover ................................................................................................................ 548 Gateway-based Failover ........................................................................................................... 548 Route-based Failover ................................................................................................................ 549 Real Server or Port Health-based Failover ............................................................................... 549 VIP-based Failover .................................................................................................................... 550 How the Active AX Device Is Selected ......................................................................................... 551 HA Pre-Emption ............................................................................................................................ 554 HA Sets ......................................................................................................................................... 555 HA Configuration Parameters ....................................................................................................... 556 HA Status Indicators .......................................................................................................................... 563 In the GUI .................................................................................................................................. 563 In the CLI ................................................................................................................................... 563 Configuring Layer 3 HA...................................................................................................................... 564 Configuring Layer 2 HA (Inline Mode) .............................................................................................. 574 Layer 2 Inline HA Configuration Example ..................................................................................... 574 Configuring Layer 3 HA (Inline Mode) .............................................................................................. 582 Layer 3 Inline HA Configuration Example ..................................................................................... 583 Configuring Optional Failover Triggers............................................................................................ 588 VLAN-Based Failover Example .................................................................................................... 588 Gateway-Based Failover Example ............................................................................................... 589 Route-Based Failover Example .................................................................................................... 591 VIP-Based Failover Example ........................................................................................................ 593 Forcing Active Groups to Change to Standby Status..................................................................... 595 Enabling Session Synchronization................................................................................................... 595 Configuring OSPF-Related HA Parameters...................................................................................... 597 OSPF Awareness of HA ............................................................................................................... 597 OSPF Support on Standby AX in Layer 3 Inline Mode ................................................................. 598 Synchronizing Configuration Information........................................................................................ 598 Configuration Items That Are Backed Up ..................................................................................... 599 Configuration Items That Are Not Backed Up ........................................................................... 600 Performing HA Synchronization .................................................................................................... 602 Tip for Ensuring Fast HA Failover..................................................................................................... 604
P e r f o r m a n c e
b y
17 of 950
607
SLB NAT ...............................................................................................................................................608 SLB Destination NAT ................................................................................................................... 608 SLB Source NAT .......................................................................................................................... 609 IP Source NAT Configuration Limits ......................................................................................... 609 Connection Reuse .................................................................................................................... 609 Source NAT for Servers in Other Subnets ................................................................................ 614 Direct Server Return ..................................................................................................................... 616 IP NAT Support for VIPs .............................................................................................................. 618 Using IP Pool Default Gateways To Forward Traffic from Real Servers ...................................... 619 IP Source NAT......................................................................................................................................619 Configuring Dynamic IP Source NAT ........................................................................................... 621 Configuring Static IP Source NAT ................................................................................................ 627 NAT ALG Support for PPTP ......................................................................................................... 630 Configuring NAT ALG for PPTP ................................................................................................ 631 Fast Aging for IP NATted ICMP and DNS Sessions .................................................................... 634 Client and Server TCP Resets for NATted TCP Sessions ........................................................... 636 Requirements for Translation of DNS Traffic ............................................................................... 636 IP NAT Use in Transparent Mode in Multi-Netted Environment ................................................... 636 NAT Range List Requires AX Interface or Route Within the Global Subnet ................................ 637 IP NAT in HA Configurations ........................................................................................................ 637
639
Overview ..............................................................................................................................................639 How LSN Differs from Traditional NAT ......................................................................................... 643 Benefits of LSN ............................................................................................................................ 645 Sticky NAT ................................................................................................................................ 645 Full-Cone NAT .......................................................................................................................... 645 Hairpinning ................................................................................................................................ 647 User Quotas .............................................................................................................................. 647 Static Port Reservation ............................................................................................................. 649 LSN Logging ................................................................................................................................. 650 LSN Operational Logging .......................................................................................................... 650 LSN Traffic Logging .................................................................................................................. 651 LSN NAT Capacities .................................................................................................................... 652 Notes and Limitations ................................................................................................................... 654 Configuring Large-Scale NAT ............................................................................................................655 Configure an LSN NAT Pool ........................................................................................................ 656 Configure a LID ............................................................................................................................ 656 Configure a Class List .................................................................................................................. 657
18 of 950
P e r f o r m a n c e
b y
D e s i g n
Bind the CLass List for Use with LSN ........................................................................................... 658 Enable Inside NAT on the Interface Connected to Internal Clients .............................................. 658 Enable Outside NAT on the Interface Connected to the Internet ................................................. 658 Enable New-path Processing ....................................................................................................... 659 Optional Configuration .................................................................................................................. 659 Configuring Static Mappings ..................................................................................................... 659 Configuring Full-Cone Support .................................................................................................. 659 Configuring External Logging for LSN Traffic Logs ................................................................... 660 Configure the IP Selection Method ............................................................................................ 662 Configuring the LSN SYN Timeout ............................................................................................ 663 Displaying LSN Information............................................................................................................... 663 Clearing LSN Statistics and Sessions .......................................................................................... 664 Configuration Example ...................................................................................................................... 664
669
Configuring Additional Admin Accounts ......................................................................................... 669 Configuring an Admin Account ..................................................................................................... 670 Deleting an Admin Account .......................................................................................................... 674 Configuring Admin Lockout .............................................................................................................. 675 Securing Admin Access by Ethernet................................................................................................ 677 Displaying the Current Management Access Settings .................................................................. 680 Regaining Access if You Accidentally Block All Access ............................................................... 681 Changing Web Access Settings........................................................................................................ 681 Configuring AAA for Admin Access ................................................................................................. 683 Authentication ............................................................................................................................... 684 Authentication Process .............................................................................................................. 684 Authorization for GUI Access ........................................................................................................ 688 Authorization for CLI Access ........................................................................................................ 688 RADIUS CLI Authorization ........................................................................................................ 688 TACACS+ CLI Authorization ..................................................................................................... 689 Accounting .................................................................................................................................... 690 Command Accounting (TACACS+ only) ................................................................................... 691 TACACS+ Accounting Debug Options ...................................................................................... 691 Configuring AAA for Admin Access .............................................................................................. 691 Configuring Authentication ........................................................................................................ 692 Configuring Authorization .......................................................................................................... 693 Configuring Accounting ............................................................................................................. 694 Configuring Windows IAS for AX RADIUS Authentication ............................................................ 698 Procedure Overview .................................................................................................................. 698 Configure Access Groups ......................................................................................................... 699
P e r f o r m a n c e D e s i g n Document No.: D-030-01-00-0006 - Ver. 2.4.3 6/21/2010 b y
19 of 950
Configure RADIUS Client for AX Device ................................................................................... 700 Configure Remote Access Policies ........................................................................................... 702 Add AD Users to AX Access Groups ........................................................................................ 712 Register the IAS Server in Active Directory .............................................................................. 713 Configure RADIUS in the AX Device ........................................................................................ 714 Test the Configuration ............................................................................................................... 714
715
DDoS Protection..................................................................................................................................715 Enabling DDoS Protection ............................................................................................................ 717 Configuring IP Anomaly Filters for System-Wide PBSLB ............................................................. 717 Displaying and Clearing IP Anomaly Statistics ............................................................................. 718 SYN Cookies ........................................................................................................................................718 The Service Provided By SYN Cookies ....................................................................................... 719 Enabling Hardware-Based SYN Cookies ..................................................................................... 720 Configuration when Target VIP and Client-side Router Are in Different Subnets ..................... 721 Enabling Software-Based SYN Cookies ...................................................................................... 722 Configuring Layer 2/3 SYN Cookie Support ................................................................................. 723 ICMP Rate Limiting..............................................................................................................................724 Source-IP Based Connection Rate Limiting .....................................................................................726 Parameters ................................................................................................................................... 727 Log Messages .............................................................................................................................. 727 Deployment Considerations ......................................................................................................... 728 Configuration ............................................................................................................................. 729 Configuration Examples ............................................................................................................... 730 DNS Security........................................................................................................................................731 Access Control Lists (ACLs)..............................................................................................................733 How ACLs Are Used .................................................................................................................... 733 Configuring Standard IPv4 ACLs ................................................................................................. 734 Configuring Extended IPv4 ACLs ................................................................................................. 736 Configuring Extended IPv6 ACLs ................................................................................................. 740 Adding a Remark to an ACL ......................................................................................................... 743 Transparent Session Logging ...................................................................................................... 744 Sample Log Messages for Transparent Sessions .................................................................... 744 Configuration ............................................................................................................................. 745 Applying an ACL to an Interface ................................................................................................... 746 Applying an ACL to a Virtual Server Port ..................................................................................... 747 Using an ACL to Control Management Access ............................................................................ 748 Using an ACL for NAT .................................................................................................................. 748 Resequencing ACL Rules ............................................................................................................ 748 20 of 950
P e r f o r m a n c e b y D e s i g n
Policy-Based SLB (PBSLB) ............................................................................................................... 751 Configuring a Black/White List ...................................................................................................... 751 Dynamic Black/White-list Client Entries .................................................................................... 752 Configuring System-Wide PBSLB ................................................................................................ 754 Configuring PBSLB for Individual Virtual Ports ............................................................................. 756 Displaying PBSLB Information .................................................................................................. 764 Configuration ExampleSockstress Attack Protection ................................................................ 766 Geo-location-based Access Control for VIPs .................................................................................. 768 Configuration ............................................................................................................................. 769 Enabling PBSLB Statistics Counter Sharing ............................................................................. 774 Enabling Full-Domain Checking for Connection Limits ............................................................. 775
IP Limiting
777
Overview.............................................................................................................................................. 777 Class Lists .................................................................................................................................... 777 Class List Syntax ....................................................................................................................... 778 IP Address Matching ................................................................................................................. 778 Example Class Lists .................................................................................................................. 779 IP Limiting Rules ........................................................................................................................... 779 Match IP Address ...................................................................................................................... 780 Configuring Source IP Limiting......................................................................................................... 781 Configuring a Class List ................................................................................................................ 781 Configuring the IP Limiting Rules ................................................................................................. 785 Applying Source IP Limits ............................................................................................................. 788 Displaying IP Limiting Information ................................................................................................ 790 CLI ExamplesConfiguration ...................................................................................................... 791 Configure System-Wide IP Limiting With a Single Class .......................................................... 791 Configure System-Wide IP Limiting With Multiple Classes ....................................................... 791 Configure IP Limiting on a Virtual Server .................................................................................. 792 Configure IP Limiting on a Virtual Port ...................................................................................... 793 CLI ExamplesDisplay ................................................................................................................ 793 Class Lists ................................................................................................................................. 793 IP Limiting Rules ....................................................................................................................... 795 IP Limiting Statistics .................................................................................................................. 796
Role-Based Administration
797
Overview.............................................................................................................................................. 798 Resource Partitions ...................................................................................................................... 799 Administrator Roles ...................................................................................................................... 801
P e r f o r m a n c e
b y
21 of 950
Configuring Role-Based Administration...........................................................................................803 Configuring Private Partitions ....................................................................................................... 803 Changing the Maximum Number of aFleX Policies Allowed in a Partition ................................ 804 Migrating Resources Between Partitions .................................................................................. 805 Deleting a Partition .................................................................................................................... 805 Configuring Partition Admin Accounts .......................................................................................... 806 CLI Example ................................................................................................................................. 808 Viewing and Saving the Configuration..............................................................................................809 Viewing the Configuration ............................................................................................................ 809 Saving the Configuration .............................................................................................................. 810 Switching To Another Partition..........................................................................................................811 Synchronizing the Configuration.......................................................................................................812 Operator Management of Real Servers .............................................................................................814
SLB Parameters
819
Service Template Parameters ............................................................................................................819 Cache Template Parameters ....................................................................................................... 821 Client SSL Template Parameters ................................................................................................. 823 Connection Reuse Template Parameters .................................................................................... 826 Cookie Persistence Template Parameters ................................................................................... 827 Destination-IP Persistence Template Parameters ....................................................................... 829 DNS Template Parameters .......................................................................................................... 832 HTTP Template Parameters ........................................................................................................ 832 Policy Template Parameters ........................................................................................................ 839 Server SSL Template Parameters ............................................................................................... 843 SIP Template Parameters (SIP over TCP/TLS) ........................................................................... 844 SIP Template Parameters (SIP over UDP) .................................................................................. 847 SMTP Template Parameters ........................................................................................................ 848 Source-IP Persistence Template Parameters .............................................................................. 850 SSL Session-ID Persistence Template Parameters ..................................................................... 853 Streaming-Media Template Parameters ...................................................................................... 854 TCP Template Parameters ........................................................................................................... 854 TCP-Proxy Template Parameters ................................................................................................ 855 UDP Template Parameters .......................................................................................................... 857 Global SLB Parameters ......................................................................................................................858 Real Server Parameters ......................................................................................................................865 Real Service Port Parameters ............................................................................................................868 Service Group Parameters .................................................................................................................870
22 of 950
P e r f o r m a n c e
b y
D e s i g n
Virtual Server Parameters.................................................................................................................. 874 Virtual Service Port Parameters ........................................................................................................ 877
885
Template Options for Dynamically Created Real Servers............................................................... 886 Configuring Dynamic Real Server Creation ..................................................................................... 888
VIP Creation Based on Subnet Sending a Reset After Server Selection Failure Scan-All-Members Option in Persistence Templates SSL Certificate Management
Overview.............................................................................................................................................. 905 SSL Process ................................................................................................................................. 905 Certificate Chain ........................................................................................................................ 907 Certificate Warning from Client Browser ................................................................................... 908 CA-Signed and Self-Signed Certificates ................................................................................... 909 SSL Templates .......................................................................................................................... 910 Certificate Installation Process ..................................................................................................... 912 Requesting and Installing a CA-Signed Certificate ................................................................... 912 Installing a Self-Signed Certificate ............................................................................................ 914 Generating a Key and CSR for a CA-Signed Certificate ................................................................. 915 Importing a Certificate and Key......................................................................................................... 918 Generating a Self-Signed Certificate ................................................................................................ 920 Importing a CRL.................................................................................................................................. 922 Exporting Certificates, Keys, and CRLs ........................................................................................... 923 Exporting a Certificate and Key .................................................................................................... 923 Exporting a CRL ........................................................................................................................... 924 Creating a Client-SSL or Server-SSL Template and Binding it to a VIP ........................................ 925 Creating an SSL Template ........................................................................................................... 925 Binding an SSL Template to a VIP ............................................................................................... 926 Converting Certificates and CRLs to PEM Format .......................................................................... 926 Converting SSL Certificates to PEM Format ................................................................................ 927 Converting CRLs from DER to PEM Format ................................................................................ 928
P e r f o r m a n c e
b y
23 of 950
929
Route Tables ........................................................................................................................................929 Management Routing Options ...........................................................................................................930 Enabling Use of the Management Interface as the Source for Automated Management Traffic ........................................................................................................................................... 931 Using the Management Interface as the Source Interface for Manually Generated Management Traffic ..................................................................................................................... 932 Commands at the User EXEC Level ......................................................................................... 932 Commands at the Privileged EXEC Level ................................................................................. 932 Commands at the Global Configuration Level .......................................................................... 932 Show Commands ...................................................................................................................... 933
Configuration Management
935
Backing Up System Information ........................................................................................................935 Saving Multiple Configuration Files Locally.....................................................................................937 Configuration Profiles ................................................................................................................... 938 Commands for Local Configuration Management ........................................................................ 938
VLAN-to-VLAN Bridging
945
24 of 950
P e r f o r m a n c e
b y
D e s i g n
System Overview
This chapter provides a brief overview of the AX Series system and features. For more information, see the other chapters in this guide.
AX Series Features
Key features of the AX Series include:
Application Delivery Features Comprehensive IPv4/IPv6 Support Transparent (Layer 2) and gateway (Layer 3) mode support for
easy deployment into existing infrastructures Network Address Translation (NAT) IPv4-IPv4, IPv4-IPv6, IPv6-IPv4, IPv6-IPv6, ALG support for PPTP, Large-Scale NAT (LSN) IPv4 RIP, OSPFv2 for IPv4, OSPFv3 for IPv6 IPv4/IPv6 static routes DHCP relay Advanced Layer 4/7 Server Load Balancing Fast TCP, fast UDP, fast HTTP, and full HTTP Proxy Comprehensive protocol support: HTTP, HTTPS, FTP, TCP, UDP, SSL, SIP, SMTP, and others Comprehensive load-balancing methods weight-based, connection-based, request-based, and response-based methods, as well as simple round robin Protocol translation support for mixed IPv4/IPv6 environments Advanced health monitoring Customizable configuration templates RAM caching of web content Firewall Load Balancing (FWLB) Global Server Load Balancing (GSLB) Transparent Cache Switching (TCS)
High Availability (HA) Active-Active, Active-Standby, and Layer 2/3 inline mode configu-
25 of 950
for optional remote RADIUS or TACACS+ AAA Spam filter support (Policy-Based SLB) High-speed application of very large black/white lists that filter based on source or destination IP host or subnet address DoS attack detection and prevention Access Control Lists (ACLs)
DNS Application Firewall Solution consisting of the following: Traffic validation Drop or redirect malformed DNS queries Dynamic traffic flow regulation: High performance surge protection (connection and rate limit-
ing) Source-IP based connection rate limiting Policy-Based SLB (black/white lists)
aFleX Tcl-like Scripting Language XML Application Programming Interface (aXAPI) System Management Dedicated management interface Multiple access methods SSH, Telnet, HTTPS Web-based Graphical User Interface (GUI) with language localiza
tion Industry-standard Command Line Interface (CLI) support On-demand backup of configuration files, logs, and system files SNMP, syslog, alerting Virtualized Management, provided by Role-Based Administration (RBA)
26 of 950
P e r f o r m a n c e
b y
D e s i g n
ACOS Architecture
AX Series devices use embedded Advanced Core Operating System (ACOS) architecture. ACOS is built on top of a set of Symmetric Multi-Processing CPUs and uses shared memory architecture to maximize application data delivery. ACOS is designed to handle high-volume application data with integrated Layer 2 / Layer 3 processing and integrated SSL acceleration built into the system. In addition, ACOS incorporates the A10 Networks customizable aFleX scripting language, which provides administrators with configuration flexibility for application data redirection. ACOS inspects packets at Layers 2, 3, 4, and 7 and uses hardware-assisted forwarding. Packets are processed and forwarded based on ACOS configuration. You can deploy the AX device into your network in transparent mode or gateway (route) mode.
Transparent mode The AX device has a single IP interface. For multi-
est Path First (OSPF) and Routing Information Protocol (RIP) are supported. In either type of deployment, ACOS performs Layer 4-7 switching based on the SLB configuration settings.
AX Software Processes
The AX software performs its many tasks using the following processes:
a10mon Parent process of the AX device. This process is executed
when the system comes up. The a10mon process is responsible for the following: Responsible for bringing AX user-space processes up and down Monitors all its child processes and restarts a process and all dependent processes if any of them die.
syslogd System logger daemon that logs kernel and system events. a10logd Fetches all the logs from the AX Log database. a10timer Schedules and executes scheduled tasks.
P e r f o r m a n c e
b y
27 of 950
such as a10switch (on models AX2200 and higher) and a10lb. The a10stat process probes every thread within these processes to ensure that they are responsive. If a thread is deemed unhealthy, a10stat kills the process, after which a10mon restarts the process and other processes associated with it.
a10switch Contains libraries and APIs to program the Switching ASIC
process sends pre-configured requests to external servers at pre-defined intervals. If a server or individual service does not respond, it is marked down. Once the server or service starts responding again, it is marked up.
a10rt Routing daemon, which maintains the routing table with routes
injected from OSPF and RIP routing protocols, as well as static routes.
a10rip Implements RIPv1 and v2 routing protocols. a10ospf Implements the OSPFv2 routing protocol. a10snmpd SNMPv2c and v3 agent, which services MIB requests. a10wa Embedded Web Server residing on the AX device. This process
the AX device through an interface address. The admin is presented a Command Line Interface (CLI) that can issue and save commands to configure the system.
28 of 950
P e r f o r m a n c e
b y
D e s i g n
AX 2100, AX 2200, AX 3100, and AX 3200 AX devices use local storage for application files and for data objects used for monitoring. The amount of storage used for these types of data depends on the AX model and on how the devices are used. On average, the following amounts of storage are used for these types of data on 64-bit ACOS models:
AX 2500, AX 2600 15 Gigabytes (G) or less AX 3000 20 G or less AX 5100, AX 5200 35 G or less
Application files include system images, configuration files, aFleX scripts, certificate and key files, black/white list files, class-list files, log messages, CLI audit log messages, core dump files, show techsupport files (up to 30days worth), and other miscellaneous files. The size of all application files varies depending on the configuration of the system and other factors. The show techsupport files use no more than 3-4 G. aFleX scripts range from 0-500 KB. Monitoring data includes objects for CPU, disk, memory, global statistics, port statistics, and 30-day SLB statistics. The 30-day SLB statistics include objects for real servers, virtual servers, real ports, virtual ports, server groups, service groups, and service-group members. The 30-day SLB statistics use the most storage among the monitoring objects. For the maximum configuration, the 30-day SLB statistics can use the following amounts of storage on 64-bit ACOS models:
AX 2500, AX 2600 3 G or less AX 3000 9 G or less AX 5100, AX 5200 26 G or less
If there is a storage shortage, the software dynamically adjusts the maximum number of SLB monitoring objects to prevent consumption of the remaining storage.
P e r f o r m a n c e
b y
29 of 950
Hardware Interfaces
1000BaseT (GOC) + SFP Mini GBIC Fiber Ports On models AX 3100, AX 3200, AX 5100, and AX 5200, 10G XFP-SR
(short range) single-mode fiber port or XFP-LR (long range) multimode fiber port, depending on order Management Ethernet Port RJ-45 Console Port Generally, the fiber ports do not require any configuration other than IP interface(s). When you plug in a port, the port speed and mode (full-duplex or half-duplex) are automatically negotiated with the other end of the link. The management Ethernet port allows an out-of-band IP connection to the switch for management. The management interface traffic is isolated from the traffic on the other Ethernet ports. The serial console port is for direct connection of a laptop PC to the AX device.
Software Interfaces
Graphical User Interface (GUI) Command Line Interface (CLI) accessible using console, Telnet, or
Secure Shell (v1 and v2) Simple Network Management Protocol (SNMP) v1, v2c, and v3 XML Application Programming Interface (aXAPI) The configuration examples in this manual show how to configure the AX Series using the CLI and GUI. For more information about the AX management interfaces, see the following documents:
AX Series GUI Reference AX Series CLI Reference AX Series MIB Reference AX Series aXAPI Reference
30 of 950
P e r f o r m a n c e
b y
D e s i g n
P e r f o r m a n c e
b y
31 of 950
Configuration Templates
SLB configuration is simplified by the use of templates. Templates simplify configuration by enabling you to configure common settings once and use them in multiple service configurations. The AX device provides templates to control server and port configuration parameters, connectivity parameters, and application parameters. The AX device provides the following types of server and port configuration templates:
Server Controls parameters for real servers Port Controls parameters for service ports on real servers Virtual server Controls parameters for virtual servers Virtual port Controls parameters for service ports on virtual servers
whether the AX device sends TCP Resets to clients or servers after a session times out
UDP Controls the idle timeout for unused sessions and specifies how
quickly sessions are terminated after a server response is received The following types of application templates are provided:
HTTP Provides a robust set of options for HTTP header manipulation
and for load balancing based on HTTP header content or the URL requested by the client, and other options
32 of 950
P e r f o r m a n c e
b y
D e s i g n
establishing and reusing TCP connections with real servers for multiple client requests
Cookie persistence Inserts a cookie into server replies to clients, to
direct clients to the same service group, real server, or real service port for subsequent requests for the service
Source-IP persistence Directs a given client, identified by its IP
on destination IP address
SSL session-ID persistence Directs all client requests for a given vir-
tual port, and that have a given SSL session ID, to the same real server and real port
SIP Customizes settings for load balancing of Session Initiation Proto-
tent Where applicable, the AX device automatically applies a default template with commonly used settings. For example, when you configure SLB for FTP, the AX device automatically applies the default TCP template. If required by your application, you can configure a different template and apply that one instead. The configuration examples in this guide show how to do this. See the following chapters for examples of SLB configurations:
HTTP Load Balancing on page 109 FTP Load Balancing on page 163 SIP Load Balancing on page 183 SSL Offload and SSL Proxy on page 219 P e r f o r m a n c e D e s i g n Document No.: D-030-01-00-0006 - Ver. 2.4.3 6/21/2010 b y
33 of 950
For descriptions of all the parameters you can control using templates, see Server and Port Templates on page 353 and Service Template Parameters on page 819.
34 of 950
P e r f o r m a n c e
b y
D e s i g n
Where Do I Start?
To configure basic system settings, see Basic Setup on page 37. To configure network settings, see Network Setup on page 71 and
P e r f o r m a n c e
b y
35 of 950
36 of 950
P e r f o r m a n c e
b y
D e s i g n
Basic Setup
This chapter describes how to log onto the AX device and how to configure the following basic system parameters:
Hostname and other Domain Name Server (DNS) settings CLI banner messages Date/time settings System log (Syslog) settings Simple Network Management Protocol (SNMP) settings
After you are through with this chapter, go to Network Setup on page 71. Note: The only basic parameters that you are required to configure are date/time settings. Configuring the other parameters is optional. This chapter does not describe how to access the out-of-band management interface. For that information, see the AX Series Advanced Traffic Manager Installation Guide. When you make configuration changes, be sure to remember to save the changes. Unsaved configuration changes will be lost following a reboot. To save changes, click Save on the top row of the GUI window or enter the write memory command in the CLI.
Note:
Caution:
Logging On
AX Series devices provide the following management interfaces:
Command-Line Interface (CLI) Text-based interface in which you
type commands on a command line. You can access the CLI directly through the serial console or over the network using either of the following protocols: Secure protocol Secure Shell (SSH) version 1 or version 2 Unsecure protocol Telnet (if enabled)
Graphical User Interface (GUI) Web-based interface in which you
click to access configuration or management pages and type or select values to configure or manage the device. You can access the GUI using either of the following protocols:
P e r f o r m a n c e
b y
37 of 950
Layer (HTTPS) Unsecure protocol Hypertext Transfer Protocol (HTTP) Note: By default, Telnet access is disabled on all interfaces, including the management interface. SSH, HTTP, HTTPS, and SNMP access are enabled by default on the management interface only, and disabled by default on all data interfaces. Federal Information Processing Standards (FIPS) Compliance To comply with FIPS security standards, beginning in AX Release 2.4.2, management access to the AX device has the following requirements:
Web access to GUI The browser used to access the AX GUI must sup-
port encryption keys of 128 bits or longer. Shorter encryption keys (for example, 40 bits) are not supported. The browser also must support SSLv3 or TLS 1.0. Browsers that support only SSLv2 are not supported.
SSH access to CLI The SSH client used to access the CLI must sup-
port SSHV2. SSHv1 is not supported. The SSHv2 client must support one of the following encryption ciphers: 3des-cbc aes128-cbc aes192-cbc aes256-cbc Other ciphers are not supported.
38 of 950
P e r f o r m a n c e
b y
D e s i g n
A screen resolution of at least 1024x768 is recommended. 1. Open one of the Web browsers listed in Table 1. 2. In the URL field, enter the IP address of the AX devices management interface.
P e r f o r m a n c e
b y
39 of 950
4. Enter your admin username and password and click OK. Note: The default admin username and password are admin, a10. The Summary page appears, showing at-a-glance information for your AX device. You can access this page again at any time while using the GUI, by selecting Monitor > Overview > Summary.
40 of 950
P e r f o r m a n c e
b y
D e s i g n
Note:
For more information about the GUI, see the AX Series GUI Reference or the GUI online help.
P e r f o r m a n c e
b y
41 of 950
42 of 950
P e r f o r m a n c e
b y
D e s i g n
You can format banner text as a single line or multiple lines. If you configure a banner message that occupies multiple lines, you must specify the end marker that indicates the end of the last line. The end marker is a simple string up to 2-characters long, each of the which must be an ASCII character from the following range: 0x21-0x7e. The multi-line banner text starts from the first line and ends at the marker. If the end marker is on a new line by itself, the last line of the banner text will be empty. If you do not want the last line to be empty, put the end marker at the end of the last non-empty line.
P e r f o r m a n c e
b y
43 of 950
a Network Time Protocol (NTP) server. The default timezone is Europe/Dublin, which is equivalent to Greenwich Mean Time (GMT). The time and date are not set at the factory, so must manually set them or configure NTP. Note: You do not need to configure Daylight Savings Time. The AX device automatically adjusts the time for Daylight Savings Time based on the timezone you select.
44 of 950
P e r f o r m a n c e
b y
D e s i g n
P e r f o r m a n c e
b y
45 of 950
46 of 950
P e r f o r m a n c e
b y
D e s i g n
Logging to the local buffer and to CLI sessions is enabled by default. Logging to other places requires additional configuration. The standard Syslog message severity levels are supported:
Emergency 0 Alert 1 Critical 2 Error 3 Warning 4 Notification 5 Information 6 Debugging 7
P e r f o r m a n c e
b y
47 of 950
Any valid protocol port number Default: 514 Valid email address. Click the down arrow next to the input field to add another address (up to 10). Each email address can be a maximum of 31 characters long. Any valid IP address or fully-qualified domain name. Default: None configured
SMTP Server
IP address or fully-qualified domain name of an email server using Simple Message Transfer Protocol. Note: By default, the AX device can reach SMTP servers only if they are reachable through the AX devices data ports, not the management port. To enable the AX device to reach SMTP servers through the management port, see Using the Management Interface as the Source for Management Traffic on page 929. Protocol port to which email messages sent to the SMTP server are addressed.
Log Rate Limiting The AX device uses a log rate limiting mechanism to ensure against overflow of external log servers and the internal logging buffer. The rate limit for external logging is 15,000 messages per second from the AX device.
48 of 950
P e r f o r m a n c e
b y
D e s i g n
then during the next one-second interval, the AX sends log messages only to the external log servers.
If the number of new messages generated within the new one-second
interval is 32 or less, then during the following one-second interval, the AX will again send messages to the local logging buffer as well as the external log server. In any case, all messages (up to 15,000 per second) get sent to the external log servers.
P e r f o r m a n c e
b y
49 of 950
Enabling SNMP
AX devices support the following SNMP versions: v1, v2c, v3. SNMP is disabled by default. You can configure the AX device to send SNMP traps to the Syslog and to external trap receivers. You also can configure read (GET) access to SNMP Management Information Base (MIB) objects on the AX device by external SNMP managers. Note: SNMP access to the AX device is read-only. SET operations (write access) are not supported. The AX device supports the following SNMP-related RFCs:
RFC 1157, A Simple Network Management Protocol (SNMP) RFC 1901, Introduction to Community-based SNMPv2 RFC 2233, The Interfaces Group MIB using SMIv2
50 of 950
P e r f o r m a n c e
b y
D e s i g n
tions
RFC 3414, User-based Security Model (USM) for version 3 of the Sim-
face Types
SNMP Traps
Table 3 lists the SNMP traps supported by the AX device. All traps are disabled by default. TABLE 3 AX SNMP Traps
Trap Link Up Link Down Description Indicates that an Ethernet interface has come up. Indicates that an Ethernet interface has gone down.
P e r f o r m a n c e
b y
51 of 950
High Disk Usage High Memory Usage Packet Buffer drop Network Trunk Ports Threshold
52 of 950
P e r f o r m a n c e
b y
D e s i g n
* This threshold is configurable. To use the GUI, navigate to Config > System > Settings > General > Threshold. In the CLI, use the monitor command at the global configuration level.
P e r f o r m a n c e
b y
53 of 950
54 of 950
P e r f o r m a n c e
b y
D e s i g n
P e r f o r m a n c e
b y
55 of 950
56 of 950
P e r f o r m a n c e
b y
D e s i g n
Configuration Examples
The following examples show how to configure the system settings described in this chapter.
GUI EXAMPLE
The following examples show the GUI screens used for configuration of the basic system settings described in this chapter. Note: The GUI does not support configuration of SNMPv3 settings.
P e r f o r m a n c e
b y
57 of 950
58 of 950
P e r f o r m a n c e
b y
D e s i g n
P e r f o r m a n c e
b y
59 of 950
60 of 950
P e r f o r m a n c e
b y
D e s i g n
P e r f o r m a n c e
b y
61 of 950
FIGURE 10
Save Button
62 of 950
P e r f o r m a n c e
b y
D e s i g n
CLI EXAMPLE
The following commands log onto the CLI, access the global configuration level, and set the hostname and configure the other DNS settings:
login as: admin Welcome to AX Using keyboard-interactive authentication. Password:******** Last login: Tue Jan 13 19:51:56 2009 from 192.168.1.144 [type ? for help] AX>enable Password:******** AX#config AX(config)#hostname AX-SLB2 AX-SLB2(config)#ip dns suffix ourcorp AX-SLB2(config)#ip dns primary 10.10.20.25 AX-SLB2(config)#ip dns secondary 192.168.1.25
The following examples set the login banner to welcome to login mode and set the EXEC banner to welcome to exec mode:
AX-SLB2(config)#banner login welcome to login mode AX-SLB2(config)#banner exec welcome to exec mode
AX-SLB2(config)#ntp server 10.1.4.20 AX-SLB2(config)#ntp server enable The following commands configure the AX device to send system log messages to an external syslog server and to email Emergency messages to the system admins. In this example, the message levels sent to the external server are left at the default, Error (3) and above. By default, the same mesP e r f o r m a n c e D e s i g n Document No.: D-030-01-00-0006 - Ver. 2.4.3 6/21/2010 b y
63 of 950
AX-SLB2(config)#smtp ourmailsrvr AX-SLB2(config)#logging email-address [email protected] [email protected] AX-SLB2(config)#logging email 0 The following commands enable SNMP and all traps, configure the AX device to send traps to an external trap receiver, and configure a community string for use by external SNMP managers to read MIB data from the AX device.
AX-SLB2(config)#snmp-server location ourcorp-HQ AX-SLB2(config)#snmp-server contact Me_admin1 AX-SLB2(config)#snmp-server enable trap AX-SLB2(config)#snmp-server community read ourcorpsnmp AX-SLB2(config)#snmp-server host 192.168.10.11 ourcorpsnmp
The following command saves the configuration changes to the startup-config. This is the file from which the AX device loads the configuration following a reboot.
AX-SLB2(config)#write memory
not specify a message level, messages of any severity level match the filter and can be emailed. Software Module Software modules for which to email messages. Messages are emailed only if they come from one of the specified software modules. If you do not specify a software module, messages from all modules match the filter and can be emailed. Regular Expression Message text to match on. Standard regular expression syntax is supported. Only messages that meet the criteria of the regular expression can be emailed. The regular expression
64 of 950
P e r f o r m a n c e
b y
D e s i g n
how the conditions should be compared. (See Boolean Operators on page 65.)
Trigger option Specifies whether to buffer matching messages or send
them immediately. Boolean Operators A logging email filter consists of a set of conditions joined by Boolean expressions (AND / OR / NOT). The CLI Boolean expression syntax is based on Reverse Polish Notation (also called Postfix Notation), a notation method that places an operator (AND, OR, NOT) after all of its operands (in this case, the conditions list). After listing all the conditions, specify the Boolean operator(s). The following operators are supported:
AND All conditions must match in order for a log message to be
emailed.
OR Any one or more of the conditions must match in order for a log
message to be emailed.
NOT A log message is emailed only if it does not match the conditions
(For more information about Reverse Polish Notation, see the following link: http://en.wikipedia.org/wiki/Reverse_Polish_notation.)
P e r f o r m a n c e
b y
65 of 950
66 of 950
P e r f o r m a n c e
b y
D e s i g n
FIGURE 12
Config > System > Settings > Log (Logging Email Filter added)
P e r f o r m a n c e
b y
67 of 950
The filter-num option specifies the filter number, and can be 1-8. The conditions list can contain one or more of the following:
level severity-levels Specifies the severity levels of messages to send
in email. You can specify the severity levels by number (0-7) or by name: emergency, alert, critical, error, warning, notification, information, or debugging.
mod software-module-name Specifies the software modules for which
to email messages. Messages are emailed only if they come from one of the specified software modules. For a list of module names, enter ? instead of a module name, and press Enter.
pattern regex Specifies the string requirements. Standard regular
expression syntax is supported. Only messages that meet the criteria of the regular expression will be emailed. The regular expression can be a simple text string or a more complex expression using standard regular expression logic. The operators are a set of Boolean operators (AND, OR, NOT) that specify how the conditions should be compared. (See Filter Syntax below.) The trigger option immediately sends the matching messages in an email instead of buffering them. If you omit this option, the messages are buffered based on the logging email buffer settings. Considerations
You can configure up to 8 filters. The filters are used in numerical order,
starting with filter 1. When a message matches a filter, the message will be emailed based on the buffer settings. No additional filters are used to examine the message.
A maximum of 8 conditions are supported in a filter.
68 of 950
P e r f o r m a n c e
b y
D e s i g n
is still supported: logging email severity-level The severity-level can be one or more of the following: 0, 1, 2, 5, emergency, alert, critical, notification. The command is treated as a special filter. This filter is placed into effect only if the command syntax shown above is in the configuration. The filter has an implicit trigger option for emergency, alert, and critical messages, to emulate the behavior in previous releases. CLI Example The following command configures the AX device to buffer log messages to be emailed. Messages will be emailed only when the buffer reaches 32 messages, or 30 minutes passes since the previous log message email, whichever happens first.
AX(config)#logging email buffer number 32 time 30
The following command resets the buffer settings to their default values.
AX(config)#no logging email buffer number time
The following command configures a filter that matches on log messages if they are information-level messages and contain the string abc. The trigger option is not used, so the messages will be buffered rather than emailed immediately.
AX(config)#logging email filter 1 level information pattern "abc" and
The following command reconfigures the filter to immediately email matching messages.
AX(config)#logging email filter 1 level information pattern "abc" and trigger
P e r f o r m a n c e
b y
69 of 950
70 of 950
P e r f o r m a n c e
b y
D e s i g n
Network Setup
This chapter describes how to insert the AX device into your network. After you complete the setup tasks in this chapter that are applicable to your network, the AX device will be ready to configure for its primary function: load balancing. Note: This chapter includes an example for Routing Information Protocol (RIP). For information about Open Shortest Path First (OSPF), see Open Shortest Path First (OSPF) on page 105.
Overview
AX Series devices can be inserted into your network with minimal or no changes to your existing network. You can insert the AX device into your network as a Layer 2 switch or a Layer 3 router. The same Layer 4-7 features are available with either deployment option. You can deploy the AX device as a single unit or as a High Availability (HA) pair. Deploying a pair of AX devices in an HA configuration provides an extra level of redundancy to help ensure your site remains available to clients. For simplicity, the examples in this chapter show deployment of a single AX device. For information about HA, see High Availability on page 445. Examples are provided in this chapter for the following types of network deployment:
Transparent mode Transparent mode in multinetted environment Route mode (also called gateway mode) Direct Server Return (DSR) in transparent mode DSR in route mode DSR in mixed Layer 2/Layer 3 environment
P e r f o r m a n c e
b y
71 of 950
IP Subnet Support
Each AX device has a management interface and data interfaces. The management interface is a physical Ethernet port. A data interface is a physical Ethernet port, a trunk group, or a Virtual Ethernet (VE) interface. The management interface can have a single IP address. An AX device deployed in transparent mode (Layer 2) can have a single IP address for all data interfaces. The IP address of the data interfaces must be in a different subnet than the management interfaces address. An AX device deployed in route mode (Layer 3) can have separate IP addresses on each data interface. No two interfaces can have IP addresses that are in the same subnet. This applies to the management interface and all data interfaces.
72 of 950
P e r f o r m a n c e
b y
D e s i g n
Transparent Mode
Figure 13 shows an example of an AX Series device deployed in transparent mode. FIGURE 13 AX Deployment Example Transparent Mode
The blue arrows show the traffic flow for client-server traffic; in this example, between clients and server 10.10.10.3. In this example, the AX device is inserted directly between the gateway router and the real servers. The AX device and real servers are all in the same subnet and all use the router as their default gateway.
P e r f o r m a n c e
b y
73 of 950
Configuration Example
This section shows the GUI screens and CLI commands needed to implement the configuration shown in Figure 13.
74 of 950
P e r f o r m a n c e
b y
D e s i g n
Real server configuration The following screen examples show the GUI pages for basic SLB configuration. To implement changes entered on a GUI configuration page, click OK at the bottom of the page.
P e r f o r m a n c e
b y
75 of 950
76 of 950
P e r f o r m a n c e
b y
D e s i g n
P e r f o r m a n c e
b y
77 of 950
FIGURE 19
Config > Service > SLB > Virtual Server - Virtual Server Port
78 of 950
P e r f o r m a n c e
b y
D e s i g n
The following commands enable the Ethernet interfaces used in the example:
AX(config)#interface ethernet 1 AX(config-if:ethernet1)#enable AX(config-if:ethernet1)#interface ethernet 2 AX(config-if:ethernet2)#enable AX(config-if:ethernet2)#interface ethernet 3 AX(config-if:ethernet3)#enable AX(config-if:ethernet3)#exit
The following commands add the SLB configuration. (For more information about SLB commands, see the SLB configuration chapters in this guide. Also see the AX Series CLI Reference.) Commands to configure the real servers
AX(config)#slb server rs1 10.10.10.3 AX(config-real server)#port 80 tcp AX(config-real server-node port)#exit AX(config-real server)#exit AX(config)#slb server rs2 10.10.20.4 AX(config-real server)#port 80 tcp AX(config-real server-node port)#exit AX(config-real server)#exit
P e r f o r m a n c e
b y
79 of 950
This example is similar to the example in Figure 13, except the real servers are in separate subnets. Each server uses the router as its default gateway, but at a different subnet address.
80 of 950
P e r f o r m a n c e
b y
D e s i g n
P e r f o r m a n c e
b y
81 of 950
Configuration Example
This section shows the GUI screens and CLI commands needed to implement the configuration shown in Figure 20. Note: GUI examples are shown here only for the configuration elements that are new in this section (VLAN and Source NAT pool). For examples of the GUI screens for the rest of the configuration, see Transparent Mode on page 73.
FIGURE 22
82 of 950
P e r f o r m a n c e
b y
D e s i g n
P e r f o r m a n c e
b y
83 of 950
The following commands enable the Ethernet interfaces used in the example:
AX(config)#interface ethernet 1 AX(config-if:ethernet1)#enable AX(config-if:ethernet1)#interface ethernet 2 AX(config-if:ethernet2)#enable AX(config-if:ethernet2)#interface ethernet 3 AX(config-if:ethernet3)#enable AX(config-if:ethernet3)#interface ethernet 4 AX(config-if:ethernet4)#enable AX(config-if:ethernet4)#exit
The following commands configure the VLANs. By default, all AX Ethernet data ports are in VLAN 1 by default, so the only configuration required in this example is to create a second VLAN and add ports to it. The ports you add to other VLANs are automatically removed from VLAN 1.
AX(config)#vlan 2 AX(config-vlan:2)#untagged ethernet 2 ethernet 4 AX(config-vlan:2)#exit
The following command configures a pool of IP addresses for use by source NAT. The pool is in the same subnet as real server 10.10.20.4.
AX(config)#ip nat pool pool1 10.10.20.100 10.10.20.101 netmask /24 gateway 10.10.20.1
The following commands add the SLB configuration. The source-nat command enables the IP address pool configured above to be used for NATting health check traffic between the AX device and the real server. (For more information about SLB commands, see the SLB configuration chapters in this guide. Also see the AX Series CLI Reference.)
84 of 950
P e r f o r m a n c e
b y
D e s i g n
P e r f o r m a n c e
b y
85 of 950
Route Mode
Figure 24 shows an example of an AX device deployed in route mode. FIGURE 24 AX Deployment Example Route Mode
The blue arrows show the traffic flow for client-server traffic; in this example, between clients and server 192.168.4.101. This example shows a database server that is not part of the SLB configuration but that is used by the real servers when fulfilling client requests. Real servers can reach the database server through the AX device just as they would through any other
86 of 950
P e r f o r m a n c e
b y
D e s i g n
Configuration Example
This section shows the GUI screens and CLI commands needed to implement the configuration shown in Figure 24. Note: GUI examples are shown here only for the configuration elements that are new in this section (configuration of routing parameters). For examples of the GUI screens for the SLB configuration, see Transparent Mode on page 73. In the current release, the GUI does not support configuration of RIP or OSPF.
Note:
P e r f o r m a n c e
b y
87 of 950
FIGURE 26
88 of 950
P e r f o r m a n c e
b y
D e s i g n
The following commands configure the AX device as a RIP router. In this example, a simple text string (myrip) is used to authenticate route updates exchanged between the AX device and its neighboring RIP routers.
AX(config)#interface ethernet 1 AX(config-if:ethernet1)#ip rip authentication string myrip AX(config-if:ethernet1)#interface ethernet 2 AX(config-if:ethernet2)#ip rip authentication string myrip AX(config-if:ethernet2)#interface ethernet 3 AX(config-if:ethernet3)#ip rip authentication string myrip AX(config-if:ethernet3)#exit AX(config-if:ethernet3)#interface ethernet 4 AX(config-if:ethernet4)#ip rip authentication string myrip AX(config-if:ethernet4)#exit AX(config)#router rip AX(config-router-rip)#network 10.10.10.0 /24 AX(config-router-rip)#network 192.168.1.0 /24 AX(config-router-rip)#network 192.168.2.0 /24
P e r f o r m a n c e
b y
89 of 950
The following commands add the SLB configuration. (For more information about SLB commands, see the SLB configuration chapters in this guide. Also see the AX Series CLI Reference.) Commands to configure the real servers
AX(config)#slb server rs1 192.168.1.101 AX(config-real server)#port 80 tcp AX(config-real server-node port)#exit AX(config-real server)#exit AX(config)#slb server rs2 192.168.2.101 AX(config-real server)#port 80 tcp AX(config-real server-node port)#exit AX(config-real server)#exit
90 of 950
P e r f o r m a n c e
b y
D e s i g n
In this example, the AX device is attached to the network in a one-armed configuration. A single link connects the AX device to the network. The
P e r f o r m a n c e
b y
91 of 950
enabled, and with the alias address set to the virtual IP address. Globally enable DSR health checking. Layer 4-7 health checks are sent to the same IP address as the Layer 3 health checks, and then addressed to the specific protocol port. You can use the default TCP and UDP health monitors or configure new health monitors. This example uses the default TCP health monitor. Requirements This configuration has certain requirements:
Requirements on the AX device: The AX device, virtual server, and the real servers all must be in the
same subnet. The virtual server IP address must be configured as a loopback interface on each real server. (This is performed on the real server itself, not as part of the real servers configuration on the AX device.) DSR must be enabled on the virtual service ports. (Enabling DSR is equivalent to disabling destination NAT.) Note: In the current release, for IPv4 VIPs, DSR is supported on virtual port types (service types) TCP, UDP, FTP, and RTSP. For IPv6 VIPs, DSR is supported on virtual port types TCP, UDP, and RTSP.
P e r f o r m a n c e b y D e s i g n
92 of 950
address. ARP replies from the loopback interfaces must be disabled. (This applies to the loopback interfaces that have the virtual server IP address.)
Configuration Example
This section shows how to implement the configuration shown in Figure 27.
93 of 950
The following commands enable the Ethernet interface connected to the clients and server:
AX(config)#interface ethernet 3 AX(config-if:ethernet3)#enable AX(config-if:ethernet3)#exit
The following commands add the SLB configuration. (For more information about SLB commands, see the SLB configuration chapters in this guide. Also see the AX Series CLI Reference.) Commands to configure the real servers
AX(config)#slb server rs1 10.10.10.3 AX(config-real server)#port 80 tcp AX(config-real server-node port)#exit AX(config-real server)#exit AX(config)#slb server rs2 10.10.10.4 AX(config-real server)#port 80 tcp AX(config-real server-node port)#exit AX(config-real server)#exit
94 of 950
P e r f o r m a n c e
b y
D e s i g n
P e r f o r m a n c e
b y
95 of 950
The configuration is very similar to the one for DSR in transparent mode, except the AX device uses an IP interface configured on an individual Ethernet port instead of a global IP address. The requirements for the AX device and real servers are the same as those for DSR in transparent mode. (See Direct Server Return in Transparent Mode on page 91.) Note: VIP redistribution is not supported for VIPs that are configured for Direct Server Return (DSR).
96 of 950
P e r f o r m a n c e
b y
D e s i g n
Configuration Example
This section shows how to implement the configuration shown in Figure 28. Note: The following examples only show the part of the configuration that differs from deployment of DSR in transparent mode. The only difference is configuration of the IP interface on the Ethernet interface connected to the router, and configuration of a default route.
P e r f o r m a n c e
b y
97 of 950
The rest of the configuration commands are the same as those shown in Direct Server Return in Transparent Mode on page 91, beginning with configuration of the real servers.
98 of 950
P e r f o r m a n c e
b y
D e s i g n
In this example, two real servers are used as the primary servers for VIP 10.10.10.99:80. They are in the same IP subnet as the AX device. Each of them is configured for DSR: destination NAT is disabled on the virtual port. Another server, 192.168.2.10, is configured as a backup, to be used only if both primary servers are unavailable. Since the backup server is a valuable network resource, serving as a server farm backup is only one of its functions. It also used by other applications elsewhere in the network. The AX device can be configured to use the server as a backup to a DSR server farm, without changing the network topology.
P e r f o r m a n c e
b y
99 of 950
mary servers, so that the member for the backup server has the lower priority. By default, the AX device will not use the lower-priority server (the backup server) unless all the primary servers are down. Use the same priority for all the primary servers.
Enable destination NAT on the backup server. By default, destination
NAT is unset on real ports, and is set by the virtual port. Normally, destination NAT is disabled on virtual ports used for DSR. However, destination NAT needs to be enabled on the real port on the backup server. Enabling destination NAT for the backup server allows the server to remain on a different subnet from the AX device, and still be used for the VIP that normally is served by DSR. The backup server does not need to be moved to a Layer 2 connection to the AX device and the servers IP address does not need to be changed. It can remain on a different subnet from the AX device and the primary servers. Destination NAT can not be set directly on an individual real port. To enable destination NAT on a real port, create a real port template and enable destination NAT in the template. You can bind the template to the real port itself, or to the service group member for the port. If you bind the template to the port itself, the template applies to the port in all service groups that use the port. If you bind the template to the service group member instead, the template applies to the port only within the service group. The template does not apply to the same port when used in other service groups. Note: VIP redistribution is not supported for VIPs that are configured for Direct Server Return (DSR).
100 of 950
P e r f o r m a n c e
b y
D e s i g n
P e r f o r m a n c e
b y
101 of 950
FIGURE 31
To set the priority values of the primary servers to a higher value than the backup server, re-add the members for the primary servers ports, and use the priority option. Set the priority to a value higher than 1 (the default). Use the same priority value on each of the primary servers member ports.
102 of 950
P e r f o r m a n c e
b y
D e s i g n
P e r f o r m a n c e
b y
103 of 950
104 of 950
P e r f o r m a n c e
b y
D e s i g n
This chapter provides configuration examples. For detailed CLI syntax information, see OSPF Command Reference on page 207.
105 of 950
Configuration Example
The configuration excerpts in this example configure OSPFv2 and OSPFv3 on an AX device.
Interface Configuration
The following commands configure two physical Ethernet data interfaces. Each interface is configured with an IPv4 address and an IPv6 address. Each interface also is added to OSPF area 0 (the backbone area). The link-state metric (OSPF cost) of Ethernet 2 is set to 30, which is higher than the default, 10. Based on the cost difference, OSPF routes through Ethernet 1 will be favored over OSPF route through Ethernet 2, because the OSPF cost of Ethernet 1 is lower.
interface ethernet 1 ip address 2.2.10.1 255.255.255.0 ipv6 address 5f00:1:2:10::1/64 ipv6 router ospf area 0 tag 1 ! interface ethernet 2 ip address 3.3.3.1 255.255.255.0 ipv6 address 5f00:1:2:20::1/64 ip ospf cost 25 ipv6 router ospf area 0 tag 1
The following commands configure two Virtual Ethernet (VE) interfaces. On VE 3, an IPv4 address is configured. On VE 4, an IPv4 address and an IPv6 address are configured. OSPFv2 authentication is configured on VE 3, and the OSPF cost is set to 20. On VE 4, the OSPF cost is set to 15. Another dynamic routing protocol, RIP, is also enabled.
interface ve 3 ip address 1.1.1.2 255.255.255.0 ip ospf authentication message-digest ip ospf message-digest-key 1 md5 abc ip ospf cost 20 !
106 of 950
P e r f o r m a n c e
b y
D e s i g n
The following commands configure global settings for OSPFv3 instance 1. The router ID is set to 3.3.3.3. A stub area is added, redistribution is enabled, and the SPF timer is changed.
router ipv6 ospf 1 router-id 3.3.3.3 redistribute static metric 5 metric-type 1 redistribute ip-nat redistribute floating-ip area 1 stub timers spf exp 500 50000
P e r f o r m a n c e
b y
107 of 950
OSPF Logging
To enable logging for OSPF: 1. Configure router log file settings. 2. Enable OSPF logging (debugging). The following commands configure router log file settings:
router log file name routerlog router log file per-protocol router log file size 10 router log file rotate 4
These commands create a router log file named routerlog. The per-protocol option will log messages for each routing protocol separately. The log file will hold a maximum 10 MB of data, after which the messages will be saved in a backup and the log file will be cleared. The log will be backed up a maximum of 4 times, after which the oldest backup will be deleted to make room for a new backup. The following commands enable logging for OSPFv2:
debug a10 ospf debug ospf all
For each level, both debug commands are required. The all option in the debug ospf all and debug ipv6 ospf all commands enables all OSPFv2 or OSPFv3 logging options. For descriptions if the individual options, see debug on page 266. Note: Note: Log file settings are retained across reboots but debug settings are not. Enabling debug settings that produce lots of output, or enabling all debug settings, is not recommend for normal operation.
108 of 950
P e r f o r m a n c e
b y
D e s i g n
Overview
HTTP load balancing manages HTTP traffic across a Web server farm. Figure 32 shows an example of an HTTP load balancing deployment. Note: The network topologies in application examples such as this one are simplified to focus on the application. For example, the Internet router connecting the clients to the AX device is not shown here. Likewise, a single AX is shown. Your configuration might use an AX pair for High Availability (HA). FIGURE 32 HTTP Load Balancing
P e r f o r m a n c e
b y
109 of 950
SERVICE GROUPS
A service group contains a set of real servers from which the AX device can select to service a client request. This example uses a single service group that contains all the real servers and the applicable service port (80). During configuration, you bind the service group to the virtual port(s) on the virtual server. The AX device selects a server based on the load balancing method used by the service group, and on additional criteria relevant to the load balancing method. In this example, the default load balancing method, round robin, is used. The round robin method selects servers in rotation. For example, the first client request is sent to server web-2, the next client request is sent to server web-3, and so on.
VIRTUAL SERVER
The virtual server in this example has IP address 192.168.10.11 and virtual service port 80. When you configure a virtual service port, you specify the protocol port number for the port. You also specify the service type. The AX device supports the following service types for HTTP ports:
HTTP Complete TCP stack. Use this service type if you plan to cus-
tomize 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
110 of 950
P e r f o r m a n c e
b y
D e s i g n
not plan to offload SSL or customize any templates, use Fast-HTTP. (For a complete list of the service types, see Virtual Service Port Parameters on page 877.)
TEMPLATES
Templates are sets of configuration parameters that apply to specific service types or to servers and service ports. This example uses the default settings for each of the templates that are automatically applied to the HTTP service type and to the real and virtual servers and ports. The rest of the information in this section is for reference but is not required reading to continue with this example. For some of types of templates, the AX configuration has a default template that is automatically applied to a service port unless you apply another template of the same type instead. (See Service Template Parameters on page 819.) Service Templates For HTTP, the AX configuration applies default templates of each of the following template types to HTTP service ports:
TCP-Proxy TCP-proxy templates control TCP stack settings, includ-
ing the idle timeout for TCP connections. Unless you need to change the setting for a TCP/IP stack parameter, you can safely allow the AX device to apply the default TCP-proxy template to the service types that use it.
HTTP HTTP templates provide many options, including options to
change information in the HTTP header, enable compression, and select a service group based on the URL requested by the client. By default, all the options in this template are disabled or not set, so you can safely allow the AX device to apply the default for this template type too.
Connection Reuse Allows TCP connections between the AX device
and real servers to be reused for multiple clients instead of terminating a connection and starting a new one for each new client. Although the default connection reuse template is automatically applied, the default settings in the template disable connection reuse. Unless you want to use connection reuse, you can ignore this template. (Connection reuse requires additional configuration. See Connection Reuse on page 609.)
P e r f o r m a n c e
b y
111 of 950
reply before sending the reply to the client. The cookie ensures that subsequent requests from the client for the same virtual server and virtual port are directed to the same service group, real server, or real service port.
Source-IP Persistence Similar to cookie persistence, except the AX
device does not insert cookies. Instead, clients are directed to the same resource in the server farm for every request, for the duration of a configurable timer on the AX device. The granularity of the persistence can be set to always use the same real server port, the same real server, or the same service group. (For an example that uses a source-IP persistence template, see Layer 4 TCP/UDP Load Balancing on page 255.) Server and Port Templates The AX device uses templates for configuration of some commonly used server and port parameters. By default, the following templates are applied:
Default server template Contains configuration parameters for real
servers
Default port template Contains configuration parameters for real ser-
vice ports
Default virtual-server template Contains configuration parameters for
virtual servers
Default virtual-port template Contains configuration parameters for
virtual service ports Each of the default templates is named default. For more information about server and port templates, see the following:
Server and Port Templates on page 353 in this guide Config Commands: SLB Templates chapter in the AX Series CLI Ref-
erence
Config > Service > SLB > Template section in the Config Mode
112 of 950
P e r f o r m a n c e
b y
D e s i g n
HEALTH MONITORS
This example uses the following types of health monitors to check the real servers:
Ping A Layer 3 health method that sends an ICMP echo request to the
real servers IP address. The server passes the health check if the AX device receives a ping reply.
TCP By default, every 30 seconds the AX device sends a connection
request (TCP SYN) to each load balanced TCP port on each server, in this case ports 80 and 443. A TCP port passes the health check if the server replies to the AX device by sending a TCP SYN ACK. By default, the AX device completes the TCP handshake. In addition to these default health checks, you can configure health monitors for specific service types. This example uses an HTTP health monitor, with the following default settings.
Every 30 seconds, the AX device sends an HTTP GET request for the
present on the server and the server replies with an OK message (200). (For more information about health monitors and their configurable options, see Health Monitoring on page 373.)
3. Configure the service group. Add the real servers and service ports to the group. 4. Configure the virtual server:
Add the HTTP service port, with service type Fast-HTTP. Bind the service group to the virtual port.
P e r f o r m a n c e
b y
113 of 950
114 of 950
P e r f o r m a n c e
b y
D e s i g n
P e r f o r m a n c e
b y
115 of 950
FIGURE 35
Config > Service > SLB > Server (real servers added)
Note:
The AX device begins sending health checks to a real servers IP address and service ports as soon as you finish configuring the server. The overall health status for the server is shown in the Health column. If the status is Down ( ) instead of Up ( ), verify that health monitors are configured for all the service ports. The default Layer 3 health method is auto-
116 of 950
P e r f o r m a n c e
b y
D e s i g n
P e r f o r m a n c e
b y
117 of 950
118 of 950
P e r f o r m a n c e
b y
D e s i g n
P e r f o r m a n c e
b y
119 of 950
FIGURE 38 section
Config > Service > SLB > Virtual Server - Virtual Server Port
120 of 950
P e r f o r m a n c e
b y
D e s i g n
P e r f o r m a n c e
b y
121 of 950
CLI EXAMPLE
The following commands configure the HTTP health monitor:
AX(config)#health monitor http-monitor AX(config-health:monitor)#method http AX(config-health:monitor)#exit
122 of 950
P e r f o r m a n c e
b y
123 of 950
124 of 950
P e r f o r m a n c e
b y
D e s i g n
Overview
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.
lated from part of the URL string. (See URL Hash Switching on page 128.)
URL / host switching Selects a service group based on the URL path
or domain in the clients GET request. (See URL / Host Switching on page 133.)
Failover URL If the URL in GET request cannot be reached due to
server unavailability, the AX device sends a 302 Redirect to the client. (See URL Failover on page 141.)
5xx retry and reassignment Retries a server that replies to a request
with a 5xx status code instead of sending the status code to the client, and reassigns the request to another server if the first server continues to reply with a 5xx status code. (See 5xx Retry and Reassignment on page 143.)
Strict transaction switching Performs server selection for each request
within a client-server session, rather than performing server-selection once per session. This option provides a simple method to force rebalP e r f o r m a n c e D e s i g n Document No.: D-030-01-00-0006 - Ver. 2.4.3 6/21/2010 b y
125 of 950
content compression from real servers. Enabling content compression on the AX device can help increase overall website performance by freeing real server resources from CPU-intensive compression tasks. (See Content Compression on page 144.) Options that Modify HTTP Requests
Client IP insertion Inserts the clients IP address into GET requests
before sending the requests to a real server. The address is added as a value to the X-ClientIP field by default. Optionally, you can add the client address to a different field instead; for example: X-Forwarded-For. (See Client IP Insertion / Replacement on page 151.)
Header insertion / erasure Inserts a field:value pair into requests or
responses, or deletes a header. (See Header Insertion / Erasure on page 154.) Options that Modify Server Replies
Redirect rewrite Modifies 302 Redirect messages from real servers
before sending the redirect messages to clients. This option can convert HTTP URLs into HTTPS URLs, and can modify the domain or URL path in the redirect message. (See URL Redirect Rewrite on page 159.)
To configure an HTTP template and bind it to a virtual service port, use either of the following methods:
126 of 950
P e r f o r m a n c e
b y
D e s i g n
P e r f o r m a n c e
b y
127 of 950
128 of 950
P e r f o r m a n c e
b y
D e s i g n
In this example, a service group contains three real servers. Each of the real servers contains the same set of .html(l), .pdf, and .jpg files. The AX device is configured to calculate a hash value based on the last 3 bytes of the URL string in the client request, and assign the hash value to a server. After assigning a hash value to a server, the AX device sends all requests that match the hash value to the same real server. In this example, all requests that end with pdf are sent to the same server. If the real server becomes unavailable, the AX device selects another server, assigns a hash value to it, and uses that server for all subsequent requests for URL strings that have the same hash value.
P e r f o r m a n c e
b y
129 of 950
the hash value. The example in Figure 39 calculates hash values based on the last 3 bytes of the URL strings.
130 of 950
P e r f o r m a n c e
b y
D e s i g n
Description Server is able to handle all of its own requests. Server also can handle requests for other servers if necessary.
AX Action AX device continues using the server for the URLs hashed to the server. If necessary, AX device also uses the server to help with URLs hashed to servers that have load status 2. AX device continues using the server for the URLs hashed to the server. AX device does not use the server to help handle requests for other servers. AX device uses servers that have load status 0 to help handle the overloaded servers requests.
Server is able to handle its own requests. However, server can not handle requests for other servers.
Server is overloaded and needs help handling its own requests. Requests are distributed among this server and at least one other server (with load status 0), in round robin fashion.
The system conditions that result in reporting 0, 1, or 2 depend on how you program calculation of the code. For example, you can program the server to set the Server-Status code based on CPU utilization, memory utilization, I/O utilization, and so on. For a CPU-intensive application, you could calculate the Server-Status code based on CPU utilization. For an I/O-intensive application, you could calculate the Server-Status code based on I/O utilization. Server Load Awareness Load-Balancing Example Here is an example of how server load awareness works. In this example, URL hash switching is used to balance traffic load across three servers: S1, S2, and S3. Assume that the first request for URI /article-new1 is hashed to S1. Subsequent requests are load balanced as listed in Table 4. TABLE 5 Server-Status Load-Balancing Example
Load Status Reported by Server 0 0 0
Server S1 S2 S3
AX Action New requests for /article-new1 are sent only to server S1.
P e r f o r m a n c e
b y
131 of 950
Server S1 S2 S3 S1 S2 S3
AX Action New requests for /article-new1 are distributed between S1 and S2, using round robin. New requests for /article-new1 are distributed between S1 and S3, using round robin.
AX Configuration On the AX device, URL hash switching with server load awareness does not require configuration of dedicated backup servers in the service group. Instead, any primary server can also act as a backup for other servers, based on server load. Server load awareness is disabled by default but can easily be enabled in new or existing URL hash switching configurations. Configure an HTTP template with URL hash switching. Include the use-server-status (CLI) or Use Server Status (GUI) option.
132 of 950
The following commands configure an HTTP template for URL hash switching with server load awareness:
AX(config)#slb template http url-hash AX(config-HTTP template)#url-hash-persist last 12 use-server-status
the Host field of the HTTP requests header Note: If you plan to use URL / host switching along with cookie persistence, you must enable the match-type service-group option in the cookie persis-
P e r f o r m a n c e
b y
133 of 950
In this example, the AX device is configured to use separate service groups for URLs in the www.example.com domain. The real servers in service group sg-abc provide content for www.example.com/abc. The real servers in service group sg-123 provide content for www.example.com/123. URL switching rules configured on the AX device select a service group based on the beginning of the URL on the GET line of client requests. Requests for URLs that begin with /abc are sent to service group sg-abc. Likewise, requests for URLs that begin with /123 are sent to service group sg-123.
134 of 950
P e r f o r m a n c e
b y
D e s i g n
specified string.
Contains string matches if the specified string appears anywhere
specified string. These match options are always applied in the following order, regardless of the order in which the rules appear in the configuration. The service group for the first match is used.
Starts-with Contains Ends-with
If a template has more than one rule with the same option (starts-with, contains, or ends-with) and a URL or host name matches on more than one of them, the most-specific match is always used. For example, if a template has the following rules, requests for host www.ddeeff.org will always be directed to service group http-sgf: host-switching contains d service-group http-sgd host-switching contains dd service-group http-sge host-switching contains dde service-group http-sgf If you use the starts-with option with URL switching, use a slash in front of the URL string. For example: url-switching starts-with /urlexample service-group http-sg1
P e r f o r m a n c e
b y
135 of 950
136 of 950
P e r f o r m a n c e
b y
D e s i g n
The following commands bind the HTTP template and service group sg-abc to virtual port 80:
AX(config)#slb virtual-server vs1 1.1.1.1 AX(config-slb virtual server)#port 80 http AX(config-slb virtual server-slb virtua...)#template http urlswitch AX(config-slb virtual server-slb virtua...)#service-group sg-abc
The following commands bind the HTTP template and service group sg-123 to virtual port 80:
AX(config)#slb virtual-server vs1 1.1.1.1 AX(config-slb virtual server)#port 80 http AX(config-slb virtual server-slb virtua...)#template http urlswitch AX(config-slb virtual server-slb virtua...)#service-group sg-123
P e r f o r m a n c e
b y
137 of 950
In this example, URL switching and cookie persistence are both configured, and the service-group option is enabled in the cookie persistence template. For each client request, URL switching selects a service group first. Then, after a service group is selected, a real server and port are selected within the service group.
138 of 950
P e r f o r m a n c e
b y
D e s i g n
the selected service group, the AX device uses SLB to select a server, then inserts a persistence cookie into the reply from the server. The cookie includes the service group name.
If the clients request already has a persistence cookie containing the
name of the selected service group, the AX device uses the information in the cookie to select the same server within the service group. For example, the first time service group sgabc is selected by URL switching, the AX device inserts a cookie into the server's reply, to ensure that the same server is used the next time URL switching selects sgabc. The first time service group sg123 is selected by URL switching, the AX device inserts a second cookie into the servers reply, to ensure that the same server is used the next time URL switching selects sg123. Even though URL switching does not always select the same service group, the same server within the selected service group is always selected. Cookie Persistence Match-Type Options When cookie persistence is configured, the AX device adds a persistence cookie to the server reply before sending the reply to the client. The clients browser re-inserts the cookie into each request. The format of the cookie depends on the match-type setting:
match-type (port) This is the default setting. Subsequent requests
from the client will be sent to the same real port on the same real server. URL switching or host switching is used only for the first request. The cookie that the AX device inserts into the server reply has the following format: Set-Cookie: cookiename-vport=rserverIP_rport The vport is the virtual port number. The rserverIP is the real server IP address and the rport is the real server port number. Note: The port option is shown in parentheses because the CLI does not have a port keyword. If you do not set the match type to server (see below), the match type is automatically port.
match-type server Subsequent requests from the client for the same
VIP will be sent to the same real server, provided that all virtual ports of the VIP use the same cookie persistence template with match-type set to server. URL switching or host switching is used only for the first request. The cookie that the AX device inserts into the server reply has the following format: Set-Cookie: cookiename=rserverIP
P e r f o r m a n c e D e s i g n Document No.: D-030-01-00-0006 - Ver. 2.4.3 6/21/2010 b y
139 of 950
will be sent to the same real port on the same real server, within the service group selected by URL switching or host switching. URL switching or host switching is still used for every request. The cookie that the AX device inserts into the server reply has the following format: Set-Cookie: cookiename-vport-servicegroupname=rserverIP_rport
match-type server service-group Subsequent requests from the cli-
ent for the same VIP will be sent to the same real server, within the service group selected by URL switching or host switching. URL switching or host switching is still used for every request. The cookie that the AX device inserts into the server reply has the following format: Set-Cookie: cookiename-servicegroupname=rserverIP Note: For security, address information in the persistence cookies is encrypted.
140 of 950
P e r f o r m a n c e
b y
D e s i g n
URL Failover
The AX device can send an HTTP 302 Redirect message to a client when the real servers for the URL requested by the client are unavailable. Figure 42 shows an example. FIGURE 42 URL Failover
P e r f o r m a n c e
b y
141 of 950
142 of 950
P e r f o r m a n c e
b y
D e s i g n
Note:
Note:
143 of 950
Content Compression
Most types of real servers are able to compress media (content) before sending it to clients. Compression reduces the amount of bandwidth required to send content to clients. Although compression optimizes bandwidth, compression also can sometimes actually hinder overall website performance, if the real servers spend a lot of their CPU resources performing the compression. To maximize the benefits of content compression, you can enable the AX device to perform compression for the real servers. Compression is disabled by default. When you enable it, the AX device compresses media of types text and application by default. You can configure the AX device to compress additional media types You also can configure the AX device to exclude specific media types and even specific URIs from compression.
144 of 950
P e r f o r m a n c e
b y
D e s i g n
P e r f o r m a n c e
b y
145 of 950
Hardware-Based Compression
Hardware-based compression is available using an optional hardware module in the following AX models: AX 2100, AX 2200, AX 3100, AX 3200, and AX 5200. Note: Installation of the compression module into AX devices in the field is not supported. Contact A10 Networks for information on obtaining an AX device that includes the module. Hardware-based compression is disabled by default. When you enable it, all compression settings configured in HTTP templates, except the compression level, are used. Note: Hardware-based compression is automatically set on the module and can not be set using a template. The module always uses the same compression level, regardless of the compression level configured in an HTTP template.
146 of 950
P e r f o r m a n c e
b y
D e s i g n
Note:
If the AX device is configured to leave the Accept-Encoding field unchanged, and the real server has already compressed the file, the AX device forwards the compressed file without recompressing it.
P e r f o r m a n c e
b y
147 of 950
148 of 950
P e r f o r m a n c e
b y
D e s i g n
P e r f o r m a n c e
b y
149 of 950
The following command displays HTTP compression statistics. The counters are in bytes and apply to all HTTP compression configured in all HTTP templates on the AX device. The compression counters are shown in bold type.
AX(config-HTTP template)#show slb http-proxy Total -----------------------------------------------------------------Curr Proxy Conns 58 Total Proxy Conns 49 HTTP requests 306 HTTP requests(succ) 269 No proxy error 0 Client RST 17 Server RST 0 No tuple error 0 Parse req fail 0
150 of 950
P e r f o r m a n c e
b y
D e s i g n
The following commands enable hardware-based compression and display statistics for the feature:
AX(config)#slb hw-compression AX(config)#show slb hw-compression Hardware compression device is installed. Hardware compression module is enabled. Total -----------------------------------------------------------------total request count total submit count total response count total failure count last failure code compression queue full max queued submit count 177157 177157 177157 0 0 0 68
151 of 950
152 of 950
P e r f o r m a n c e
b y
D e s i g n
P e r f o r m a n c e
b y
153 of 950
The following commands bind the HTTP template to virtual port 80:
AX(config)#slb virtual-server vs1 1.1.1.1 AX(config-slb virtual server)#port 80 http AX(config-slb virtual server-slb virtua...)#template http insertclientip
154 of 950
P e r f o r m a n c e
b y
D e s i g n
Note:
Note:
contains a header with the same field name, the new field:value pair is added after the existing field:value pair. Existing headers are not replaced.
Insert-if-not-exist inserts the header only if the packet does not already
the packet already contains one or more headers with the specified field name, this option replaces the first header. Effects of the Insert / Replace Options Here are some examples of the effects of the insert / replace options: insertalways, insert-if-not-exist, and the default (no options). For these examples, assume that a clients request packet already contains the following Cookie headers: Cookie: a=1 and Cookie: b=2. GET / HTTP/1.1 Host: www.example.com Cookie: a=1 Cookie: b=2 ...
P e r f o r m a n c e
b y
155 of 950
156 of 950
P e r f o r m a n c e
b y
D e s i g n
field:value pair. If the request already contains a header with the same field name, the new field:value pair is added after the existing field:value pair. Existing headers are not replaced.
If you use the insert-if-not-exist option, the command inserts the header
only if the packet does not already contain a header with the same field name. To insert a field:value pair into response headers, use the following command: [no] response-header-insert field:value [insert-always | insert-if-not-exist]
P e r f o r m a n c e
b y
157 of 950
The following command configures an HTTP template that always inserts Cookie: c=3 into HTTP requests, but does not replace other Cookie headers. The Cookie: c=3 header is added after any Cookie headers that are already present in the request.
AX(config)#slb template http add-cookie AX(config-HTTP template)#request-header-insert "Cookie: c=3" insert-always
The following command configures an HTTP template that inserts Cookie: c=3 into HTTP requests, but only if the requests do not already have a Cookie header.
AX(config)#slb template http add-cookie-unless-present AX(config-HTTP template)#request-header-insert "Cookie: c=3" insert-if-not-
exist
158 of 950
P e r f o r m a n c e
b y
D e s i g n
the client. For example, if the real server redirects the client to http://www.example1.com, you change the URL to http://www.example2.com or https://www.example2.com.
Secure redirection You can change an unsecure redirect (HTTP) to a
secure one (HTTPS). For example, if the real server redirects the client to http://www.example1.com, you change the URL to https://www.example1.com. You can use one or both options. Redirect-Rewrite Rule Matching If a URL matches on more than redirect-rewrite rule within the same HTTP template, the AX device selects the rule that has the most specific match to the URL. For example, if a server sends redirect URL 66.1.1.222/000.html, and the HTTP template has the redirect-rewrite rules shown below, the AX device will use the last rule because it is the most specific match to the URL:
P e r f o r m a n c e
b y
159 of 950
160 of 950
P e r f o r m a n c e
b y
D e s i g n
The following commands bind the HTTP template to virtual port 80:
AX(config)#slb virtual-server vs1 1.1.1.1 AX(config-slb virtual server)#port 80 http AX(config-slb virtual server-slb virtua...)#template http secureredirect
P e r f o r m a n c e
b y
161 of 950
162 of 950
P e r f o r m a n c e
b y
D e s i g n
Overview
FTP load balancing optimizes the download experience for clients by balancing FTP traffic across servers in a server farm. You can provide clients with a single, published virtual IP address for large files, and serve the files from a set of real servers. Figure 45 shows an example of an FTP load balancing solution. FIGURE 45 FTP Load Balancing
P e r f o r m a n c e
b y
163 of 950
itly bind this template to the HTTP port on the virtual server. The AX device automatically binds this template to a virtual TCP port on a virtual server when you create the port, unless you explicitly bind another TCP template to the virtual port instead.
For FTP, a custom TCP template is required, with the idle time set to a
high value, to prevent FTP download sessions from timing out if they pause for a while. This custom TCP template must be explicitly bound to the virtual FTP port on the virtual server. In this case, the custom template is used instead of the default TCP template. The default HTTP template is assigned to the virtual HTTP port by default. However, the parameters in the default HTTP template are unset by default. For this configuration, you do not need to configure a different HTTP template or change settings in the default one. This example does not include configuration of server or port templates, so the default templates and their settings are applied.
164 of 950
P e r f o r m a n c e
b y
D e s i g n
Health Monitors This example uses the following health monitors to check the real servers:
Ping Tests Layer 3 connectivity to the servers. The Ping health moni-
tor is already configured by default, and is enabled by default when you add the real server.
HTTP Tests the HTTP port by requesting a Web page from the port. In
this example, the default settings are used: Every 30 seconds, the AX device sends an HTTP Get request for the index.html page.
FTP Tests the FTP port by sending a login request to the port. In this
example, the default settings are used: Every 30 seconds, the AX device sends an anonymous FTP login request to port 21. The Ping health monitor is already configured by default, and is enabled by default when you add the real server. The HTTP and FTP monitors must be configured and applied to the real server ports. The AX device has default Layer 4 health checks it uses to test the TCP and UDP transport layers. This configuration also uses those health checks. (For information, see Default Health Checks on page 373.)
P e r f o r m a n c e
b y
165 of 950
166 of 950
P e r f o r m a n c e
b y
D e s i g n
FIGURE 47 monitor)
Config > Service > Health Monitor - Method section (for FTP
P e r f o r m a n c e
b y
167 of 950
To configure the real servers 1. Select Config > Service > SLB. 2. Select Server on the menu bar. 3. Click Add. 4. In the General section, enter a name for the server in the Name field. 5. Enter the IP address of the server in the IP Address field. 6. Change the weight be editing the number in the Weight field. In this example, change the weight for the HTTP/FTP server to 80 and change the weights of the two other FTP servers to 100. 7. In the Port section, enter the HTTP (or FTP) port number in the Port field. 8. Leave the transport protocol set to TCP. 9. In the Health Monitor drop-down list, select the HTTP or FTP health monitor you configured in To configure the health monitors on page 166. (Select the monitor that matches the port type, HTTP or FTP.) 10. Click Add. The new port appears in the port list. 11. Click OK. The new server appears in the server table. 12. Repeat step 3 through step 11 for each of the other real servers.
168 of 950
P e r f o r m a n c e
b y
D e s i g n
P e r f o r m a n c e
b y
169 of 950
170 of 950
P e r f o r m a n c e
b y
D e s i g n
FIGURE 52 servers)
Config > Service > SLB > Server (showing configured real
Note:
The Health Monitor column shows the Layer 3 (ICMP ping) health monitors for the real servers, not the Layer4-7 health monitors for individual server ports.
P e r f o r m a n c e
b y
171 of 950
To configure a service group for HTTP 1. Select Config > Service > SLB. 2. Select Service Group on the menu bar, if not already selected. 3. Click Add. 4. In the Service Group section, enter a name in the Name field. 5. Leave the transport protocol set to TCP. 6. In the Algorithm field, select the load balancing method. For this example, select Weighted Round Robin. 7. Enter the real servers IP address in the Server field. 8. Enter the protocol port in the Port field.
172 of 950
P e r f o r m a n c e
b y
D e s i g n
To configure a service group for FTP Repeat the procedure in To configure a service group for HTTP on page 172, with the following differences:
In the Algorithm drop-down list, select Weighted Round Robin. (If your
configuration does not use weights to bias server selection, you can leave this field set to Round Robin.)
Add members 10.10.10.2-4 for port 21.
P e r f o r m a n c e
b y
173 of 950
FIGURE 56
174 of 950
P e r f o r m a n c e
b y
D e s i g n
P e r f o r m a n c e
b y
175 of 950
Config > Service > Virtual Server - Virtual Server Port section
176 of 950
P e r f o r m a n c e
b y
D e s i g n
FIGURE 60
Config > Service > Virtual Server - Port section (ports added)
FIGURE 61
P e r f o r m a n c e
b y
177 of 950
178 of 950
P e r f o r m a n c e
b y
D e s i g n
P e r f o r m a n c e
b y
179 of 950
The following commands configure the TCP template for use with FTP:
AX(config)#slb template tcp ftp-longidletime AX(config-L4 TCP LB template)#idle-timeout 15000 AX(config-L4 TCP LB template)#exit
180 of 950
P e r f o r m a n c e
b y
D e s i g n
P e r f o r m a n c e
b y
181 of 950
182 of 950
P e r f o r m a n c e
b y
D e s i g n
P e r f o r m a n c e
b y
183 of 950
184 of 950
P e r f o r m a n c e
b y
D e s i g n
P e r f o r m a n c e
b y
185 of 950
186 of 950
P e r f o r m a n c e
b y
D e s i g n
P e r f o r m a n c e
b y
187 of 950
188 of 950
P e r f o r m a n c e
b y
D e s i g n
P e r f o r m a n c e
b y
189 of 950
FIGURE 66 added
Config > Service > SLB > Server - Registrar and Proxy servers
190 of 950
P e r f o r m a n c e
b y
D e s i g n
FIGURE 68
FIGURE 69
P e r f o r m a n c e
b y
191 of 950
FIGURE 71
FIGURE 72
192 of 950
P e r f o r m a n c e
b y
D e s i g n
193 of 950
194 of 950
P e r f o r m a n c e
b y
D e s i g n
P e r f o r m a n c e
b y
195 of 950
The following commands configure the VIP for the SIP registrar:
AX(config)#slb virtual-server sip1 192.168.20.1 AX(config-slb virtual server)#port 5060 sip AX(config-slb virtual server-slb virtua...)#service-group sip5060 AX(config-slb virtual server-slb virtua...)#template sip Registrar_template
196 of 950
P e r f o r m a n c e
b y
D e s i g n
SIP clients send secure SIP requests over TLS. The requests are addressed to a VIP configured on the AX device. The AX device forwards the requests to the SIP servers over TCP. Likewise, when the AX device receives SIP traffic from the SIP servers, the AX device forwards the traffic to the appropriate clients over TLS.
SIP Multiplexing
You can use the AX device to multiplex SIP connections. This is useful in cases where the SIP servers do not have enough capacity to maintain separate connections for each SIP client. Figure 74 shows an example.
P e r f o r m a n c e
b y
197 of 950
In this example, each SIP server can handle a maximum of 256 client connections. However, there are 1000 SIP clients that use the VIP as their SIP server. To enable the SIP servers to be used with this many clients, the connectionreuse feature is configured on the AX device. The AX device is allowed to open a maximum of 100 connections to each server, but uses each connection for multiple clients. While the AX device is sending a client request on a connection, the connection is in use. However, as soon as the request has been sent, the AX device frees the connection to be used again. The connection can be used for the same client or another client. The AX device does not wait for a reply to the clients request before freeing the connection. Figure 75 shows an example. FIGURE 75 SIP Connection Reuse
198 of 950
P e r f o r m a n c e
b y
D e s i g n
lowing options: Timeout Specifies how long a reusable connection can remain idle before being terminated. Limit per server Specifies the maximum number of connections to the server. (In Figure 74, this option would be set to 100.) Keep-alive connections Specifies the number of new reusable connections to open before beginning to reuse the existing connections for new clients.
Client IP insertion When this SIP template feature is enabled, the AX
device inserts an X-Forwarded-For header into the clients request before forwarding the request to the SIP server. The header contains the clients IP address and client port number. The AX device expects the server to send back this header, and uses the header to identify the client to which to send replies from the SIP server.
Server keepalive (described in Client Keepalive and Server Keepalive
on page 200) Client and Server Requirements for SIP Multiplexing In order for the AX device to be used as a multiplexer for SIP over TCP/ TLS, the clients and SIP servers must meet certain requirements:
The SIP clients must be able to send SIP pings. The SIP server must be able to reply to SIP pings, with SIP pongs. The SIP server must be able to include the X-Forward-For header added
P e r f o r m a n c e
b y
199 of 950
message containing a single CRLF. Client keepalive enables the AX device to reply to SIP pings sent by clients instead of forwarding them to the SIP server. This feature is applicable regardless of whether you use the AX device to multiplex SIP connections. Server keepalive enables the AX device to generate SIP pings and send them to the server. The AX device uses server keepalive to prevent the reusable connections to the server from aging out. If the AX device does not receive a pong before the connection-reuse timeout expires, the AX device closes the connection. Server keepalives apply only to configurations that include connection reuse, such as a configuration that uses the AX device as a SIP multiplexer. Figure 76 shows an example of a configuration that uses both SIP keepalive features. FIGURE 76 SIP Keepalive
Note:
If connection reuse is configured, even if client keepalive is disabled, the AX device will respond to a client SIP ping with a pong.
200 of 950
P e r f o r m a n c e
b y
D e s i g n
server-selection failures.
Drop the SIP message. Send a message string. Example message string sent to client when server can not be
reached: 504 Server Time-out Example message string sent to server when client can not be reached: 480 Temporarily Unavailable
P e r f o r m a n c e
b y
201 of 950
For example, if the client is required to be authenticated before registration, and the authentication realm is the VIP instead of a domain name, the AX device must not translate the virtual IP address and port into a real server address and port in the Authorization header. Otherwise, authentication will fail.
number on the server (for example, 5060) as the port number. Use TCP as the protocol type. Use a Layer 4 TCP health monitor. When you add the TCP port, the default TCP health monitor is automatically applied to the port and enabled.
Configure a service group containing the real servers. Configure a SIP template with at least the following options enabled: Client IP insertion Client keepalive Server keepalive Configure a connection-reuse template. Set the limit-per-server option
server would use to authenticate clients. Configure a client-SSL template and add the certificates and keys to the template.
Configure a virtual server with the IP address to which clients will send
SIP requests. For SIP over TLS Clients, add a protocol port with service type sips. For SIP over TCP Clients, add a protocol port with service type sip-tcp. Bind the port to the service group, and to the SIP and connection-reuse templates. If a client-SSL template is used, bind the port to the client-SSL template too.
202 of 950
P e r f o r m a n c e
b y
D e s i g n
Otherwise, the GUI procedures for creating the configuration items needed for SIP over TCP/TLS are the same as in previous releases. The following figures show examples of the GUI configuration pages for implementing the SIP multiplexing configuration shown in Figure 74 on page 198. FIGURE 77 Config > Service > SLB > Server
P e r f o r m a n c e
b y
203 of 950
204 of 950
P e r f o r m a n c e
b y
D e s i g n
FIGURE 80
P e r f o r m a n c e
b y
205 of 950
FIGURE 82
FIGURE 83
Config > Service > Template > SSL > Client SSL
206 of 950
P e r f o r m a n c e
b y
D e s i g n
P e r f o r m a n c e
b y
207 of 950
208 of 950
P e r f o r m a n c e
b y
D e s i g n
P e r f o r m a n c e
b y
209 of 950
exclude-translation {body | header string | start-line} This command disables translation of the virtual IP address and virtual port in specific portions of SIP messages:
210 of 950
P e r f o r m a n c e
b y
D e s i g n
the SIP request line or status line. (For default information, see SLB Network Address Translation for SIP over TCP / TLS on page 201.) timeout minutes This command specifies the number of minutes a SIP session can remain idle before the AX device terminates it. You can specify 1-250 minutes. The default is 30 minutes. To Configure a Connection-Reuse Template Use the following commands: slb template connection-reuse template-name Use this command at the global configuration level of the CLI. This command changes the CLI to the configuration level for the template, where the following commands are available. limit-per-server number This command specifies the maximum number of reusable connections per server port. You can specify 0-65535. 0 means unlimited. The default is 1000. keep-alive-conn number This command specifies the number of new reusable connections to open before beginning to reuse existing connections. You can specify 1-1024 connections. The default is 100. timeout seconds This command specifies the maximum number of seconds a connection can remain idle before it times out. You can specify 1-3600 seconds. The default is 2400 seconds. To Configure a Client-SSL Template Before configuring the template, use the following command to import the certificates and keys. Use this command at the global configuration level of the CLI.
P e r f o r m a n c e D e s i g n Document No.: D-030-01-00-0006 - Ver. 2.4.3 6/21/2010 b y
211 of 950
To configure the client-SSL template, use the following commands: slb template client-ssl template-name Use this command at the global configuration level of the CLI. The command changes the CLI to the configuration level for the template. For information about the template options, see the AX Series CLI Reference. To Configure a Virtual Server Use the following commands: slb virtual-server name ipaddr Use this command at the global configuration level of the CLI. For the ipaddr, use the IP address to which clients will send SIP traffic. This command changes the CLI to the configuration level for the virtual server, where the following commands are available: port port-number sips port port-number sip-tcp Use the sips option to add a port for SIP over TLS clients. Use the sip-tcp option to add a port for SIP over TCP clients. This command changes the CLI to the configuration level for the virtual port, where the following commands are available:
212 of 950
P e r f o r m a n c e
b y
D e s i g n
CLI Example
The commands in this example implement the SIP multiplexing configuration shown in Figure 74 on page 198, and show SIP SLB statistics. The following commands access the configuration level of the CLI and configure a SIP over TCP health monitor: AX>enable AX#config AX(config)#health monitor sip-over-tcp
AX(config-health:monitor)#method sip tcp
The following commands configure the real servers: AX>enable AX#config AX(config)#slb server siptls-rs1 10.4.2.1 AX(config-real server)#port 5060 tcp
AX(config-real server)#healthcheck sip-over-tcp AX(config-real server-node port)#exit AX(config-real server)#exit
P e r f o r m a n c e
b y
213 of 950
The following commands import the certificates and keys to use for authenticating SIP clients:
AX(config)#slb ssl-load certificate ca-cert.pem scp: Address or name of remote host []?192.168.1.1 User name []?admin Password []?********* File name [/]?ca-cert.pem AX(config)#slb ssl-load private-key ca-certkey.pem scp: Address or name of remote host []?192.168.1.1 User name []?admin Password []?********* File name [/]?ca-certkey.pem AX(config)#slb ssl-load certificate cert.pem scp: Address or name of remote host []?192.168.1.1 User name []?admin Password []?********* File name [/]?cert.pem AX(config)#slb ssl-load private-key certkey.pem scp: Address or name of remote host []?192.168.1.1 User name []?admin Password []?********* File name [/]?certkey.pem
214 of 950
P e r f o r m a n c e
b y
D e s i g n
CLI Example
The following command shows SIP SLB statistics:
AX#show slb sip Total -----------------------------------------------------------------Curr Proxy Conns 0 Total Proxy Conns 115 Client message 125 Client message (fail) 0 Server message 12 Server message (fail) 0 Client request 119 Client request (succ) 12 Client RST 0 Server RST 113 Parse message fail 0 Server selection fail 0 Server conn made 115 Source NAT failure 0
P e r f o r m a n c e
b y
215 of 950
By default, the AX device performs reverse NAT on all traffic from a SIP server before forwarding the traffic. Reverse NAT translates the source IP address of return traffic from servers to clients back into the VIP address before forwarding the traffic to clients. However, if the SIP server needs to reach another server, and the traffic must pass through the AX device, the destination server will receive the traffic from the VIP address instead of the SIP server address. To disable reverse NAT in this type of situation: 1. Configure an extended ACL that matches on the SIP server IP address or subnet as the source address, and matches on the destination servers IP address or subnet as the destination address.
216 of 950
P e r f o r m a n c e
b y
D e s i g n
The following commands configure a SIP template that disables reverse NAT for traffic that matches the ACL:
AX(config)#slb template sip sip1 AX(config-sip)#pass-real-server-ip-for-acl 101 AX(config-sip)#exit
The following commands bind the SIP template to the SIP virtual port:
AX(config)#slb virtual-server sip-vip 192.168.20.1 AX(config-slb vserver)#port 5060 sip AX(config-slb vserver-vport)#template sip sip1
P e r f o r m a n c e
b y
217 of 950
218 of 950
P e r f o r m a n c e
b y
D e s i g n
Overview
The AX device provides the following types of SSL optimization:
SSL Offload The AX device applies Layer 7 features to HTTPS traffic
per your configured HTTP template options, such as those described in HTTP Options for SLB on page 125.
SSL proxy The AX device acts as a Layer 4 SSL proxy for TCP ser-
vices such as POPS, SMTPS, IMAPS, and LDAPS. SSL offload uses service type (virtual port type) HTTPS, and supports deep packet inspection and header manipulation. SSL proxy uses service type SSL-proxy and provides Layer 4 SLB but does not provide deep packet inspection or header manipulation. Both types of SSL optimization perform SSL handshakes, as well as encryption / decryption. SSL certificates and keys are required. You can import the certificates and keys or create them on the AX device. Note: The AX device also supports STARTTLS acceleration and encryption. See STARTTLS for Secure SMTP on page 239.
P e r f o r m a n c e
b y
219 of 950
HTTPS traffic.
Layer 7 features are not required.
220 of 950
P e r f o r m a n c e
b y
D e s i g n
P e r f o r m a n c e
b y
221 of 950
FIGURE 88
Configure > Service > Template > SSL > Client SSL
222 of 950
P e r f o r m a n c e
b y
D e s i g n
The following commands configure a client SSL template to use the certificate and key:
AX(config)#slb template client-ssl sslcert-tmplt AX(config-client SSL template)#cert sslcert.crt AX(config-client SSL template)#key sslcertkey.pem AX(config-client SSL template)#exit
P e r f o r m a n c e
b y
223 of 950
224 of 950
225 of 950
226 of 950
P e r f o r m a n c e
b y
D e s i g n
P e r f o r m a n c e
b y
227 of 950
228 of 950
P e r f o r m a n c e
b y
D e s i g n
P e r f o r m a n c e
b y
229 of 950
The following commands configure a service group for the HTTPS servers:
AX(config)#slb service-group HTTPS_servers tcp AX(config-slb service group)#member HTTPS1:80 AX(config-slb service group)#member HTTPS2:80 AX(config-slb service group)#exit
230 of 950
P e r f o r m a n c e
b y
D e s i g n
231 of 950
232 of 950
P e r f o r m a n c e
b y
D e s i g n
P e r f o r m a n c e
b y
233 of 950
234 of 950
P e r f o r m a n c e
b y
D e s i g n
FIGURE 96
Configure > Service > SLB > Virtual Server - Port tab
P e r f o r m a n c e
b y
235 of 950
236 of 950
P e r f o r m a n c e
b y
D e s i g n
The following commands configure a service group for the POP servers:
AX(config)#slb service-group POP_servers tcp AX(config-slb service group)#member POP1:110 AX(config-slb service group)#member POP2:110 AX(config-slb service group)#exit
The following commands configure the VIP to which clients will send POPS traffic:
AX(config)#slb virtual-server v1 10.6.6.6 AX(config-slb virtual server)#port 110 ssl-proxy AX(config-slb virtual server-slb virtua...)#service-group SMTP_servers AX(config-slb virtual server-slb virtua...)#template client-ssl sslcert-tmplt
P e r f o r m a n c e
b y
237 of 950
238 of 950
P e r f o r m a n c e
b y
D e s i g n
Overview
AX Series devices support the STARTTLS feature. STARTTLS is an extension to SMTP that enables you to secure mail traffic to and from your legacy SMTP servers. SMTP itself does not provide any security. When the AX device is configured to perform STARTTLS, the AX acts as a proxy between SMTP clients and servers. Mail traffic to and from clients is encrypted by the AX, whereas traffic between the AX and the SMTP servers is clear (not encrypted). Figure 97 shows an example of the STARTTLS feature. FIGURE 97 STARTTLS
P e r f o r m a n c e
b y
239 of 950
You can configure the AX to require STARTTLS. In this case, before any mail transactions are allowed, the client must issue the STARTTLS command to establish a secured session. If the client does not issue the STARTTLS command, the AX sends the following message to the client: "530 - Must issue a STARTTLS command first
Disable SMTP commands By default, the VRFY, EXPN, and TURN
commands are allowed. You can disable support of any of these commands. In this case, if the client tries to issue a disabled SMTP command, the AX sends the following message to the client: 502 Command not implemented Domain Switching By default, SMTP traffic from all client domains is sent to the same service group. You can configure multiple service groups and send traffic to the groups based on the client domain. For example, you can send SMTP traffic from clients in domain "CorpA" to a different service group than SMTP traffic from clients in domain "CorpB". FIGURE 98 STARTTLS Domain Switching
240 of 950
P e r f o r m a n c e
b y
D e s i g n
Configuring STARTTLS
To configure STARTTLS: 1. Import a certificate and its key to use for TLS sessions with clients. 2. Configure a client SSL template and add the certificate and its key to it. 3. Configure a real server for each SMTP server and add the SMTP port to the server. 4. Configure a service group for the SMTP servers and add them to the group. 5. Configure an SMTP template. Within the template: a. Specify the email server domain. The default is mail-serverdomain. b. Optionally, modify the service ready message. The default message text is "ESMTP mail service ready". The complete message sent to the client is constructed as follows: 200 - smtp-domain service-ready-string c. Optionally, disable one or more of the following SMTP commands: VRFY, EXPN, or TURN. If a client sends an SMTP command that is disabled on the AX, the AX sends the following message to the client: 502 - Command not implemented d. Optionally, change STARTTLS from being optional to being required. If you leave the setting "optional", mail clients will be able to send and receive unencrypted mail. e. Optionally, load balance SMTP traffic among multiple service groups based on client domains. 6. Configure a virtual server and port for the SMTP address to which clients will send SMTP traffic, and add the SMTP service group and SMTP template to the port.
P e r f o r m a n c e
b y
241 of 950
242 of 950
P e r f o r m a n c e
b y
D e s i g n
P e r f o r m a n c e
b y
243 of 950
244 of 950
P e r f o r m a n c e
b y
D e s i g n
245 of 950
246 of 950
P e r f o r m a n c e
b y
D e s i g n
P e r f o r m a n c e
b y
247 of 950
The following commands configure a service group for the SMTP servers:
AX(config)#slb service-group SMTP_servers tcp AX(config-slb service group)#member SMTP1:25 AX(config-slb service group)#member SMTP2:25 AX(config-slb service group)#exit
The following commands configure the STMP template. In this example, additional security is added by enforcing STARTTLS and by disabling the SMTP commands VRFY, EXPN, and TURN.
AX(config)#slb template smtp starttls-tmplt AX(config-slb template)#server-domain mycorp.com AX(config-slb template)#service-ready-message MyCorp ESMTP mail service is ready AX(config-slb template)#starttls enforced AX(config-slb template)#command-disable vrfy expn turn
The following commands configure the VIP to which mail clients will send SMTP traffic:
AX(config)#slb virtual-server v1 10.1.1.1 AX(config-slb virtual server)#port 25 smtp AX(config-slb virtual server-slb virtua...)#service-group SMTP_servers AX(config-slb virtual server-slb virtua...)#template client-ssl mailcert-tmplt AX(config-slb virtual server-slb virtua...)#template smtp starttls-tmplt
248 of 950
P e r f o r m a n c e
b y
D e s i g n
Overview
AX Series devices support content-aware load balancing of the following widely used streaming-media types:
Real Time Streaming Protocol (RTSP) Microsoft Media Server (MMS)
Note:
The AX Series also supports load balancing of Session Initiation Protocol (SIP) sessions. For information, see SIP Load Balancing on page 183. Figure 101 shows an example of a streaming-media load balancing solution.
P e r f o r m a n c e
b y
249 of 950
In this example, a server farm provides streaming content in both RTSP and MMS format. All the servers are allowed to serve HTTP and HTTPS requests. Two of the servers (stream-rs2 and stream-rs3) are configured to serve RTSP and MMS requests. Service Groups This example uses the following service groups:
all80-grp The servers in this service group provide HTTP and HTTPS
service. In this example, all the servers are members of this service group.
rtsp554-grp The servers in this service group provide RTSP content. mms1755-grp The servers in this service group provide MMS content.
250 of 950
P e r f o r m a n c e
b y
D e s i g n
251 of 950
252 of 950
P e r f o r m a n c e
b y
D e s i g n
P e r f o r m a n c e
b y
253 of 950
254 of 950
P e r f o r m a n c e
b y
D e s i g n
Overview
In addition to load balancing for well-known and widely used types of services such as HTTP, HTTPS, and FTP, AX devices also support Layer 4 load balancing for custom applications. If a service you need to load balance is not one of the well-known service types recognized by the AX device, you still can configure Layer 4 TCP or UDP load balancing for the service. Figure 102 shows an example of a Layer 4 load balancing implementation.
P e r f o r m a n c e
b y
255 of 950
Layer 4 load balancing balances traffic based on the transport protocol (TCP or UDP) and the protocol port number. The payload of the UDP or TCP packets is not examined. In this example, a custom application is running on a server farm consisting of three real servers. Clients navigate to the VIP to use the custom application. Note: To configure deeper packet inspection for custom applications, you can use aFleX policies. For example, you can configure an aFleX policy to examine the byte value at a certain position within each client request packet and select a server based on the value of the byte. For information about aFleX policies, see the AX Series aFleX Reference.
SERVICE GROUPS
This example uses a single service group that contains all the real servers. The service group uses the default load balancing method (round robin).
256 of 950
P e r f o r m a n c e
b y
D e s i g n
VIRTUAL SERVER
The custom application on the real servers is accessed at TCP port 1020 by clients through virtual IP address 192.168.55.55.
TEMPLATES
The AX device has default TCP and UDP templates. You can use the default template or configure another TCP or UDP template and use that one instead. If your Layer 4 load balancing configuration is for a TCP application and you do not bind a TCP template to the virtual port, the default TCP template is used. For a UDP application, the default UDP template is used unless you bind another UDP template to the virtual port. One of the parameters you can configure in TCP and UDP templates is the idle time. Depending on the requirements of your application, you can reduce or increase the amount of time the AX device allows a session to remain idle. For UDP transaction-based applications, another parameter you can adjust is how quickly connections are terminated after a server reply is received. For example, if there are licensing costs associated with active sessions, you can minimize unnecessary costs by quickly terminating idle sessions, and immediately terminating connections that are no longer needed. For more information about the parameters controlled by TCP and UDP templates, see the following sections:
TCP Template Parameters on page 854 UDP Template Parameters on page 857
Optionally, you also can configure a source-IP persistence template and bind it to the virtual port. The example in this chapter uses a source-IP persistence template that is configured to send all traffic from a given client IP address to the same real server. Without this custom template, different requests from a given client can be sent to different servers, based simply on the load balancing method. See Source-IP Persistence Template Parameters on page 850.
P e r f o r m a n c e
b y
257 of 950
HEALTH MONITORS
This example uses the default Layer 3 and Layer 4 health monitors. The Layer 3 monitor (Ping) and the applicable Layer 4 monitor (TCP or UDP) are enabled by default when you configure the real server and real service ports. Note: You can create an external health monitor using a script and import the monitor onto the AX device. For information, see Health Monitoring on page 373.
258 of 950
P e r f o r m a n c e
b y
D e s i g n
259 of 950
260 of 950
P e r f o r m a n c e
b y
D e s i g n
P e r f o r m a n c e
b y
261 of 950
CLI EXAMPLE
The following commands configure the real servers:
AX(config)#slb server tcp-2 10.10.10.2 AX(config-real server)#port 1020 tcp AX(config-real server-node port)#exit AX(config-real server)#exit AX(config)#slb server tcp-3 10.10.10.3 AX(config-real server)#port 1020 tcp AX(config-real server-node port)#exit AX(config-real server)#exit AX(config)#slb server tcp-4 10.10.10.4 AX(config-real server)#port 1020 tcp AX(config-real server-node port)#exit AX(config-real server)#exit
262 of 950
P e r f o r m a n c e
b y
D e s i g n
Overview
IP protocol load balancing enables you to easily load balance traffic based solely on whether the traffic is TCP, UDP, or other (not UDP or TCP), without the need to specify the protocol port numbers to be load balanced. You can combine IP protocol load balancing with other load balancing configurations. For example, you can use IP protocol load balancing along with HTTP load balancing. In this case, HTTP traffic to the VIP HTTP port number is load balanced separately from traffic to other port numbers. Figure 103 shows an example of an IP protocol load balancing deployment.
P e r f o r m a n c e
b y
263 of 950
This example uses separate service groups for each of the following types of traffic:
HTTP traffic addressed to TCP port 80 is sent to service group http-grp. All TCP traffic addressed to any TCP port except port 80 is sent to ser-
264 of 950
P e r f o r m a n c e
b y
D e s i g n
udp-grp.
All other traffic (all non TCP/UDP traffic) is sent to service group oth-
ers-grp. Although this example shows separate service groups for each type of traffic, you can use the same service group for multiple traffic types. In IP protocol load-balancing configurations, port 0 (zero) is used as a wildcard port and matches on any port number. In configurations where some protocol port numbers are explicitly specified, SLB for those ports takes precedence over SLB for the wildcard port (0). In the example above, the service group configured for TCP port 80 is always used for client requests addressed to that port, instead of a service group configured for the wildcard port. Health checking does not apply to the wildcard port. When you configure IP protocol load balancing, make sure to disable health checking of port 0. If you leave health checking enabled, the port will be marked down and the clients request therefore will not be serviced. SLB NAT For client request traffic to which IP protocol load balancing applies, the AX device translates only the destination IP address, not the protocol port number. The AX device translates the destination IP address in the request from the VIP address to a real servers IP address. The AX device then sends the request to the same protocol port number as the one requested by the client. (Likewise, the AX device does not translate the port number to 0.) In configurations where some protocol port numbers are explicitly specified, auto port translation is still supported for the explicitly specified port numbers. In the example above, SLB NAT can translate TCP port 80 into another TCP port number if required by the configuration. Template Support For TCP or UDP, a TCP or UDP template is applied, as in other types of SLB. Optionally, you also can use a source-IP persistence template. For non-TCP/UDP traffic, the TCP template is used.
P e r f o r m a n c e
b y
265 of 950
ALG application, either enable DSR or configure SLB explicitly for the ALG service port.
Any application that requires inspection of any part of the client request
packet other than the destination IP address Note: In the CLI, DSR is enabled by the no-dest-nat command. Comparison of IP Protocol Load Balancing to Layer 4 TCP/UDP Load Balancing IP protocol load balancing is similar to Layer 4 load balancing, except IP protocol load balancing enables you to load balance non-TCP/UDP traffic. Layer 4 load balancing applies only to TCP or UDP traffic. In addition, IP protocol load balancing uses a wildcard port number that matches on any TCP port, UDP port, or any non-TCP/UDP port, depending on the configuration. Layer 4 load balancing requires you to explicitly specify the protocol port numbers to load balance.
266 of 950
P e r f o r m a n c e
b y
D e s i g n
Note:
For load balancing of non-TCP/UDP traffic, you can specify TCP or UDP as the transport protocol, in the configurations of the real server ports and service groups. If the port number is 0 and the service type on the virtual port is others, the AX device will load balance the traffic as non-TCP/ UDP traffic.
267 of 950
268 of 950
P e r f o r m a n c e
b y
D e s i g n
To display configuration information and statistics, you can use the same show commands used for other types of SLB: show slb virtual show slb server show slb service-group show session
P e r f o r m a n c e
b y
269 of 950
270 of 950
P e r f o r m a n c e
b y
D e s i g n
Wildcard VIPs
You can create SLB configurations that use wildcard VIPs and wildcard virtual ports. A wildcard VIP matches on any destination IP address. Likewise, a wildcard virtual port matches on any port number. Wildcard VIPs enable you to configure a feature that applies to multiple VIPs, without the need to re-configure the feature separately for each VIP. To specify the subset of VIP addresses and ports for which the feature applies, you can use an ACL. If applicable, the ACL also can specify the subset of clients allowed to access the VIPs. You can use wildcard VIPs for all types of load balancing:
SLB IP load balancing Transparent Cache Switching (TCS) Link Load Balancing (LLB) Firewall Load Balancing (FWLB)
Note:
P e r f o r m a n c e
b y
271 of 950
272 of 950
P e r f o r m a n c e
b y
D e s i g n
P e r f o r m a n c e
b y
273 of 950
274 of 950
P e r f o r m a n c e
b y
D e s i g n
Configuration Examples
See the following:
Outbound Link Load Balancing on page 289 Transparent Cache Switching on page 295
P e r f o r m a n c e
b y
275 of 950
276 of 950
P e r f o r m a n c e
b y
D e s i g n
Figure 106 shows an example of a SLB-PT deployment that uses a mixed server farm of IPv4 and IPv6 servers to serve IPv6 clients.
P e r f o r m a n c e
b y
277 of 950
In this example, a server farm consisting of IPv6 and IPv4 servers is configured with an IPv6 VIP address. IPv6 clients send requests to the IPv6 VIP. The AX device then selects an IPv6 or IPv4 server and forwards the clients request to the selected server. If the server is an IPv4 server, the AX device translates the IP protocol of the clients request from IPv6 to IPv4 before forwarding it to the IPv4 server. Likewise, when the AX device receives the serverss reply, the AX device translates the reply from IPv4 to IPv6, then forwards the reply to the client. Source NAT Requirement In addition to the standard SLB configuration items (servers, service groups, the VIP, and so on), SLB-PT requires IP source NAT.
278 of 950
P e r f o r m a n c e
b y
D e s i g n
Note:
For simplicity, this example uses only a single pool. If multiple pools are used, ACLs are also required. The ACLs must match on the client IP address(es) as the source address. If the real servers and VIP are in different subnets, the ACLs also must match on the real server IP address(es) as the destination address. (For more information, see Examples Using Multiple Source NAT Pools on page 282. Also see the Network Address Translation chapter in the AX Series Configuration Guide.)
P e r f o r m a n c e
b y
279 of 950
280 of 950
P e r f o r m a n c e
b y
D e s i g n
The following commands import an SSL certificate and key, and configure a client-SSL template to use them. The AX device will use the certificate and key to terminate SSL sessions between clients and the VIP.
AX(config)#slb ssl-load certificate sslcert.pem scp: Address or name of remote host []?10.10.10.2 User name []?axadmin Password []?********* File name [/]?sslcert.pem AX(config)#slb ssl-load certificate certkey.pem scp: Address or name of remote host []?10.10.10.2 User name []?axadmin Password []?********* File name [/]?certkey.pem AX(config)#slb template client-ssl cssl AX(config-client SSL template)#certsslcert.pem AX(config-client SSL template)#key certkey.pem AX(config-client SSL template)#exit
P e r f o r m a n c e
b y
281 of 950
282 of 950
P e r f o r m a n c e
b y
D e s i g n
Each of the access-list commands binds one of the IPv6 ACLs to the virtual port. The source-nat-pool option used with each command binds an IPv4 pool to the ACL. When the AX device receives a request for the VIP, the AX device matches the client address against the source addresses in the ACLs. The AX device then uses the IPv4 NAT pool bound to the first matching ACL. The AX device translates the clients request from an IPv6 packet into an IPv4 packet. The AX device replaces the clients IPv6 address with an IPv4 address from the selected pool. The IPv6 VIP address is replaced with the servers IPv4 address. If the clients address does not match the source address in any of the ACLs, the request is dropped. Note: This is different from the behavior if a single NAT pool is used. If only one NAT pool is bound to the virtual port, the pool is used if the clients IP type (IPv4 or IPv6) is not the same as the IP type of the selected server. Otherwise, if the IP type of the client and the selected server is the same, SLB-PT is not required for the request. The request is sent to the server with the clients original IP address. Multiple IPv4 and IPv6 Pools It is not required to use pools of the same IP type as the IP type used by clients. For example, IPv6 pools are not required for IPv6 clients. Using pools of the same IP type as the client IP type provides a way to control access to the real servers. When multiple pools are bound to a virtual port, the clients IP address must match the source address in at least one of the ACLs associated with the pools. Otherwise, the clients traffic is dropped. Note: In the case of IPv4, IPv4 pools are still required if the VIP and the real servers are in different IPv4 subnets. For more information, see the Source NAT for Servers in Other Subnets section in the Network Address Translation chapter of the AX Series Configuration Guide.
P e r f o r m a n c e
b y
283 of 950
The following commands bind the IPv6 NAT pools to the virtual port:
AX(config-slb virtual server-slb virtua...)#access-list name v6acl-1 sourcenat-pool v4natpool-2 AX(config-slb virtual server-slb virtua...)#access-list name v6acl-2 sourcenat-pool v6natpool-1
284 of 950
P e r f o r m a n c e
b y
D e s i g n
Stateless SLB
Stateless SLB conserves system resources by operating without session table entries on the AX device. Session table entries contain information about sessions, including the client, VIP, and real server IP addresses and protocol ports. Session table entries also may contain additional state information for specific features. If the AX device is running short on sessions, you can use stateless SLB where applicable to make more sessions available for traffic that requires session table entries. Stateless SLB is valid for the following types of traffic:
Traffic with very short-lived sessions, such as DNS Layer 2 Direct Server Return (DSR) traffic Other types of traffic that do not require features that use session-table
entries. (See Limitations on page 286.) You can enable stateless SLB on an individual service-group basis, by selecting a stateless SLB load-balancing method for the group. (See Using the CLI on page 287.)
value calculated using the source IP address and source TCP or UDP port.
Stateless Destination IP+Port Hash Balances server load based on a
hash value calculated using the destination IP address and destination TCP or UDP port.
Stateless Source and Destination IP+Port Hash Balances server load
based on a hash value calculated using both the source and destination IP addresses and TCP or UDP ports.
Stateless Source IP Only Hash Balances server load based on a hash
285 of 950
A given real server can be used in only one stateless SLB service group. A real server that is in a stateless SLB service group can not be used in any other service groups. Graceful transitions between stateful and stateless SLB in a service group are not supported. Mega-proxies may interfere with equal balancing of traffic load among the multiple data CPUs. In this case, for DNS traffic only, try using the stateless-per-pkt-round-robin method. Note: The stateless-per-pkt-round-robin method is valid only for DNS traffic.
286 of 950
P e r f o r m a n c e
b y
D e s i g n
Configuration of the real servers and virtual server is the same as for stateful SLB. CLI Example The following commands configure a stateless SLB service group for UDP traffic:
AX(config)#slb service-group dns-stateless udp AX(config-slb svc group)#member dns1:53 AX(config-slb svc group)#member dns2:53 AX(config-slb svc group)#method stateless-src-dst-ip-hash
P e r f o r m a n c e
b y
287 of 950
288 of 950
P e r f o r m a n c e
b y
D e s i g n
P e r f o r m a n c e
b y
289 of 950
nections on it. The connection count is based on client connections initiated on the link by the AX device. The default is round-robin. Network Address Translation Requirements In an outbound LLB topology, the next-hop routers for the WAN links must be able to send the server reply traffic back to the AX device. To ensure that the server reply traffic passes back through the AX device, use an IP source NAT pool for each WAN link. The pools do not need to contain more than a few addresses. The AX device internally uses a separate protocol port number for each client session on a pool address. SLB destination NAT, which is enabled by default, must be disabled. In a standard SLB configuration, destination NAT is used to translate the server address (destination IP address) requested by clients from the VIP address into the servers real address. However, this NAT operation is not applicable to outbound LLB.
290 of 950
P e r f o r m a n c e
b y
D e s i g n
P e r f o r m a n c e
b y
291 of 950
The following commands enable promiscuous VIP support on the AX interfaces connected to clients. Note: For simplicity, this example uses a single Ethernet port for each interface to the clients and the next-hop routers. You also can use trunk interfaces, virtual Ethernet (VE) interfaces, or both.
AX(config)#interface ethernet 3 AX(config-if: ethernet3)#ip address 10.10.10.1 255.255.255.0 AX(config-if: ethernet3)#ip allow-promiscuous-vip AX(config-if: ethernet3)#exit AX(config)#interface ethernet 4 AX(config-if: ethernet4)#ip address 10.20.20.1 255.255.255.0 AX(config-if: ethernet4)#ip allow-promiscuous-vip AX(config-if: ethernet4)#exit
The following commands configure the AX interfaces to the next-hop routers for the load-balanced links:
AX(config)#interface ethernet 1 AX(config-if: ethernet1)#ip address 192.168.10.2 255.255.255.0 AX(config-if: ethernet1)#exit AX(config)#interface ethernet 2 AX(config-if: ethernet2)#ip address 192.168.20.2 255.255.255.0 AX(config-if: ethernet2)#exit
292 of 950
P e r f o r m a n c e
b y
D e s i g n
P e r f o r m a n c e
b y
293 of 950
294 of 950
P e r f o r m a n c e
b y
D e s i g n
P e r f o r m a n c e
b y
295 of 950
lowing levels of granularity: Sends all HTTP requests to the cache server and sends all other requests to the content server Sends HTTP requests for specific URLs to the cache server, and sends other requests to the content server Optimizing When Using Multiple Cache Servers If your network uses multiple cache servers, you can configure destinationIP persistence, to always select the same cache server for content from a given destination IP address. This technique reduces cache misses, by ensuring that requests for a given site IP address always go to the same cache server. For even greater control, you can configure the AX device to select from among multiple cache service groups based on the requested URL. When combined with destination-IP persistence, this method allows you to control initial selection of the cache service group, after which the AX device always sends requests for the same content to the same cache server within the cache service group. Application Templates TCS does not require configuration of any application templates. However, you can use the following types of application templates for advanced features, such as URL-based Layer 7 TCS:
HTTP template If you want to selectively redirect client requests
based on URL strings, you can use an HTTP template containing URL switching rules. When a client request matches the URL string in a URL
P e r f o r m a n c e b y D e s i g n
296 of 950
cache servers, you can use a destination-IP persistence template to ensure that the same cache server is used for every request for content on a given content server. The AX device uses standard SLB to select a cache server for the first request to a real server IP address, and assigns a hash value to the server. All subsequent requests for the same real server are sent to the same cache server. By always using the same cache server for content from a given server, a destination-IP persistence template can reduce duplication of content on multiple cache servers, and can also reduce cache misses.
RAM caching template To also cache some content on the AX device
itself, you can use a RAM caching template. In this case, the AX device directly serves content that is cached on the AX device, and only sends requests to the cache server for content that is not cached on the AX device.
Connection reuse template You can use a connection reuse template to
reuse TCP connections. When a clients session ends, the TCP connection is not terminated. Instead, the connection is reused for a new client session. Support for Spoofing Caches Some cache servers can use the clients IP address instead of the cache servers IP address as the source address when obtaining content requested by the client. A cache server operating in this mode is a spoofing cache server. Configuration for a spoofing cache server includes a couple of additional steps. (See Enabling Support for Cache Spoofing on page 308.)
P e r f o r m a n c e
b y
297 of 950
298 of 950
P e r f o r m a n c e
b y
D e s i g n
P e r f o r m a n c e
b y
299 of 950
The following command configures an extended ACL to match on clients and on the content server. The ACL in this example matches on any source address (client IP address) and on the destination IP address of the content server.
AX(config)#access-list 198 permit ip any host 20.20.20.10 log
The following commands configure a real server for the cache server. TCP port 80 is added to the real server.
AX(config)#slb server cache-rs 110.110.110.10 AX(config-real server)#port 80 tcp AX(config-real server-node port)#exit
300 of 950
P e r f o r m a n c e
b y
D e s i g n
The following commands configure a wildcard VIP and bind it to the ACL:
AX(config)#slb virtual-server wildcard 0.0.0.0 acl 198 AX(config-slb vserver)#port 80 tcp AX(config-slb vserver-vport)#service-group sg-tcs AX(config-slb vserver-vport)#no-dest-nat
rects all HTTP traffic to the cache server. The configuration steps are very similar to those for Layer 4 TCS. The only difference is use of HTTP instead of TCP or UDP as the service type of the virtual port.
Service type HTTP with URL switching rules This method uses an
HTTP template containing URL switching rules. Traffic that matches a URL switching rule is redirected to the cache server. Other traffic is sent to the gateway router. This method requires configuration of a separate real server and service group for the gateway router. Figure 110 on page 302 shows an example of the first method, which does not use URL switching rules. Figure 111 on page 303 shows an example of the second method, which does use URL switching rules.
P e r f o r m a n c e
b y
301 of 950
302 of 950
P e r f o r m a n c e
b y
D e s i g n
P e r f o r m a n c e
b y
303 of 950
304 of 950
P e r f o r m a n c e
b y
D e s i g n
305 of 950
The following commands configure an HTTP template containing URL switching rules. Client requests for any URL that contains .examplecorp/ or .mycorp/ will be redirected to the service group for the cache server. Requests for any other URL will instead be sent to the service group for the router.
AX(config)#slb template http http1 AX(config-HTTP template)#url-switching contains .examplecorp/ service-group sg-tcs AX(config-HTTP template)#url-switching contains .mycorp/ service-group sg-tcs AX(config-HTTP template)#exit
The following commands configure a wildcard VIP and bind it to the ACL:
AX(config)#slb virtual-server wildcard 0.0.0.0 acl 198 AX(config-slb vserver)#port 80 http AX(config-slb vserver-vport)#service-group sg-router AX(config-slb vserver-vport)#template http http1 AX(config-slb vserver-vport)#no-dest-nat
306 of 950
Note:
The match-type service-group command is required, to enable use of URL switching and persistence in the same configuration.
P e r f o r m a n c e
b y
307 of 950
308 of 950
P e r f o r m a n c e
b y
D e s i g n
P e r f o r m a n c e
b y
309 of 950
on a VLAN containing Ethernet data ports 3-11 The following interface parameters are required:
Promiscuous VIP Must be enabled on the interface connected to cli-
ents, and on the IP interface assigned to the VE on the VLAN containing the interfaces to the clients, content servers, and cache servers.
Cache spoofing If the cache server will spoof client IP addresses when
requesting content from content servers, enable cache spoofing support on the AX interface connected to the cache server.
CPU processing CPU processing is required for Layer 3 inline mode.
Enable it on all interfaces connected to clients, content servers, and cache servers. Also enable it on the dedicated HA link and on the static routes to the client and content server subnets. HA Parameters This configuration uses the following HA parameters. The last two in this list apply specifically to inline mode. The other HA parameters apply to all types of HA configurations.
HA ID AX-1 uses HA ID 1. AX-2 uses HA ID 2. HA group and priority A single HA group is configured, with a higher
priority on AX-1.
Pre-emption Pre-emption is enabled, to force initial failover to the AX
interfaces. Interface 1 and 3 are the lead interfaces in trunks, so all the interfaces in these trunks are HA interfaces.
Session synchronization (connection mirroring) Each AX device is
enabled, when in Active role, to synchronize its sessions onto the other AX device.
Floating IP address Both AX devices share floating IP address
310 of 950
P e r f o r m a n c e
b y
D e s i g n
inline-mode restart ports. This includes the AX interfaces with the client, cache servers, and content server. Interface 6 is the dedicated HA link between the AX devices and is not included in the restart list. SLB Parameters Real server parameters:
Port type A Layer 4 port type, such as TCP, should be used. HA ses-
requesting content from content servers, enable cache spoofing support on the real server configuration for the cache server. Service group parameters:
Type Typically, the type should be TCP. Members Add the real servers configured for the cache servers.
In a Layer 7 TCS configuration that uses URL switching, a separate real server is required for the gateway router, and the real server is required to be placed in its own service group. (See Configuring Layer 7 TCS on page 301.) The example in Figure 113 on page 309 does not use Layer 7 switching. Virtual server parameters:
VIP The VIP address must be 0.0.0.0 (a wildcard VIP). The ACL
associated with the VIP must be an extended ACL that uses the permit action and that matches on client addresses as the source address, and on the content server address as the destination address:
Service type The service type of the TCS virtual port must be a
are synchronized from the Active AX device to the standby AX device. Note: If spoof-caching is enabled, the AX device creates a transparent session from the cache to the server. This session is not synchronized. However, the main session from the client to the cache server is always synchronized.
P e r f o r m a n c e
b y
311 of 950
AX-1 Configuration
The following commands configure the links:
AX-1(config)#trunk 1 AX-1(config-trunk:1)#ethernet 1 to 2 ethernet 9 AX-1(config-trunk:1)#trunk 3 AX-1(config-trunk:3)#ethernet 3 to 4 AX-1(config-trunk:3)#vlan 11 AX-1(config-vlan:11)#untagged ethernet 3 to 6 AX-1(config-vlan:11)#tagged ethernet 1 to 2 ethernet 9 AX-1(config-vlan:11)#router-interface ve 1 AX-1(config-vlan:11)#interface ethernet 1 AX-1(config-if:ethernet1)#cpu-process AX-1(config-if:ethernet1)#interface ethernet 3 AX-1(config-if:ethernet3)#ip allow-promiscuous-vip AX-1(config-if:ethernet3)#cpu-process AX-1(config-if:ethernet3)#interface ethernet 5 AX-1(config-if:ethernet5)#ip cache-spoofing-port AX-1(config-if:ethernet5)#cpu-process AX-1(config-if:ethernet5)#interface ethernet 6 AX-1(config-if:ethernet6)#cpu-process AX-1(config-if:ethernet6)#interface ve 1 AX-1(config-if:ve1)#ip address 10.10.10.1 255.255.255.0 AX-1(config-if:ve1)#ip allow-promiscuous-vip AX-1(config-if:ve1)#exit
The following commands configure static routes. One of the routes goes to the subnet on the other side of the router that connects the AX device to the content servers. The other static route goes to the subnet on the other side of
312 of 950
P e r f o r m a n c e
b y
D e s i g n
The following command configures an extended ACL that uses the permit action and that matches on client addresses as the source address, and on the content server address as the destination address:
AX-1(config)#access-list 198 permit ip any host 20.20.20.11 log
The following commands configure real servers for the cache servers:
AX-1(config)#slb server cache1 10.10.10.10 AX-1(config-real server)#spoofing-cache AX-1(config-real server)#port 80 tcp AX-1(config-real server-node port)#exit AX-1(config-real server)#exit AX-1(config)#slb server cache2 10.10.10.11 AX-1(config-real server)#spoofing-cache AX-1(config-real server)#port 80 tcp AX-1(config-real server-node port)#exit AX-1(config-real server)#exit
The following commands configure a service group for the real servers:
AX-1(config)#slb service-group sg-cache-80 tcp AX-1(config-slb svc group)#member cache1:80 AX-1(config-slb svc group)#member cache2:80 AX-1(config-slb svc group)#exit
P e r f o r m a n c e
b y
313 of 950
AX-2 Configuration
Most of the commands on AX-2 are the same as the ones on AX-1, with the following exceptions:
The ip address command on the VE adds a unique IP address (not the
314 of 950
P e r f o r m a n c e
b y
D e s i g n
P e r f o r m a n c e
b y
315 of 950
316 of 950
P e r f o r m a n c e
b y
D e s i g n
AX-1 Configuration
The following commands configure the links.
AX-1(config)#trunk 1 AX-1(config-trunk:1)#ethernet 5 to 6 AX-1(config-trunk:1)#vlan 21 AX-1(config-vlan:21)#untagged ethernet 1 to 3 AX-1(config-vlan:21)#router-interface ve 1 AX-1(config-vlan:21)#vlan 22 AX-1(config-vlan:22)#untagged ethernet 2 AX-1(config-vlan:22)#router-interface ve 22 AX-1(config-vlan:22)#vlan 56 AX-1(config-vlan:56)#untagged ethernet 5 to 6 AX-1(config-vlan:56)#router-interface ve 56 AX-1(config-vlan:11)#interface ethernet 1 AX-1(config-if:ethernet1)#cpu-process AX-1(config-if:ethernet1)#interface ethernet 2 AX-1(config-if:ethernet2)#cpu-process AX-1(config-if:ethernet2)#ip cache-spoofing-port AX-1(config-if:ethernet2)#interface ethernet 3 AX-1(config-if:ethernet3)#cpu-process AX-1(config-if:ethernet3)#interface ethernet 5 AX-1(config-if:ethernet5)#cpu-process AX-1(config-if:ethernet5)#interface ve 1 AX-1(config-if:ve1)#ipv6 address 2309:e90::2/64 AX-1(config-if:ve1)#ip allow-promiscuous-vip AX-1(config-if:ve1)#interface ve 22 AX-1(config-if:ve22)#ipv6 address 2409:c90::1/64 AX-1(config-if:ve22)#interface ve 56 AX-1(config-if:ve56)#ipv6 address 2509:c90::1/64 AX-1(config-if:ve56)#ip address 3.3.3.2 255.255.255.0 AX-1(config-if:ve56)#exit
Note:
The cpu-process command is applicable only to models AX 2200, AX 3100, AX 3200, AX 5100, and AX 5200. The command is required for TCS HA on those models. The command does not appear in the CLI on other models and is not required on those models.
P e r f o r m a n c e
b y
317 of 950
The following commands configure an IPv6 ACL that uses the permit action and that matches on client addresses as the source address, and on the content server address as the destination address:
AX-1(config)#ipv6 access-list ipv6-101 AX-1(config-access-list:ipv6-101)#permit ipv6 any host 2309:f90::10 log AX-1(config-access-list:ipv6-101)#exit
The following commands configure a custom ICMP health monitor with very short interval and timeout values. In Layer 3 inline HA configurations, the short interval and timeout values help eliminate traffic disruption following HA failover.
AX-1(config)#health monitor icmp interval 1 timeout 1
The following commands configure ICMP health checking for the upstream and downstream routers. The health checks help ensure rapid HA failover. (See Tip for Ensuring Fast HA Failover on page 604.) The custom ICMP health monitor configured above is also used.
318 of 950
P e r f o r m a n c e
b y
D e s i g n
The following commands configure real servers for the cache servers:
AX-1(config)#slb server cache1-ipv6 2409:c90::5 AX-1(config-real server)#spoofing-cache AX-1(config-real server)#health-check icmp AX-1(config-real server)#port 80 tcp AX-1(config-real server-node port)#exit AX-1(config-real server)#exit AX-1(config)#slb server cache2-ipv6 2409:c90::6 AX-1(config-real server)#spoofing-cache AX-1(config-real server)#health-check icmp AX-1(config-real server)#port 80 tcp AX-1(config-real server-node port)#exit AX-1(config-real server)#exit
The following commands configure a service group for the real servers (cache servers):
AX-1(config)#slb service-group cache-ipv6 tcp AX-1(config-slb svc group)#member cache1-ipv6:80 AX-1(config-slb svc group)#member cache2-ipv6:80 AX-1(config-slb svc group)#exit
P e r f o r m a n c e
b y
319 of 950
AX-2 Configuration
Here are the configuration commands for AX-2. Most of the commands are exactly the same as on AX-1. Only the following values differ:
IP addresses of the VEs HA priority IP address for session synchronization (ha conn-mirror)
AX-2(config)#trunk 1 AX-2(config-trunk:1)#ethernet 5 to 6 AX-2(config-trunk:1)#vlan 21 AX-2(config-vlan:21)#untagged ethernet 1 to 3 AX-2(config-vlan:21)#router-interface ve 1 AX-2(config-vlan:21)#vlan 22 AX-2(config-vlan:22)#untagged ethernet 2 AX-2(config-vlan:22)#router-interface ve 22 AX-2(config-vlan:22)#vlan 56 AX-2(config-vlan:56)#untagged ethernet 5 to 6 AX-2(config-vlan:56)#router-interface ve 56 AX-2(config-vlan:11)#interface ethernet 1 AX-2(config-if:ethernet1)#cpu-process AX-2(config-if:ethernet1)#interface ethernet 2 AX-2(config-if:ethernet2)#cpu-process AX-2(config-if:ethernet2)#ip cache-spoofing-port AX-2(config-if:ethernet2)#interface ethernet 3 AX-2(config-if:ethernet3)#cpu-process AX-2(config-if:ethernet3)#interface ethernet 5 AX-2(config-if:ethernet5)#cpu-process AX-2(config-if:ethernet5)#interface ve 1 AX-2(config-if:ve1)#ipv6 address 2309:e90::4/64 AX-2(config-if:ve1)#ip allow-promiscuous-vip AX-2(config-if:ve1)#interface ve 22 AX-2(config-if:ve22)#ipv6 address 2409:c90::2/64 AX-2(config-if:ve22)#interface ve 56 AX-2(config-if:ve56)#ipv6 address 2509:c90::2/64 AX-2(config-if:ve56)#ip address 3.3.3.3 255.255.255.0 AX-2(config-if:ve56)#exit AX-2(config)#ipv6 route 2309:d90::/32 2309:e90::1 AX-2(config)#ipv6 route 2309:f90::/32 2309:e90::3
320 of 950
P e r f o r m a n c e
b y
D e s i g n
321 of 950
When a client sends a request to the FTP server, the AX device intercepts the request and forwards it to the FTP cache server. The cache server then forwards the requested content to the AX device, if the content is cached. The AX device forwards the content to the client.
322 of 950
P e r f o r m a n c e
b y
D e s i g n
Configuration
To configure TCS for FTP: 1. Configure the interfaces connected to the clients, the content servers, and the cache server. Enable promiscuous VIP on the AX interface(s) connected to the clients. Enable cache spoofing on the interface(s) connected to the cache server. Unless you are using AX model 1000, 2000, 2100, or 3000, you also must enable CPU processing on each interface. On these AX models, CPU processing is automatically used. 2. Configure an extended ACL that uses the permit action and that matches on client addresses as the source address, and on the content server address as the destination address. 3. Configure a real server for the cache server. Add an FTP port to the server. If the cache server will spoof client IP addresses when requesting content from content servers, enable cache spoofing support. If the cache server has multiple interfaces, configure a separate real server for each one. 4. Configure a real server for the next-hop router through which the AX device will reach the content servers. Add the same FTP port number as the one on the cache server (for example, port 21). Disable health checking on the port.
P e r f o r m a n c e
b y
323 of 950
324 of 950
The following command configures an extended ACL to match on clients and on the content server. The ACL in this example matches on any source address (client IP address) and on the destination IP address of the content server.
AX(config)#access-list 198 permit ip any host 20.20.20.11 log
The following commands configure real servers for FTP on each of the cache servers. Cache spoofing is enabled and TCP port 21 is added to each real server.
AX(config)#slb server ftps1 11.11.11.10 AX(config-real server)#spoofing-cache AX(config-real server)#port 21 tcp AX(config-real server-node port)#no health-check AX(config-real server-node port)#exit AX(config)#slb server ftps2 11.11.11.11 AX(config-real server)#spoofing-cache AX(config-real server)#port 21 tcp AX(config-real server-node port)#no health-check AX(config-real server-node port)#exit
The following commands configure an FTP service group for the cache server:
AX(config)#slb service-group sg-ftps tcp AX(config-slb svc group)#member ftps1:21 AX(config-slb svc group)#member ftps2:21 AX(config-slb svc group)#exit
The following commands configure a wildcard VIP traffic and bind it to the ACL. The FTP virtual port is bound to the FTP and router service groups. Also, destination NAT is disabled.
AX(config)#slb virtual-server wildcard 0.0.0.0 acl 198 AX(config-slb vserver)#port 21 ftp AX(config-slb vserver-vport)#service-group sg-ftps AX(config-slb vserver-vport)#no-dest-nat
P e r f o r m a n c e
b y
325 of 950
326 of 950
P e r f o r m a n c e
b y
D e s i g n
Overview
AX Series devices support Firewall Load Balancing (FWLB). FWLB load balances server-client sessions across firewalls. Figure 116 shows an example FWLB topology. FIGURE 116 Example FWLB Topology
P e r f o r m a n c e
b y
327 of 950
In HA deployments, each AX device needs an HA-capable IP interface in the subnets connected to the firewalls and those connected to real servers and upstream/downstream routers. Firewall Groups This example uses a single firewall group for both firewall nodes. When you configure FWLB, make sure to configure a firewall group for the firewalls rather than an SLB service group. Templates Although this example does not use one, you can use a source-IP persistence template in an FWLB configuration. You can bind a source-IP persistence template to the virtual firewall or to individual service ports on the virtual firewall.
If you apply a source-IP persistence template to the virtual firewall, the
AX device sends all traffic from a given source address through the same firewall.
If you apply a source-IP persistence template to an individual service
port on the virtual firewall, the AX device sends all traffic from a given client for that service port through the same firewall.
328 of 950
P e r f o r m a n c e
b y
D e s i g n
P e r f o r m a n c e
b y
329 of 950
nection to the other AX device. Static IP Routes Each of the AX devices requires static IP routes to the following:
Firewall VE subnet of the other AX pair Client or server VE subnet of the other AX pair: On the external AX devices, the destination address of this route is
the VE subnet connected to the real servers. On the internal AX devices, the destination address of this route is the virtual IP address of a pair of external access routers running a router redundancy protocol such as VRRP.
330 of 950
P e r f o r m a n c e
b y
D e s i g n
subnet of the real servers, through one of the firewalls. Internal AX1 has the following static routes:
Destination: 10.1.1.0 Next hop: 30.1.1.1 This route reaches the client
wall VE subnet of the external AX devices, through one of the firewalls. Notice that on each AX device, both static routes use the same next hop. This is not required but it is recommended. Using the same hop does not present a single point of failure. If the route to the specified next hop goes down, the AX device automatically looks for another path to the route's destination through another firewall. Note: If the management interface is on a separate subnet, a static IP route for this interface might also be required. This is network-dependent and is not covered in this example. FWLB, SLB, and HA Configuration The FWLB and HA configuration is the same as in previous releases. There are no new commands or options required to configure this HA solution. To simplify configuration, A10 Networks recommends that you configure SLB on only one of the AX pairs, either the external pair or the internal pair. SLB does not need to be configured on both pairs.
P e r f o r m a n c e
b y
331 of 950
FWLB Parameters
Table 6 lists the FWLB parameters. TABLE 6
Parameter Firewall (Required) Health check (Optional)
FWLB Parameters
Description and Syntax Supported Values Default: None configured
Name of a configured health monitor Default: The AX device attempts to use the default Layer 3 method (ping). However, this default method does not use the transparent option.
Default: None When you configure one, the default priority is 1. Statistical data collection is enabled by default.
[stats-data-disable | statsdata-enable]
The priority option enables you to designate some firewalls as backups (the lower priority firewalls) to be used only if the higher priority firewalls all are unavailable. Note: Statistical data collection for load-balancing resources requires collection for system resources to also be enabled (stats-data-enable). Config > Service > Firewall > Firewall Group
332 of 950
P e r f o r m a n c e
b y
D e s i g n
Protocol port number, 1-65535 Default: No service ports are specified, which means all traffic is load balanced.
P e r f o r m a n c e
b y
333 of 950
334 of 950
P e r f o r m a n c e
b y
D e s i g n
firewall or the UDP virtual firewall port, that idle-timeout is used. Otherwise, if the UDP idle-timeout is not set in FWLB, the idle-timeout in the default SLB UDP template is used. Unless the default template has been changed, the idle-timeout is 120 seconds.
P e r f o r m a n c e
b y
335 of 950
TCP template is used. Unless the default template has been changed, the idle-timeout is 120 seconds.
For service-type HTTP (Layer 7), the idle-timeout in the default SLB
TCP-proxy template is used. Unless the default template has been changed, the idle-timeout is 600 seconds. Note: In the current release, the TCP idle-timeout settings in FWLB are never used. The AX device allows you to configure them but they are not used.
Configuring FWLB
To configure FWLB: 1. Configure High Availability (HA) parameters: HA ID, HA group, session synchronization, and floating IP address. 2. Configure a health check for each firewall. 3. Configure the firewalls. 4. Configure a firewall group and add the firewalls to the group. 5. Configure a virtual firewall. To apply FWLB only to traffic for specific services, create a virtual port for each service, and bind the firewall group to each virtual port. If FWLB will apply to all traffic types, do not configure any virtual ports on the virtual firewall. If the AX device is configured for HA, specify the HA group ID to use for the virtual port. Note: The essential steps are described in this section. For the complete list of FWLB settings you can configure, see Table 6 on page 332.
336 of 950
P e r f o r m a n c e
b y
D e s i g n
the IP address of the AX. If there is an HA pair of AX device on the other side of the firewall, enter the floating IP address of the HA pair. 8. Click OK. The new health monitor appears in the Health Monitor table. FIGURE 118 Config > Service > Health Monitor
P e r f o r m a n c e
b y
337 of 950
To configure a firewall group 1. Select Firewall Group on the menu bar. 2. Click Add. The Firewall Group section appears. 3. In the Firewall Group section, enter a name for the service group. 4. In the Member section, enter the IP address of a firewall in the Firewall field. 5. Click Add. 6. Repeat step 4 and step 5 for each firewall. 7. Click OK. The firewall group appears in the Firewall Group table.
338 of 950
P e r f o r m a n c e
b y
D e s i g n
To configure the virtual firewall 1. Select Virtual Firewall Server on the menu bar. 2. Click Add. 3. In the Default section, select the HA group, if HA is configured. 4. Select the firewall group. 5. If you want to load balance all types of traffic through the firewalls, click OK to complete the configuration. Otherwise, to load balance only specific services, go to step 6. 6. To specify services to load balance: a. In the Port section, click Add. b. Enter the protocol port number in the Port field. c. Select the transport protocol (TCP or UDP) from the Type dropdown list. d. Select the firewall group from the Firewall Group drop-down list. e. If HA is configured and you plan to use connection mirroring (session synchronization), select Enabled next to HA Connection Mirror. f. Click OK. g. Repeat for each protocol port.
P e r f o r m a n c e D e s i g n Document No.: D-030-01-00-0006 - Ver. 2.4.3 6/21/2010 b y
339 of 950
Config > Service > Firewall > Firewall Virtual Server - Port
340 of 950
P e r f o r m a n c e
b y
D e s i g n
P e r f o r m a n c e
b y
341 of 950
342 of 950
P e r f o r m a n c e
b y
D e s i g n
ent HA priority. For example, since External AX A uses priority 100 for the HA group, External AX B uses priority 1.
The floating-ip commands on the each AX device must use addresses
within the subnets connected to the firewalls and upstream/downstream routers or servers. In Figure 116 on page 327, the external AX devices need floating IP addresses 10.1.1.100 and 192.168.1.100. The internal AX devices need floating IP addresses 10.5.1.100 and 10.20.1.100.
The method icmp transparent commands on the External AX devices
must use the floating IP address of the subnet on which the Internal AX pair is connected to the firewalls. Likewise, the method icmp transparent commands on the Internal AX devices must use the floating IP address of the subnet on which the External AX pair is connected to the firewalls. CLI Commands on External AX (Active) The following commands configure global HA parameters:
AX-Ext-A(config)#ha id 1 AX-Ext-A(config)#ha group 1 priority 100 AX-Ext-A(config)#ha interface ethernet 1 AX-Ext-A(config)#ha interface ethernet 2 AX-Ext-A(config)#ha conn-mirror ip 10.1.1.6 AX-Ext-A(config)#floating-ip 192.168.1.100 ha-group 1 AX-Ext-A(config)#floating-ip 10.1.1.100 ha-group 1
P e r f o r m a n c e
b y
343 of 950
344 of 950
P e r f o r m a n c e
b y
D e s i g n
P e r f o r m a n c e
b y
345 of 950
346 of 950
P e r f o r m a n c e
b y
D e s i g n
347 of 950
The following commands configure a Layer 2 health monitor to check the health of the paths through the firewalls to the floating IP address configured on the other AX pair:
Ext-AX1(config)#health monitor tsping interval 15 Ext-AX1(config-health:monitor)#method icmp transparent 40.1.1.254 Ext-AX1(config-health:monitor)#exit
348 of 950
Configuration of External AX2 This configuration is like the configuration for External AX1, with the following exceptions:
The VE IP addresses are different (although they are in the same subnets
from the other AX device. The FWLB configuration is the same. For brevity, it is not shown.
Ext-AX2(config)#trunk 1 Ext-AX2(config-trunk:1)#ethernet 9 to 10 Ext-AX2(config-trunk:1)#exit Ext-AX2(config)#vlan 50 Ext-AX2(config-vlan:50)#untagged ethernet 9 to 10 Ext-AX2(config-vlan:50)#router-interface ve 5 Ext-AX2(config-vlan:50)#exit Ext-AX2(config)#interface ve 5 Ext-AX2(config-if:ve5)#ip address 50.1.1.2 255.255.255.0 Ext-AX2(config-if:ve5)#exit Ext-AX2(config)#vlan 10 Ext-AX2(config-vlan:10)#untagged ethernet 1 Ext-AX2(config-vlan:10)#router-interface ve 1 Ext-AX2(config-vlan:10)#exit Ext-AX2(config)#interface ve 1 Ext-AX2(config-if:ve1)#ip address 10.1.1.20 255.255.255.0 Ext-AX2(config-if:ve1)#exit Ext-AX2(config)#vlan 20 Ext-AX2(config-vlan:20)#untagged ethernet 2 ethernet 4 ethernet 13 Ext-AX2(config-vlan:20)#router-interface ve 2 Ext-AX2(config-vlan:20)#exit Ext-AX2(config)#interface ve 2 Ext-AX2(config-if:ve2)#ip address 20.1.1.20 255.255.255.0 Ext-AX2(config-if:ve2)#exit Ext-AX2(config)#ip route 40.1.1.0 /24 20.1.1.1 Ext-AX2(config)#ip route 30.1.1.0 /24 20.1.1.1 Ext-AX2(config)#ha id 2 Ext-AX2(config)#ha group 1 priority 100
P e r f o r m a n c e
b y
349 of 950
Configuration of Internal AX1 This configuration is like the configuration for External AX1, with the following exceptions:
The VE IP addresses and subnets are different. (The VLAN numbers
and some of the VE numbers also are different, but this is not required. For simplicity, the VLAN numbers were selected to match the subnet numbers.)
The static routes are different. The floating IP address and connection mirroring IP address are differ-
ent.
The target IP address of the transparent Layer 3 health check is the float-
The following commands configure the HA management and session synchronization interface to the other AX device.
Int-AX1(config)#trunk 1 Int-AX1(config-trunk:1)#ethernet 9 to 10 Int-AX1(config-trunk:1)#exit Int-AX1(config)#vlan 60 Int-AX1(config-vlan:60)#untagged ethernet 9 to 10 Int-AX1(config-vlan:60)#router-interface ve 60 Int-AX1(config-vlan:60)#exit Int-AX1(config)#interface ve 60 Int-AX1(config-if:ve60)#ip address 60.1.1.1 255.255.255.0 Int-AX1(config-if:ve60)#exit
350 of 950
P e r f o r m a n c e
b y
D e s i g n
Configuration of Internal AX2 This configuration is like the configuration for Internal AX1, with the following exceptions:
The VE IP addresses are different (although they are in the same subnets
P e r f o r m a n c e
b y
351 of 950
352 of 950
P e r f o r m a n c e
b y
D e s i g n
Overview
The AX device supports the following types of templates for configuration of SLB servers and ports:
Server Contains configuration parameters for real servers Port Contains configuration parameters for real service ports Virtual-server Contains configuration parameters for virtual servers Virtual-port Contains configuration parameters for virtual service
ports These template types provide the same benefit as other template types. They allow you to configure a set of parameter values and apply the set of values to multiple configuration items. In this case, you can configure sets of parameters (templates) for SLB assets (servers and service ports) and apply the parameters to multiple servers or ports. Some of the parameters that can be set using a template can also be set or changed on the individual server or port.
If a parameter is set (or changed from its default) in both a template and
on the individual server or port, the setting on the individual server or port takes precedence.
If a parameter is set (or changed from its default) in a template but is not
set or changed from its default on the individual server or port, the setting in the template takes precedence.
P e r f o r m a n c e
b y
353 of 950
354 of 950
P e r f o r m a n c e
b y
D e s i g n
Connection limit
DSCP
Source NAT
Weight
P e r f o r m a n c e
b y
355 of 950
Connection rate limiting ICMP rate limiting Gratuitous ARPs for subnet VIPs Connection limit
356 of 950
P e r f o r m a n c e
b y
D e s i g n
The list of configured templates of the selected type appears. 3. Click Add to create a new one or click on the name of a configured template to edit it. The configuration section for the template appears. 4. Enter a name for the template (if the template is new). 5. Enter or edit other settings. (See the descriptions in the sections below for information.) 6. Click OK.
P e r f o r m a n c e
b y
357 of 950
This example includes the commands to bind the template to real servers. For information about binding the templates, see Applying a Server or Service Port Template on page 358.
358 of 950
P e r f o r m a n c e
b y
D e s i g n
The following subsections describe how to bind server and port templates to servers, ports, and service group members. For configuration examples, see the feature sections referred to in Table 7 on page 354.
P e r f o r m a n c e
b y
359 of 950
360 of 950
P e r f o r m a n c e
b y
D e s i g n
P e r f o r m a n c e
b y
361 of 950
Connection Limiting
By default, the AX device does not limit the number of concurrent connections on a server or service port. If certain servers or services are becoming oversaturated, you can set a connection limit. The AX device stops sending new connection requests to a server or port when that server or port reaches its maximum allowed number of concurrent connections. Connection Limit Parameters To configure connection limits, you can set the following parameters :
Connection limit Specifies the maximum number of concurrent con-
nections allowed on a server or port. You can specify 0-1048575. By default, the connection limit is 8000000 (8 million).
Connection resume threshold (real servers or ports only) Specifies the
maximum number of connections the server or port can have before the AX device resumes use of the server or port. You can specify 1-1048575 (1 million) connections.
Reset or Drop (virtual servers or virtual server ports only) Specifies
the action to take for connections after the connection limit is reached on the virtual server or virtual server port. By default, excess connections are dropped. If you change the action to reset, the connections are reset instead. Excess connections are dropped by default.
Logging By default, the AX device generates a log message when the
connection limit is exceeded. Connection limiting can be set in real server templates, real port templates, virtual server templates, and virtual port templates. Note: If you change the connection limiting configuration on a virtual port or virtual server that has active sessions, or in a virtual-port or virtual-server template bound to the virtual server or virtual port, the current connection counter for the virtual port or server in show command output and in the GUI may become incorrect. To avoid this, do not change the connection
P e r f o r m a n c e b y D e s i g n
362 of 950
P e r f o r m a n c e
b y
363 of 950
of new connections allowed on a server or service port. You can specify 1-1048575 connections. By default, the connection rate limit is not set.
Interval The interval specifies whether the connection rate limit
only) The action specifies how the AX device responds to connection requests after the connection rate has been exceeded. The action can be to silently drop excess connections or to send a reset (RST) to client requesting the connection. The default action is to silently drop the excess connection requests.
Logging By default, the AX device generates a log message when the
connection rate limit is exceeded. When a server or service port reaches its connection limit, the AX device stops using the server or service port.
364 of 950
P e r f o r m a n c e
b y
D e s i g n
365 of 950
Slow-Start
The slow-start feature allows time for a server or real service port to ramp up after TCP/UDP service on a server is enabled, by temporarily limiting the total concurrent connections on the server or port. You can configure the slow-start parameters described in this section in real server templates and real port templates. Note: Alternatively, you can enable slow-start on individual real servers. However, the ramp-up settings on individual servers are not configurable. The settings are the same as the default ramp-up settings in server and port templates. Ramp-Up Parameters By default, slow-start allows a maximum of 128 new connections during the first 10 seconds. During each subsequent 10-second interval, the total number of concurrent connections allowed to the server is doubled. Thus, during the first 20 seconds, the server is allowed to have a total of 256 concurrent connections. After 59 seconds, slow-start ends the ramp-up and no longer limits the number of concurrent connections. Table 8 shows the default ramp-up.
366 of 950
P e r f o r m a n c e
b y
D e s i g n
Number of Seconds After Server Restart 0-9 10-19 20-29 30-39 40-49 50-59 60+
mum number of concurrent connections to allow on the server or service port after it first comes up. You can specify from 1-4095 concurrent connections. The default is 128.
Connection increment The connection increment specifies the amount
by which to increase the maximum number of concurrent connections allowed. You can use one of the following methods to specify the increment: Scale factor (This is the default.) The scale factor is the number by which to multiply the starting connection limit. For example, if the scale factor is 2 and the starting connection limit is 128, the AX device increases the connection limit to 256 after the first ramp-up interval. The scale factor can be 2-10. The default is 2. Connection addition As an alternative to specifying a scale factor, you can instead specify how many more concurrent connections to allow. You can specify 1-4095 new connections.
Ramp-up interval The ramp-up interval specifies the number of sec-
onds between each increase of the number of concurrent connections allowed. For example, if the ramp-up interval is 10 seconds, the number of concurrent connections to allow is increased every 10 seconds. The ramp-up interval can be 1-60 seconds. The default is 10 seconds.
Ending connection limit The ending connection limit is the maximum
number of concurrent connections to allow during the final ramp-up interval. After the final ramp-up interval, the slow start is over and does not limit further connections to the server. You can specify from 1-65535 connections. The default is 4096.
P e r f o r m a n c e
b y
367 of 950
368 of 950
P e r f o r m a n c e
b y
D e s i g n
P e r f o r m a n c e
b y
369 of 950
370 of 950
P e r f o r m a n c e
b y
D e s i g n
The option is disabled by default, which means the AX device does not send a RST in response to a session mismatch. You can enable the option in individual virtual port templates. Note: This option does not apply to sessions that are in the delete queue. If the AX device receives a packet for a session that has been moved to the delete queue, the AX device does not send a TCP RST. Instead, the AX device reactivates the session and allows it to age out normally.
P e r f o r m a n c e
b y
371 of 950
372 of 950
P e r f o r m a n c e
b y
D e s i g n
Health Monitoring
AX Series devices can regularly check the health of real servers and service ports. Health checks ensure that client requests go only to available servers. Servers or ports that respond appropriately to health checks remain eligible to serve client requests. A server or port that does not respond appropriately to a health check is temporarily removed from service, until the server or port is healthy again. You can configure health methods on the AX device by configuring settings for the type of service you are monitoring. You also can configure health monitors externally using scripts and import the monitors for use by the AX device.
request (ping) addressed to the real servers IP address. The server passes the health check if it sends an echo reply to the AX device. If the server does not reply after the fourth attempt (the first attempt followed by 3 retries), the AX device sets the server state to DOWN.
Layer 4 TCP Every 5 seconds, the AX device sends a connection
request (TCP SYN) to the specified TCP port on the server. The port passes the health check if it replies to the AX device by sending a TCP SYN ACK. If the port does not reply after the fourth attempt, the AX device sets the port state to DOWN.
Layer 4 UDP Every 5 seconds, the AX device sends a packet with a
valid UDP header and a garbage payload to the UDP port. The port passes the health check if it either does not reply, or replies with any type of packet except an ICMP Error message. If the port replies with an ICMP Error message, the AX device sets the port state to DOWN. The default ICMP, TCP, or UDP monitor is not used if you disable it on the server or port, or you apply a different monitor to the server or port. Note: For very large deployments (1000 or more servers), A10 Networks recommends disabling the default Layer 3 health check, and using only Layer 4-7 health checks. (See Globally Disabling Layer 3 Health Checks on page 412.)
P e r f o r m a n c e
b y
373 of 950
Determination of the server or ports health is not made within the interval. Instead, determination of health is made after the server or port passes or fails one of the attempts (intervals), or the number of retries is exhausted. The default interval is 5 seconds. If you need to fine-tune this interval, you can change it to a value from 1-180 seconds.
Timeout Number of seconds the AX device waits for a reply to a
health check. If the AX device does not receive the expected reply by the end of the timeout, the AX device either sends the health check again (if there are retries left) or marks the server or service down. You can specify 1-12 seconds. The default is 5 seconds. The type of reply expected by the AX device depends on the monitor type. (See Health Method Types on page 377.)
Retries Maximum number of times the AX device will send the same
health check to an unresponsive server or service before marking that server or service as down. You can specify 1-5. The default is 3.
Up-Retry Number of consecutive times the device must pass the same
periodic health check, in order to be marked Up. You can specify 1-10. The default is 1. (See Consecutive Health Checks Within a Health Check Period on page 406.) Note: The timeout does not apply to externally configured health monitors.
374 of 950
P e r f o r m a n c e
b y
D e s i g n
P e r f o r m a n c e
b y
375 of 950
376 of 950
P e r f o r m a n c e
b y
D e s i g n
P e r f o r m a n c e
b y
377 of 950
FTP
AX Series sends an FTP login request to the specified port. If anonymous login is not used, the username also must be specified in the health check configuration.
378 of 950
P e r f o r m a n c e
b y
D e s i g n
ICMP
379 of 950
NTP POP3
RADIUS
AX Series sends a Password Authentication Protocol (PAP) request to authenticate the user name and password specified in the health check configuration. AX Series sends a request for information about the file specified in the health check configuration. AX Series sends a SIP OPTION request or REGISTER request. AX Series sends an SMTP Hello message.
Requested user name and password must be configured in the servers user database. Likewise, the shared secret sent in the health check must be valid on the server. The file must be present on the RTSP server.
RTSP
SIP SMTP
Server replies with 200 - OK. Server sends an OK message (reply code 250).
None. Server recognizes and accepts the domain of sender. If SMTP service is running and can reply to Hello messages, the server can pass the health check. Requested OID and the SNMP community must both be valid on the server.
SNMP
AX Series sends an SNMP Get or Get Next request to the specified OID, from the specified community.
380 of 950
P e r f o r m a n c e
b y
D e s i g n
P e r f o r m a n c e
b y
381 of 950
382 of 950
P e r f o r m a n c e
b y
D e s i g n
P e r f o r m a n c e
b y
383 of 950
384 of 950
P e r f o r m a n c e
b y
D e s i g n
P e r f o r m a n c e
b y
385 of 950
enabled, and with the alias address set to the virtual IP address. Globally enable DSR health checking.
P e r f o r m a n c e b y D e s i g n
386 of 950
P e r f o r m a n c e
b y
387 of 950
388 of 950
P e r f o r m a n c e
b y
D e s i g n
P e r f o r m a n c e
b y
389 of 950
In the postdata string, use = between a field name and the value you are posting to it. If you post to multiple fields, use & between the fields. For example: postdata fieldname1=value&fieldname1=value. The string can be up to 255 bytes long. To use POST data longer than 255 bytes, you must import a POST data file and use the POST / postfile filename option. To import POST data file up to 2 Kbytes long, use the following command at the global configuration level of the CLI: health postfile import filename
390 of 950
P e r f o r m a n c e
b y
D e s i g n
The following commands import a file containing a large HTTP POST data payload (up to 2 Kbytes), and add the payload to an HTTP health monitor:
AX(config)#health postfile import long-post AX(config)#health monitor http1 AX2000(config-health:monitor)#method http url post / postfile long-post expect def
In this example, health checks that use this health monitor will send a POST request containing the data in postfile, and expect the string def in response.
the range 0-15, that are valid responses to a health check. If the tested DNS server responds with any of the expected response codes, the server passes the health check. By default, the expect list is empty, in which case the AX device expects status code 0 (No error condition).
Recursion setting (enabled or disabled) Recursion specifies whether
the tested DNS server is allowed to send the health checks request to another DNS server if the tested server can not fulfill the request using its own database. Recursion is enabled by default.
Record type expected from the server You can specify one of the fol-
lowing record types: A IPv4 address record CNAME Canonical name record for a DNS alias SOA Start of authority record PTR Pointer record for a domain name MX Mail Exchanger record TXT Text string AAAA IPv6 address record
P e r f o r m a n c e D e s i g n Document No.: D-030-01-00-0006 - Ver. 2.4.3 6/21/2010 b y
391 of 950
392 of 950
P e r f o r m a n c e
b y
D e s i g n
P e r f o r m a n c e
b y
393 of 950
394 of 950
P e r f o r m a n c e
b y
D e s i g n
In this example, the real servers managed by the site AX are configured as service IPs 192.168.100.100-102 on the GSLB AX. The health-check metric is enabled in the GSLB policy, so health checks are needed to verify that the service IPs are healthy. One way to do so is to check the health of the ISP link connected to the site AX device. Because the GSLB AX device is deployed in route mode instead of transparent mode, the transparent option for ICMP health monitors can not be used to check the remote end of the path. In this case, the health monitor can be configured with an override IP address, 192.168.1.1, to check the health of the ISP link to the site where the servers are located. When the AX device in this example uses the health monitor to check the health of a service IP,
P e r f o r m a n c e
b y
395 of 950
The override is used only if applicable to the method (health check type) and the target. An IP address override is applicable only if the target has the same address type (IPv4 or IPv6) as the override address. A protocol port override is applicable to all health methods except ICMP. If the protocol port number is explicitly configured for the method, the override port number is still used instead.
396 of 950
P e r f o r m a n c e
b y
D e s i g n
P e r f o r m a n c e
b y
397 of 950
In this example, a single server provides content for the following sites:
www.media-rts.com www.media-tuv.com www.media-wxyz.com
All sites can be reached on HTTP port 80 on the server. The health check configured on the port in the real server configuration results in the same health status for all three sites. All of them either are up or are down.
398 of 950
P e r f o r m a n c e
b y
D e s i g n
server or port
Directly on the individual server or port
In cases where health checks are applied at multiple levels, they have the following priority: 1. Health check on real server 2. Health check on real servers port 3. Health check on service group If a health check at the real server level (1) fails, the corresponding real server, real server port, and service group members are marked Down. However, if a health check on the service group level (3) fails, only that service group member in that service group is marked Down. To assign a health monitor to a service group, use either of the following methods.
P e r f o r m a n c e
b y
399 of 950
400 of 950
P e r f o r m a n c e
b y
D e s i g n
401 of 950
402 of 950
P e r f o r m a n c e
b y
D e s i g n
AX device increments a sessions retry counter each time a SYN ACK is late. If the retry counter exceeds the configured maximum number of retries allowed, the AX device sends the next SYN for the session to a different server. The AX device also resets the retry counter to 0. You can set the retry counter to 0-7 retries. The default is 2 retries.
Reassign counter Each real port has its own reassign counter. Each
time the retry counter for any session is exceeded, the AX device increments the reassign counter for the server port. If the reassign counter exceeds the configured maximum number of reassignments allowed, the AX device marks the port DOWN. In this case, the port remains DOWN until the next time the port successfully passes a standard health check. Once the port passes a standard health check, the AX device starts using the port again and resets the reassign counter to 0. You can set the reassign counter to 0-255 reassignments. The default is 25 reassignments. In-band health monitoring is disabled by default.
P e r f o r m a n c e
b y
403 of 950
In-band health monitoring does not mark ports up. Only standard health monitoring marks ports up. So messages and traps for server ports coming up are generated only by the A10HM module.
404 of 950
P e r f o r m a n c e
b y
D e s i g n
P e r f o r m a n c e
b y
405 of 950
406 of 950
P e r f o r m a n c e
b y
D e s i g n
nance code. In this case, the servers health status changes to Up.
Fail a health check. In this case, the servers status changes to Down.
The Maintenance health status applies to server ports and service-group members. When a ports status changes to Maintenance, this change applies to all service-group members that use the port. Note: This feature applies only to servers in cookie-persistence or source-IP persistence configurations, and can be used only for HTTP and HTTPS ports.
P e r f o r m a n c e
b y
407 of 950
In this example, if the server replies with code 601, the server goes into maintenance mode, and stays there until the server either fails a health check (Down) or replies with code 200 (Up).
408 of 950
P e r f o r m a n c e
b y
D e s i g n
P e r f o r m a n c e
b y
409 of 950
410 of 950
P e r f o r m a n c e
b y
D e s i g n
health check.
Retries Maximum number of times the AX device will send the same
health check to an unresponsive server or service before marking that server or service as down.
Up-Retry Number of consecutive times the device must pass the same
periodic health check, in order to be marked Up. Globally changing a health monitor parameter changes the default for that parameter. For example, if you globally change the interval from 5 seconds to 10 seconds, the default interval becomes 10 seconds. If a parameter is explicitly set on a health monitor, globally changing the parameter does not affect the health monitor. For example, if the interval on health monitor hm1 is explicitly set to 20 seconds, the interval remains 20 seconds on hm1 regardless of the global setting. Note: Global health monitor parameter changes automatically apply to all new health monitors configured after the change. To apply a global health monitor parameter change to health monitors that were configured before the change, you must reboot the AX device. To globally change health monitor parameters, use the following command at the global configuration level of the CLI: [no] health global { interval seconds | retry number | timeout seconds | up-retry number } You can change one or more parameters on the same command line. CLI Example The following command globally changes the default number of retries to 5:
AX(config)#health global retry 5
P e r f o r m a n c e
b y
411 of 950
412 of 950
P e r f o r m a n c e
b y
D e s i g n
status to be Up. If either of the health checks is unsuccessful, the health status is Down.
OR Either of the ORed health checks must be successful for the result
to be Up. Even if one of the health checks is unsuccessful, the health status is still Up if the other health check is successful. If both of the health checks are unsuccessful, the health status is Down.
NOT The health status is the opposite of the health check result. For
example, if a health check is unsuccessful, the resulting health status is Up. Likewise, if the health check is successful, the resulting health status is Down. You can use NOT with a single health method, or with multiple health methods for more complex expressions. (See below.) For example, to construct a health monitor that ANDs two health monitors, use the following syntax: method compound sub hm1 sub hm2 AND
P e r f o r m a n c e
b y
413 of 950
Note:
use more sub monitors, you can nest compound monitors. (See below.)
The total number of sub monitors plus the number of Boolean operators
ure a compound monitor, then use that compound monitor as a sub monitor in another compound monitor. The maximum nesting depth is 8. Nesting loops are not allowed.
The timeout and interval parameters of a compound monitor must be set
to values that allow each of the sub monitors to complete their health checks. If any of the sub modules is unable to complete its health check, the compound monitors result will always be Down.
414 of 950
P e r f o r m a n c e
b y
D e s i g n
itoring subsystem. For example, using a compound monitor with many submonitors against a service group with many members can affect system performance.
health monitors, select the monitor, then click Add. To enter an operator, click the radio button next to the list of operators, select the operator, then click Add. Note: Make sure to use Reverse Polish Notation. (See Compound Health Monitor Syntax on page 413.) Otherwise, the GUI will display an error message when you click OK to complete the health monitor configuration. 5. Click OK to complete the configuration of the compound monitor.
P e r f o r m a n c e
b y
415 of 950
416 of 950
P e r f o r m a n c e
b y
D e s i g n
The following commands configure a compound health monitor in which the resulting health status is Up if any one ore more of the health checks is successful:
AX(config)#health monitor hm-compoundOR AX(config-health:monitor)#method compound sub hm1 sub hm2 sub hm3 OR OR
P e r f o r m a n c e
b y
417 of 950
418 of 950
P e r f o r m a n c e
b y
D e s i g n
To display the health of real servers and service ports: Use the following command. The health is shown in the State field. For descriptions of each health state, see the AX Series CLI Reference. show slb server [server-name [port-num]] Here is an example:
AX#show slb server Total Number of Services configured: 5 Current = Current Connections, Total = Total Connections Fwd-pkt = Forward packets, Rev-pkt = Reverse packets Service s1:80/tcp s1:53/udp s1:85/udp s1: Total ... Current 0 0 0 0 Total 0 0 0 0 Fwd-pkt 0 0 0 0 Rev-pkt 0 0 0 0 State Down Down Down Down ------------------------------------------------------------------------------
To display health monitoring statistics: Use the following command: show health stat Here is an example:
AX#show health stat Health monitor statistics Total run time: Number of burst: Number of timer adjustment: Timer offset: Opened socket: Open socket failed: Close socket: Send packet: Send packet failed: Receive packet: Receive packet failed
: : : : : : : : : : :
P e r f o r m a n c e
b y
419 of 950
IP address Port Health monitor Status Cause(Up/Down/Retry) PIN -------------------------------------------------------------------------------10.10.10.99 default Down 0 /48 /854 2 /0 4.4.4.4 default Down 0 /48 /854 2 /0 8.4.3.2 default Down 0 /48 /854 2 /0 99.99.99.99 default Down 0 /48 /854 2 /0 10.10.10.88 default Down 0 /48 /854 2 /0 10.10.10.88 80 qrs Down 0 /34 /0 2 /0
Utility commands such as ping, ping6, wget, dig, and so on are supported.
Configuration
To use an external health method: 1. Configure a health monitor script. 2. Import the script onto the AX device. 3. Configure a health monitor that uses external as the method. 4. In the server configuration, set the health check to use the method.
420 of 950
P e r f o r m a n c e
b y
D e s i g n
P e r f o r m a n c e
b y
421 of 950
Script Examples
TCL Script Example
For Tcl scripts, the health check parameters are transmitted to the script through the predefined TCL array ax_env. The array variable ax_env(ServerHost) is the server IP address and ax_env(ServerPort) is the server port number. Set ax_env(Result) 0 as pass and set the others as fail. TCL script filenames must use the .tcl extension.
422 of 950
P e r f o r m a n c e
b y
D e s i g n
Here is the ext.tcl file: # Init server status to "DOWN" set ax_env(Result) 1 # Open a socket if {[catch {socket $ax_env(ServerHost) $ax_env(ServerPort)} sock]} { puts stderr "$ax_env(ServerHost): $sock" } else { fconfigure $sock -buffering none -eofchar {} # Send the request puts $sock "GET /1.html HTTP/1.0\n" # Wait for the response from http server set line [read $sock] if { [ regexp "HTTP/1.. (\[0-9\]+) " $line match status] } { puts "server $ax_env(ServerHost) response : $status" # Check exit code if { $status == 200 } { # Set server to be "UP" set ax_env(Result) 0 } } close $sock }
P e r f o r m a n c e
b y
423 of 950
424 of 950
P e r f o r m a n c e
b y
D e s i g n
P e r f o r m a n c e
b y
425 of 950
426 of 950
P e r f o r m a n c e
b y
D e s i g n
Overview
Global Server Load Balancing (GSLB) extends load balancing to global geographic scale. AX Series adds intelligence to DNS. GSLB evaluates the server IP addresses in DNS replies and changes the order of the addresses in the replies so that the best available host IP address is the preferred choice. AX Series GSLB provides the following key advantages:
Protects businesses from down time due to site failures Ensures business continuity and applications availability Provides faster performance and improved user experience by directing
ple sites You can deploy GSLB in proxy mode or server mode.
Proxy mode The AX device acts as a proxy for an external DNS
server.
Server mode The AX device directly responds to queries for specific
service IP addresses in the GSLB zone. (The AX device still forwards other types of queries to the DNS server.)
P e r f o r m a n c e
b y
427 of 950
In this example, the GSLB AX device (the GSLB controller) globally load balances client requests for www.a10.com. The a10.com services reside on real servers at two sites. At each site, an AX device provides SLB for the real servers. On the GSLB AX device, the sites are grouped into a zone for the service. When a client sends a DNS lookup request for the IP address of www.a10.com, the GSLB AX device intercepts the request and sends the same request to the DNS server on behalf of the client. When the GSLB AX device receives the DNS reply, the device re-orders the IP addresses in the reply based on the results of site evaluation using the configured GSLB metrics. The GSLB AX device also makes other changes
428 of 950
P e r f o r m a n c e
b y
D e s i g n
Note:
Advantages of GSLB
In standard DNS, when a client wants to connect to a host and has the hostname but not the IP address, the client sends a lookup request to its local DNS server. The local DNS server checks its local database.
If the database contains an Address record for the requested host name,
the DNS server sends the IP address for the host name back to the client. The client can then access the host.
If the local DNS server does not have an Address record for the
requested server, the local DNS server makes recursive queries to the root and intermediate DNS servers, which results in authoritative DNS server addresses. When a request reaches an authoritative DNS server, that DNS server sends a reply to the DNS query. The clients local DNS server then sends the reply to the client. The client now can access the requested host. In todays redundant data centers and multiple service provider sites, a host name can reside at multiple data centers or sites, with different IP addresses. When this is the case, the authoritative DNS server for the host sends multiple IP addresses in its replies to DNS queries. Standard DNS servers can provide only rudimentary load sharing for the addresses, using a simple round-robin algorithm to rotate the list of addresses for each query. Thus, the address that is listed first in the last reply sent by the DNS server is rotated to be the last address listed in the next reply, and so on.
P e r f o r m a n c e
b y
429 of 950
An AX device can be configured with one or more GSLB zones. Each zone can contain one or more GSLB sites. For example, mydomain.com is a domain.
Services A service is an application; for example, HTTP or FTP. Each
zone can be configured with one or more services. For example: www.mydomain.com is a service where www is the http service or an application.
Sites A site is a server farm that is locally managed by an AX device
GSLB Policy
GSLB evaluates the service IP addresses listed in replies from DNS servers to clients, re-orders the addresses based on that evaluation, and sends the DNS replies to clients with the re-ordered IP address lists. As a result of this process, each client receives a DNS reply that has the best service IP address listed first. GSLB selects the best site IP address using a GSLB policy. A GSLB policy consists of one or more of the following metrics: 1. health-check Services that pass health checks are preferred. 2. weighted-ip Service IP addresses with higher administratively assigned weights are used more often than service IP addresses with lower weights. (See Weighted-IP and Weighted-Site on page 432.) 3. weighted-site Sites with higher administratively assigned weights are preferred. Sites with higher administratively assigned weights are used more often than sites with lower weights. (See Weighted-IP and Weighted-Site on page 432.) 4. session capacity Sites with more available sessions based on respective maximum session capacity are preferred. 5. active-servers Sites with the most currently active servers are preferred. 6. active-rtt Sites with faster round-trip-times for DNS queries and replies between a site AX device and the GSLB local DNS are preferred. 7. passive-rtt Services with faster response times to clients are preferred.
430 of 950
P e r f o r m a n c e
b y
D e s i g n
P e r f o r m a n c e
b y
431 of 950
Health Checks
The health-check metric checks the availability (health) of the real servers and service ports. Sites whose real servers and service ports respond to the health checks are preferred over sites in which servers or service ports are unresponsive to the health checks.
432 of 950
P e r f o r m a n c e
b y
D e s i g n
Geo-Location
You can configure GSLB to prefer site VIPs for DNS replies that are geographically closer to the clients. For example, if a domain is served by sites in both the USA and Asia, you can configure GSLB to favor the USA site for USA clients while preferring the Asian site for Asian clients. To configure geo-location:
Leave the geographic GSLB metric enabled. Load geo-location data. You can load geo-location data from a file or
manually configure individual geo-location mappings. Loading geo-location data from a file is simpler than manually configuring geo-location mappings, especially if you have more than a few GSLB sites. For more information, see Loading or Configuring Geo-Location Mappings on page 459.
P e r f o r m a n c e D e s i g n Document No.: D-030-01-00-0006 - Ver. 2.4.3 6/21/2010 b y
433 of 950
If a clients IP address is within a geo-location associated with www.1.a10.com, GSLB places a CNAME record for www.1.a10.com in the DNS reply to the client. To configure CNAME support:
Configure geo-location as described above. In the GSLB policy, enable the following DNS options: dns cname-detect (enabled by default) dns geoloc-alias For individual services in the zone, configure the aliases and associate
them with geo-locations. Alias-Admin-preference and Weighted-alias The Alias Admin Preference and Weighted Alias metrics can be used in DNS Proxy or DNS Server mode. Some additional policy options are required in either mode.
DNS proxy Enable the geoloc-alias option. After GSLB retrieves the
DNS response from the DNS answer, GSLB selects a DNS A record using IP metrics, then tries to insert the DNS CNAME record into the answer based on geo-location settings. While inserting the CNAME record, if the Alias metrics are enabled, GSLB may remove some CNAME records and related service IPs.
DNS server Enable the geoloc-alias option. After receiving a DNS
query, GSLB tries to insert a DNS CNAME record into the answer based on the geo-location settings. During insertion, if the Alias metrics are enabled, GSLB may remove some CNAME records. After finishing
434 of 950
P e r f o r m a n c e
b y
D e s i g n
DNS A record to return, GSLB tries to insert all backup DNS CNAME records. During insertion, if Alias metrics are enabled, GSLB may remove some CNAME records. No DNS A records are returned. This option also requires the dns-cname-record as-backup option on the service.
DNS Options
DNS options provide additional control over the IP addresses listed in DNS replies to clients. After the GSLB AX device uses the metrics to select and prioritize the IP addresses for the DNS reply, the AX device applies the enabled DNS options to the list. The following DNS options can be set in GSLB policies:
dns action Enable GSLB to perform DNS actions specified in the serv-
ice configurations.
dns active-only Removes IP addresses for services that did not pass
replies for A records, when the device is configured for DNS proxy or cache mode.
dns best-only Removes all IP addresses from DNS replies except for
the address selected as the best address by the GSLB policy metrics.
dns cache Caches DNS replies and uses them when replying to clients,
(CNAME) records, applies the GSLB policy to the CNAME record instead of the Address record. (This applies only if the CNAME records are for the zone and application requested by the DNS proxy on the GSLB AX device.)
dns external-ip Returns the external IP address configured for a ser-
vice IP. If this option is disabled, the internal address is returned instead.
dns geoloc-action Performs the DNS traffic handling action specified
for the clients geo-location. The action is specified as part of service configuration in a zone.
dns geoloc-alias Replaces the IP address with its alias configured on
435 of 950
geo-location.
dns ip-replace Replaces the IP addresses with the set of addresses
about this option, see TTL Override on page 436.) The cname-detect and external-ip options are enabled by default. All the other DNS options are disabled by default. Order in Which Sticky, Server, Cache, and Proxy Options Are Used If more than one of the following options are enabled, GSLB uses them in the order listed, beginning with sticky: 1. 2. 3. 4. Note: sticky server cache proxy GSLB does not have a separately configurable proxy option. The proxy option is automatically enabled when you configure the DNS proxy as part of GSLB configuration. The site address selected by the first option that is applicable to the client and requested service is used. TTL Override GSLB ensures that DNS replies to clients contain the optimal set of IP addresses based on current network conditions. However, if the DNS TTL value assigned to the Address records is long, the local DNS servers used by clients might cache the replies for a long time, and send those stale replies to clients. Thus, even though the GSLB AX device has current information, clients might receive outdated information.
436 of 950
P e r f o r m a n c e
b y
D e s i g n
The GSLB protocol is required in order to collect the site information provided for these metrics. Note: The GSLB protocol is also required for the health-check metric, if the default health checks are used. If you modify the health checks, the GSLB protocol is not required. (See Health Checks on page 432.)
P e r f o r m a n c e
b y
437 of 950
Configuration Overview
Configuration is required on the GSLB AX device (GSLB controller) and the site AX devices. Configuration on GSLB Controller To configure GSLB on the GSLB AX device: 1. Configure health monitors for the DNS server to be proxied and for the GSLB services to be load balanced. 2. Configure a DNS proxy. 3. Configure a GSLB policy (unless you plan to use the default policy settings, described in GSLB Policy on page 430). 4. Configure services. 5. Configure sites. 6. Configure a zone. 7. Enable the GSLB protocol for the GSLB controller function. Note: If you plan to run GSLB in server mode, the proxy DNS server does not require configuration of a real server or service group. Only the VIP is required. However, if you plan to run GSLB in proxy mode, the real server and service group are required along with the VIP. (Server and proxy mode are configured as DNS options. See DNS Options on page 435.) Configuration on Site AX Device To configure GSLB on the site AX devices: 1. Configure SLB, if not already configured. 2. Enable the GSLB protocol for the GSLB site device function.
438 of 950
P e r f o r m a n c e
b y
D e s i g n
The parameters you can configure at each level are described in GSLB Parameters on page 479. The following sections describe the GSLB configuration steps in the GUI and in the CLI. Required commands and commonly used options are listed. For advanced commands and options, see GSLB Parameters on page 479. Note: Each of the following configuration sections shows the CLI and GUI methods for configuration. For complete configuration examples, see Configuration Examples on page 506.
P e r f o r m a n c e
b y
439 of 950
440 of 950
P e r f o r m a n c e
b y
D e s i g n
P e r f o r m a n c e
b y
441 of 950
The other metrics are disabled. (For detailed information about policy parameters and their defaults, see GSLB Parameters on page 479.) Note: Although the geographic metric is enabled by default, there are no default geo-location mappings. To use the geographic metric, you must load or manually configure geo-location mappings. (See Loading or Configuring Geo-Location Mappings on page 459 later in this section.)
442 of 950
P e r f o r m a n c e
b y
D e s i g n
To disable a GSLB metric, use the no form of the command for the metric, at the configuration level for the policy. For example, to disable the health-check metric, enter the following command at the configuration level for the policy:
AX(config gslb-policy)#no health-check
To set DNS options, use the following command at the configuration level for the policy. (For descriptions, see DNS Options on page 435 and Table 13, GSLB Policy Parameters, on page 494.) [no] dns { action | active-only | addition-mx | backup-alias | best-only [max-answers] | cache [aging-time {seconds | ttl}] | cname-detect | external-ip | geoloc-action | geoloc-alias | geoloc-policy | ip-replace | ipv6 options | logging {both | query | response} [geo-location name | ip ipaddr] | server [addition-mx] [authoritative [full-list]] [mx] [ns [auto-ns]] [ptr [auto-ptr]] [srv] | sticky [/prefix-length] [aging-time minutes] [ipv6-mask mask-length] | ttl num }
P e r f o r m a n c e
b y
443 of 950
444 of 950
P e r f o r m a n c e
b y
D e s i g n
Note:
time (RTT) for a client, the site AX device sends queries for the domain name to a clients local DNS. An RTT sample consists of the time between when the site AX device sends a query and when it receives the response. Only one active-RTT domain can be configured. It is recommended to use a domain name that is likely to be in the cache of each clients local DNS. The default domain name is google.com. The AX device averages multiple active-RTT samples together to calculate the active-RTT measurement for a client. (See the description of Track below.)
Interval Specifies the number of seconds between queries. You can
P e r f o r m a n c e
b y
445 of 950
RTT data for a client after a query fails. You can specify 1-300 seconds. The default is 3.
Timeout Specifies the number of milliseconds GSLB will wait for a
reply before resending a query. You can specify 1-1023 milliseconds (ms). The default is 1000 ms.
Track Specifies the number of seconds during which the AX device
collects samples for a client. The samples collected during the track time are averaged together, and the averaged value is used as the active RTT measurement for the client. You can specify 15-3600 seconds. The default is 60 seconds. The averaged RTT measurement is used until it ages out. The aging time for averaged RTT measurements is 10 minutes by default and is configurable on individual sites, using the active-rtt aging-time command. To configure global active-RTT options, use the following command at the global configuration level of the CLI: [no] gslb active-rtt { domain domain-name | interval seconds | retry num | sleep seconds | timeout ms | track seconds } Default Settings When you enable Active RTT, a site AX device sends 5 DNS requests to the GSLB domains local DNS. The GSLB AX device averages the RTT times of the 5 samples. Single Sample (Single Shot) To take a single sample and use that sample indefinitely, use the single-shot option. This option instructs each site AX device to send a single DNS query to the GSLB local DNS. The single-shot option is useful if you do not want to frequently update the active RTT measurements. For example, if the GSLB domain's clients tend to remain logged on for long periods of time, using the single-shot option ensures that clients are not frequently sent to differing sites based on active RTT measurements.
446 of 950
P e r f o r m a n c e
b y
D e s i g n
wait for the DNS reply. If the reply does not arrive within the specified timeout, the site becomes ineligible for selection, in cases where selection is based on the active RTT metric. You can specify 1-255 seconds. The default is 3 seconds.
skip Specifies the number of site AX devices that can exceed their sin-
gle-shot timeouts, without the active RTT metric itself being skipped by the GSLB AX device during site selection. You can skip from 1-31 sites. The default is 3. Multiple Samples To periodically retake active RTT samples, do not use the single-shot option. In this case, the AX device uses the averaged RTT based on the number of samples measured for the intervals. For example, if you set active RTT to use 3 samples with an interval of 5 seconds, the RTT is the average RTT for the last 3 samples, collected in 5second intervals. If you configure single-shot instead, a single sample is taken. The number of samples can be 1-8. The default is 5 samples. Store-By By default, the GSLB AX device stores one active RTT measurement per site SLB device. Optionally, you can configure the GSLB AX device to store one measurement per geo-location instead. This option is configurable on individual GSLB sites. (See Changing Active RTT Settings for a Site on page 449.) Tolerance The default measurement tolerance is 10 percent. If the RTT measurements for more than one site are within 10 percent, the GSLB AX device considers the sites to be equal in terms of active RTT. You can adjust the tolerance to any value from 0-100 percent. Enabling Active RTT To enable active RTT, use either of the following methods.
P e r f o r m a n c e
b y
447 of 950
448 of 950
P e r f o r m a n c e
b y
D e s i g n
The following commands access the configuration level for GSLB policy gslbp3 and enable the active RTT metric, using single-shot settings:
AX(config)#gslb policy gslbp3 AX(config gslb-policy)#active-rtt single-shot AX(config gslb-policy)#active-rtt skip 3
In this example, each site AX device will send a single DNS query to the GSLB domains local DNS, and wait 3 seconds (the default) for a reply. The site AX devices will then send their RTT measurements to the GSLB AX device. However, if more than 3 site AX devices fail to send their RTT measurements to the GSLB AX device, the AX device will not use the active RTT metric. Changing Active RTT Settings for a Site You can adjust the following Active RTT settings on individual sites:
aging-time Specifies the maximum amount of time a stored active-
RTT result can be used. You can specify 1-60 minutes. The default is 10 minutes.
bind-geoloc Stores the active-RTT measurements on a per geo-loca-
tion basis. Without this option, the measurements are stored on a per site-SLB device basis.
ignore-count Specifies the ignore count if RTT is out of range. You
128.
limit Specifies the limit. You can specify 1-1023. The default is 1023. mask Specifies the maximum RTT allowed for the site. If the RTT
measurement for a site exceeds the configured limit, GSLB does not eliminate the site. Instead, GSLB moves to the next metric in the policy. You can specify 0-16383 milliseconds (ms). The default is 16383.
range-factor Specifies the maximum percentage a new active-RTT
measurement can differ from the previous measurement. If the new measurement differs from the previous measurement by more than the allowed percentage, the new measurement is discarded and the previous measurement is used again.
P e r f o r m a n c e D e s i g n Document No.: D-030-01-00-0006 - Ver. 2.4.3 6/21/2010 b y
449 of 950
smoothen the measurements. For example, if the smooth-factor is set to 10 (the default), 10% of the new measurement is used, along with 90% of the previous measurement. Similarly, if the smooth-factor is set to 50, 50% of the new measurement is used, along with 50% of the previous measurement. You can specify 1-100. The default is 10.
list, then load the entries from the black/white list into an IP list.
Use this command to configure individual IP list entries.
450 of 950
P e r f o r m a n c e
b y
D e s i g n
Passive RTT
Passive RTT measures the round-trip-time between when the site AX device receives a clients TCP connection (SYN) and the time when the site AX device receives acknowledgement (ACK) back from the client for the connection. Enabling Passive RTT To enable passive RTT, use either of the following methods.
451 of 950
452 of 950
P e r f o r m a n c e
b y
D e s i g n
bandwidth limit configured for the site, the site is eligible to be selected as the best site.
If the SNMP object value has incremented more than the bandwidth
limit configured for the site, the site is ineligible. The GSLB AX device sends the SNMP requests at regular intervals. Once a site is ineligible, the site can become eligible again at the next interval if the utilization incrementation is below the configured limit minus the threshold percentage. (See below.) Configuration Requirements To use the bw-cost metric, an SNMP template must be configured and bound to each site. The GSLB SNMP template specifies the SNMP version and other information necessary to access the SNMP agent on the site AX device, and the Object Identifier (OID) of the MIB object to request. In addition, the following bw-cost parameters must be configured on each site:
Bandwidth limit The bandwidth limit specifies the maximum value by
which the requested MIB object can increment, for the site to be eligible for selection as the best site.
Bandwidth threshold For a site to regain eligibility when bw-cost is
being compared, the SNMP objects incremental value must be below the threshold-percentage of the limit value. For example, if the limit value is 80000 and the threshold is 90, the limit value must increment by 72000 or less, in order for the site to become eligible again based on bandwidth cost. Once a site again becomes eligible, the SNMP objects value is again allowed to increment by as much as the bandwidth limit value (80000, in this example).
P e r f o r m a n c e
b y
453 of 950
454 of 950
P e r f o r m a n c e
b y
D e s i g n
[no] auth-proto {sha | md5} [no] auth-key string These commands are applicable if the security level is auth-no-priv or auth-priv. The auth-proto command specifies the authentication protocol. The auth-key command specifies the authentication key. The key string can be 1-127 characters long. [no] priv-proto {aes | des} [no] priv-key string These commands are applicable only if the security level is auth-priv. The priv-proto command specifies the privacy protocol used for encryption. The priv-key command specifies the encryption key. The key string can be 1-127 characters long. [no] context-engine-id id [no] context-name id [no] security-engine-id id The context-engine-id command specifies the ID of the SNMPv3 protocol engine running on the site AX device. The context-name command specifies an SNMPv3 collection of management information objects accessible by an SNMP entity. The security-engine-id command specifies the ID of
P e r f o r m a n c e
b y
455 of 950
456 of 950
P e r f o r m a n c e
b y
D e s i g n
The following commands apply the SNMP template to a site and set the bandwidth increment limit and threshold:
AX(config)#gslb site usa AX(config gslb-site)#template snmp-1 AX(config gslb-site)#bw-cost limit 100000 threshold 90 AX(config gslb-site)#exit
The following commands enable the bw-cost metric in the GSLB policy:
AX(config)#gslb policy pol1 AX(config-gslb policy)#bw-cost AX(config-gslb policy)#exit
P e r f o r m a n c e
b y
457 of 950
The other commands are the same as those shown in CLI Example SNMPv2c on page 457.
your deployment: DNS backup-alias DNS geoloc-alias 3. If using the backup-alias option, use the dns-cname-record as-backup option on the service.
458 of 950
P e r f o r m a n c e
b y
D e s i g n
your deployment: DNS backup-alias DNS geoloc-alias 3. If using the backup-alias option, use the dns-cname-record as-backup option on the service.
459 of 950
Geo-Location Database Files You can load the geo-location database from one of the following types of files:
Internet Assigned Numbers Authority (IANA) database The IANA
database contains the geographic locations of the IP address ranges and subnets assigned by the IANA. The IANA database is loaded by default.
Custom database in CSV format You can load a custom geo-location
database from a file in comma-separated-values (CSV) format. This option requires configuration of a CSV template on the AX device. When you load the CSV file, the data is formatted based on the template. Note: You can load more than one geo-location database. When you load a new database, if the same IP address or IP address range already exists in a previously loaded database, the address or range is overwritten by the new database. Geo-Location Mappings A geo-location mapping consists of a geo-location name and an IP address or IP range.
If you manually map a geo-location to an GSLB site, GSLB uses the
mapping.
If no geo-location is configured for a GSLB site, GSLB automatically
AX device to a geo-location. If more than one geo-location matches a clients IP address, the most specific match is used. For example, if a client is in the same city as a site AX, that site will be preferred. If the client and site are in the same state but in different cities, the site in that state will be preferred.
460 of 950
P e r f o r m a n c e
b y
D e s i g n
...
The example above shows the file displayed in a text editor. The same file looks like the example in Figure 131 if displayed in a spreadsheet application. However, when the file is saved to CSV format, the file is essentially as shown above. FIGURE 131 CSV File in Spreadsheet Application
The database file can contain more types of information (fields) than are required for the GSLB database. When you load the file into the geo-location database, the CSV template on the AX device is used to filter the file to extract the required data. In this example, only the fields shown in bold type will be extracted and placed into the geo-location database:
"1159363840","1159364095","US","UNITED STATES","NA","NORTH AMERICA","EST","MA","MASSACHUSETTS","COMMRAIL INC","MARLBOROUGH","MIDDLESEX","42.3495","-71.5482"
The IP addresses in this example are in bin4 format. Dotted decimal format (for example: 69.26.125.0) is also supported. If you use bin4 format, the AX
P e r f o r m a n c e
b y
461 of 950
CSV File Field Delimiters The fields in the CSV file must be separated by a delimiter. By default, the AX device interprets commas as delimiters. When you configure the CSV template on the AX device, you can set the delimiter to any valid ASCII character. Creating and Loading a Custom Geo-Location Database To create and load a custom geo-location database: 1. Prepare the database file. (This step requires an application that can save to text for CSV format, and can not be performed on the AX device.) 2. Configure a CSV template for the file. The CSV template specifies the field positions for IP address and location information. 3. Import the CSV file onto the AX device. 4. Load the CSV file. 5. Display the geo-location database.
462 of 950
P e r f o r m a n c e
b y
D e s i g n
P e r f o r m a n c e
b y
463 of 950
464 of 950
P e r f o r m a n c e
b y
D e s i g n
(For information about the use-mgmt-port option, see Using the Management Interface as the Source for Management Traffic on page 929.) Loading the CSV File Data into the Geo-Location Database To load the CSV file, use the following command at the global configuration level of the CLI: [no] gslb geo-location load file-name csv-template-name Use the file name you specified when you imported the CSV file, and the name of the CSV template to be used for extracting data from the file. Note: The file-name option is available only if you have already imported a geolocation database file. To display information about CSV files that have been loaded are currently being loaded, use the following command: show gslb geo-location file [file-name] Manually Configuring Geo-Location Mappings
P e r f o r m a n c e
b y
465 of 950
466 of 950
P e r f o r m a n c e
b y
D e s i g n
The following commands initiate loading the data from the CSV file into the geo-location database, and display the status of the load operation:
AX(config)#gslb geo-location load test1.csv test1-tmplte AX(config)#show gslb geo-location file T = T(Template)/B(Built-in), Per = Percentage of loading Filename T Template Per Lines Success Error -----------------------------------------------------------------------------test1 T t1 98% 11 10 0
P e r f o r m a n c e
b y
467 of 950
Configure Services
To configure GSLB services, use either of the following methods.
468 of 950
P e r f o r m a n c e
b y
D e s i g n
P e r f o r m a n c e
b y
469 of 950
470 of 950
P e r f o r m a n c e
b y
D e s i g n
P e r f o r m a n c e
b y
471 of 950
On the GSLB controller, the following commands enable gateway health checking for site device site-ax:
GSLB-AX(config)#gslb site remote GSLB-AX(config-gslb site)#slb-dev site-ax 10.1.1.1 GSLB-AX(config-slb dev)#gateway 1.1.1.1
The following command displays the gateway health status for GSLB sites:
GSLB-AX(config)#show gslb slb-device Attrs = Attributes, APF = Administrative Preference Sesn-Num/Uzn = Number/Utilization of Available Sessions GW = Gateway Status, IPCnt = Count of Service-IPs P = GSLB Protocol, L = Local Protocol Device IP Attrs APF Sesn-Num Uzn GW IPCnt -------------------------------------------------------------------------------local:self 127.0.0.1 100 0 0% 0 local:self2 127.0.0.1 100 0 0% 0 local:self3 127.0.0.1 100 0 0% 2 remote:site-ax 10.1.1.1 100 0 0% UP 0
In this example, the gateway health status for SLB-device configuration site-ax on the remote site is Up.
472 of 950
P e r f o r m a n c e
b y
D e s i g n
On the GSLB controller, the following commands enable gateway health checking for each of the sites links. A unique SLB-device name is used for each link, even though both links are for the same SLB device (20.1.1.1).
GSLB-AX(config)#gslb site remote-link1 GSLB-AX(config-gslb site)#slb-dev site-ax-lnk1 20.1.1.1 GSLB-AX(config-slb dev)#gateway 2.2.2.1 GSLB-AX(config-slb dev)#exit GSLB-AX(config-gslb site)#exit GSLB-AX(config)#gslb site remote-link2 GSLB-AX(config-gslb site)#slb-dev site-ax-lnk2 20.1.1.1 GSLB-AX(config-slb dev)#gateway 3.3.3.1
If the same services can be reached through either link, an additional SLBdevice configuration is required:
GSLB-AX(config)#gslb site remote-link-both GSLB-AX(config-gslb site)#slb-dev site-ax-lnkboth 20.1.1.1
No gateway is specified in the SLB-device configuration. The gateway health status will be Up unless the health checks for 2.2.2.1 and 3.3.3.1 both fail.
473 of 950
Note:
Applying a health monitor is required only if you do not plan to use the default health monitors. (See Default Health Monitors on page 473.) The following commands enable a multi-port health check for the HTTP service www on service IP gslb-srvc2 in GSLB zone abc.com:
AX(config)#gslb zone abc.com AX(config-gslb zone)#service http www AX(config-gslb service)#health-check port 80 8080 8081
474 of 950
P e r f o r m a n c e
b y
D e s i g n
Configure Sites
To configure GSLB sites, use either of the following methods.
P e r f o r m a n c e
b y
475 of 950
Configure a Zone
To configure a GSLB zone, use either of the following methods.
a. b. c. d.
476 of 950
If you are planning to use the Passive RTT metric, select the Passive RTT checkbox to enable collection of passive RTT data on this site AX device. 4. Click OK.
P e r f o r m a n c e
b y
477 of 950
478 of 950
P e r f o r m a n c e
b y
D e s i g n
GSLB Parameters
health-checkTable 12 lists the GSLB parameters.
P e r f o r m a n c e
b y
479 of 950
480 of 950
P e r f o r m a n c e
b y
D e s i g n
P e r f o r m a n c e
b y
481 of 950
ip-list (Optional)
Default: None
482 of 950
P e r f o r m a n c e
b y
D e s i g n
Service-IP Parameters
Enables or disables the service-ip. disable | enable Config > Service > GSLB > Service-IP Assigns an external IP address to the service IP. The external IP address allows a service IP that has an internal IP address to be reached from outside the internal network. [no] external-ip ipaddr Config > Service > GSLB > Service-IP Enables or disables monitoring for the service IP address. You can specify any health monitor (Layer 3, 4 or 7). Alternatively, you can use the follow-port option to base the health of the service port on the health of another port. Specify the other port number. The protocol option enables or disables use of the GSLB protocol for health checking of the service. By default, the protocol option is enabled. If the GSLB protocol is enabled and can reach the service, health checking is performed over the GSLB protocol. Otherwise, health checking is performed using standard network traffic instead. [no] health-check [monitor-name] | [follow-port portnum] [protocol] Config > Service > GSLB > Service-IP Adds a service port to the service IP address. The command also changes the CLI to the configuration level for the specified service port, where the following service port-related commands are available: port num {tcp | udp} Config > Service > GSLB > Service-IP Maps an IPv6 address to an IPv4 service IP. This option also requires IPv6 DNS AAAA support to be enabled in the GSLB policy. [no] ipv6 ipv6-addr Note: The current release does not support configuration of this option using the GUI.
Default: None
health check
Default: The default Layer 3 health monitor (ICMP ping) is used. The protocol option is enabled by default.
service port
IPv6 mapping
P e r f o r m a n c e
b y
483 of 950
Site Parameters
Configures options for the Active RTT metric. [no] active-rtt aging-time minutes | bind-geoloc | ignore-count num | limit num | mask {/mask-length | mask-ipaddr} | range-factor num | smooth-factor num Config > Service > GSLB > Site - Options
484 of 950
P e r f o r m a n c e
b y
D e s i g n
geo-location (Optional)
Associates the site with a specific geographic location. [no] geo-location location-name Config > Service > GSLB > Site - Geo-location Note: This option is applicable only for manually configuring geo-location mappings. If you plan to load geo-location mappings from a file instead, you do not need to use this option.
P e r f o r m a n c e
b y
485 of 950
passive-rtt (Optional)
weight (Optional)
486 of 950
P e r f o r m a n c e
b y
D e s i g n
max-client (Optional)
passive-rtt-timer (Optional)
1-255 Default: 3
vip-server (Required)
The name must be the name of a configured service IP. (To configure the service IP, use the gslb service-ip command.) Default: None
P e r f o r m a n c e
b y
487 of 950
Zone Parameters
Configures a DNS Mail Exchange (MX) record for the zone. The name is the fully-qualified domain name of the mail server for the zone. If more than MX record is configured for the same zone, the priority specifies the order in which the mail server should attempt to deliver mail to the MX hosts. The MX with the lowest preference value has the highest priority and is tried first. The priority can be 0-65535. There is no default. MX records configured on a zone are used only for services on which MX records are not configured. [no] dns-mx-record name priority Config > Service > GSLB > Zone - Click Add on the Service section to display the DNS MX Record section. Configures a DNS name server record for the zone. [no] dns-ns-record domain-name Config > Service > GSLB > Zone - Click Add on the Service section to display the DNS NS Record section.
dns-ns-record (Optional)
488 of 950
P e r f o r m a n c e
b y
D e s i g n
policy (Optional)
The policy-name can be up to 31 alphanumeric characters. Default: The default GSLB policy is used, unless you configure another policy and apply it to the zone.
P e r f o r m a n c e
b y
489 of 950
ttl (Optional)
Changes the TTL of each DNS record contained in DNS replies received from the DNS for which the AX Series is a proxy, for this zone. TTL can be set at different levels of the GSLB configuration; however, only one of the TTL settings is used. (See DNS Options on page 435.) ttl seconds [no] Config > Service > GSLB > Zone The health check must be assigned to the individual service. See Service Parameters below.
Service Parameters
action (Optional) Specifies the action to perform for DNS traffic. Note: Use of the actions configured for services also must be enabled in the GSLB policy, using the DNS action option. See Table 13, GSLB Policy Parameters, on page 494. [no] action {drop | reject | forward {both | query | response}} Config > Service > GSLB > Zone - Click Add in the Service section. You can specify one of the following: Drop Drops DNS queries from the local DNS server. Reject Rejects DNS queries from the local DNS server and returns the Refused message in replies. Forward Forwards requests or queries, as follows: Forward both Forwards queries to the Authoritative DNS server, and forwards responses to the local DNS server. Forward query Forwards queries to the Authoritative DNS server, but does not forward responses to the local DNS server. Forward response Forwards responses to the local DNS server, but does not forward queries to the Authoritative DNS server.
490 of 950
P e r f o r m a n c e
b y
D e s i g n
dns-cnamerecord (Optional)
Configures DNS Canonical Name (CNAME) records for the service. The as-backup option specifies that the record is a backup record. dns-cname-record alias [as-backup] [alias ...] Config > Service > GSLB > Zone - Click Add in the Service section to display the DNS CName Record section.
P e r f o r m a n c e
b y
491 of 950
dns-ns-record (Optional)
dns-ptr-record (Optional)
geo-location (Optional)
The location-name is a global GSLB parameter and must already be configured. (See Global GSLB parameters and Site parameters above.) The alias is a service parameter and must already be configured. (See above.) Default: None
492 of 950
P e r f o r m a n c e
b y
D e s i g n
policy (Optional)
The policy-name can be up to 31 alphanumeric characters. You must configure the policy before you apply it. Default: The GSLB policy applied to the zone is also applied to the services in that zone. If no policy is applied to the zone, the default GSLB policy is applied.
P e r f o r m a n c e
b y
493 of 950
Policy Parameters
Table 13 lists the GSLB policy parameters. TABLE 13 GSLB Policy Parameters
Parameter active-rtt Description and Syntax Supported Values The state is one of the following: Enabled Disabled This is the default. When you enable the active-rtt metric, the default number of samples is 5. The default store-by is slb-device. The default tolerance is 10 percent.
active-servers
The state is one of the following: Enabled Disabled This is the default.
admin-preference
The state is one of the following: Enabled Disabled This is the default. The preference can be from 0 to 255. The default is 100 for each site.
494 of 950
P e r f o r m a n c e
b y
D e s i g n
bw-cost
The state is one of the following: Enabled Disabled This is the default.
capacity
The state is one of the following: Enabled Disabled This is the default. The threshold can be from 0 to 100 percent. The default is 90.
P e r f o r m a n c e
b y
495 of 950
geographic
The state is one of the following: Enabled This is the default. Disabled
health-check
The state is one of the following: Enabled This is the default. Disabled
496 of 950
P e r f o r m a n c e
b y
D e s i g n
num-session
The state is one of the following: Enabled Disabled This is the default. When you enable the num-session metric, the default tolerance is 10 percent.
ordered-ip
The state is one of the following: Enabled Disabled This is the default.
P e r f o r m a n c e
b y
497 of 950
round-robin
The state is one of the following: Enabled This is the default. Disabled
498 of 950
P e r f o r m a n c e
b y
D e s i g n
weighted-ip
The state is one of the following: Enabled Disabled This is the default.
weighted-site
The state is one of the following: Enabled Disabled This is the default.
P e r f o r m a n c e
b y
499 of 950
metric-fail-break
DNS Parameters
action Enable GSLB to perform the DNS actions specified in the service configurations. [no] dns action Config > Service > GSLB > Policy - DNS Options Note: To configure the DNS action for a service, use the action option at the configuration level for the service. See Table 12, GSLB Parameters, on page 479. The state is one of the following: Enabled Disabled This is the default.
500 of 950
P e r f o r m a n c e
b y
D e s i g n
addition-mx
The state is one of the following: Enabled Disabled This is the default.
backup-alias
The state is one of the following: Enabled Disabled This is the default.
best-only
The state is one of the following: Enabled Disabled This is the default.
cache
The state is one of the following: Enabled Disabled This is the default. The aging time can be 1-1,000,000,000 seconds (nearly 32 years). Default: TTL set by the DNS server in the reply Note: If you change the value and later want to restore it to the default, use the ttl option. The state is one of the following: Enabled This is the default. Disabled
cname-detect
Applies GSLB to CNAME records. [no] dns cname-detect Config > Service > GSLB > Policy - DNS Options
P e r f o r m a n c e
b y
501 of 950
geoloc-action
The state is one of the following: Enabled Disabled This is the default.
geoloc-alias
The state is one of the following: Enabled Disabled This is the default. The state is one of the following: Enabled Disabled This is the default. The state is one of the following: Enabled Disabled This is the default.
geoloc-policy
ip-replace
502 of 950
P e r f o r m a n c e
b y
D e s i g n
logging
Disabled by default
P e r f o r m a n c e
b y
503 of 950
504 of 950
P e r f o r m a n c e
b y
D e s i g n
ttl
Geo-location Parameters
geo-location Assigns a geographic location to an IP address range. GSLB forwards client requests from addresses within the range to the GSLB site that serves the location. This is an alternative to loading a geo-location database. [no] geo-location location-name start-ip-addr [mask ip-mask] [end-ip-addr] This parameter cannot be configured using the GUI. [no] geo-location match-first {global | policy} The match-first parameter specifies whether to match the requested IP address with the global geolocation table or with the geo-location table configured in the policy. [no] geo-location overlap The geo-location mapping and overlap cannot be configured using the GUI. To configure the matchfirst parameter, select Config > Service > GSLB > Policy - Geo-location P e r f o r m a n c e D e s i g n Document No.: D-030-01-00-0006 - Ver. 2.4.3 6/21/2010 b y The location-name can be up to 127 alphanumeric characters. Default location: None Default match-first: global Default overlap: disabled
505 of 950
Configuration Examples
These examples implement the GSLB configuration shown in Figure 130 on page 428. The examples assume that the default GSLB policy is used, without any changes to the policy settings.
CLI Example
Configuration on the GSLB AX Device (GSLB Controller)
The following commands configure a health monitor for the local DNS server to be proxied:
AX-Controller(config)#health monitor dns-53 AX-Controller(config-health:monitor)#method dns domain example.com AX-Controller(config-real server)#exit
The following commands configure the service IP addresses. The VIP address and virtual port number of the virtual server in the site AX Series devices SLB configuration are used as the service IP address and port number on the GSLB AX Series device.
AX-Controller(config)#gslb service-ip servicevip1 2.1.1.10 AX-Controller(config-gslb service ip)#port 80 tcp AX-Controller(config-gslb service ip)#exit AX-Controller(config)#gslb service-ip servicevip2 3.1.1.10 AX-Controller(config-gslb service ip)#port 80 tcp AX-Controller(config-gslb service ip)#exit
The following command loads the IANA file into the geo-location database:
AX-Controller(config)#gslb geo-location load iana
506 of 950
P e r f o r m a n c e
b y
D e s i g n
At the configuration level for the service (www), the CNAME www.a10.co.cn is configured, and the CNAME is associated with geo-location China. If a clients IP address is in the range for the China geo-location, GSLB sends the CNAME www.a10.co.cn in the DNS reply. The following command enables the GSLB protocol:
AX-Controller(config)#gslb protocol enable controller
507 of 950
Note:
The virtual server IP address must be the same as the GSLB service IP address configured on the GSLB AX device. The following command enables the GSLB protocol:
GUI Example
Configuration on the GSLB AX Device (GSLB Controller)
Configure a Health Monitor for the DNS Proxy 1. Select Config > Service > Health Monitor. 2. On the menu bar, select Health Monitor. 3. Click Add. 4. Enter a name for the monitor in the Name field.
508 of 950
P e r f o r m a n c e
b y
D e s i g n
P e r f o r m a n c e
b y
509 of 950
FIGURE 133 Configure > Service > GSLB > DNS Proxy - service group configuration
510 of 950
P e r f o r m a n c e
b y
D e s i g n
Configure > Service > GSLB > DNS Proxy - GSLB port
Configure > Service > GSLB > DNS Proxy - DNS proxy
P e r f o r m a n c e
b y
511 of 950
separate GSLB service IP for each SLB VIP.) 5. If needed, assign an external IP address to the service IP. The external IP address allows a service IP that has an internal IP address to be reached from outside the internal network. 6. Add the service port(s): a. Enter the port number and select the protocol (TCP or UDP). b. Optionally, select a health monitor. c. Click Add. The service port appears in the service port list. For this example, add TCP port 80 and leave the health monitor unselected. (See Figure 137 on page 513.) 7. Click OK. 8. Repeat for each service IP.
512 of 950
P e r f o r m a n c e
b y
D e s i g n
Configure Sites 1. Select Config > Service > GSLB. 2. On the menu bar, select Site. 3. Click Add. 4. Enter the site name. 5. In the SLB-Device section, enter information about the AX devices that provide SLB for the site: a. Click Add. b. Enter a name for the device. c. Enter the IP address at which the GSLB AX device will be able to reach the site AX device. d. To add a service to this SLB device, select it from the drop-down list in the VIP server section and click Add. Repeat for each service. For this example, enter the following: Name AX-A IP Address 2.1.1.1 (This is the IP address of the site AX device that provides SLB for the site.)
P e r f o r m a n c e
b y
513 of 950
down list and clicking Add. For this example, add servicevip1 to site usa. 6. In the IP-Server section, add services to the site. Select a service from the drop-down list and click Add. Repeat for each service. 7. To manually map a geo-location name to the site, enter the geo-location name in the Geo-location section and click Add. 8. Click OK. The site appears in the Site table. FIGURE 138 Configure > Service > GSLB > Site - SLB Device
514 of 950
P e r f o r m a n c e
b y
D e s i g n
Configure a Zone 1. Select Config > Service > GSLB. 2. On the menu bar, select Zone. 3. Click Add. 4. Enter the zone name in the Name field. 5. In the Service section, click Add. (See Figure 140 on page 516.) The service configuration sections appear. 6. In the Service field, enter the service name.
P e r f o r m a n c e D e s i g n Document No.: D-030-01-00-0006 - Ver. 2.4.3 6/21/2010 b y
515 of 950
516 of 950
P e r f o r m a n c e
b y
D e s i g n
Enable the GSLB Protocol 1. Select Config > Service > GSLB. 2. On the menu bar, select Global. 3. Select Enabled next to Run GSLB as Controller. 4. Click OK.
P e r f o r m a n c e
b y
517 of 950
518 of 950
P e r f o r m a n c e
b y
D e s i g n
RAM Caching
You can use the AX device as a transparent cache server, along with the devices many other uses.
Overview
The RAM Cache is a high-performance, in-memory Web cache that by default caches HTTP responses (RFC 2616 compliant). The RAM Cache can store a variety of static and dynamic content and serve this content instantly and efficiently to a large number of users. Caching of HTTP content reduces the number of Web server transactions and hence the load on the servers. Caching of dynamic content reduces the latency and the computation cost of generating dynamic pages by application servers and database servers. Caching can also result in significant reduction in page download time and in bandwidth utilization. RAM caching is especially useful for high-demand objects on a website, for static content such as images, and when used in conjunction with compression to store compressed responses, eliminating unnecessary overhead.
P e r f o r m a n c e
b y
519 of 950
was cached before the date and time in the IMS header, the AX device sends a 304 Not Modified response to the client.
If the requested content is in the cache and is still fresh, and the content
was cached after the date and time in the IMS header, the AX device sends a 200 OK response, along with the requested page, to the client.
If the requested content is not in the cache, or is in the cache but is stale,
the AX device deletes the IMS header from the request. This forces the server to send a 200 OK response, which is then immediately cached.
However, for security, support for these headers is disabled by default. Thee headers can make the AX device vulnerable to Denial of Service (DoS) attacks. To enforce strict RFC compliance, you can enable support for the headers.
520 of 950
P e r f o r m a n c e
b y
D e s i g n
onds
Via header indicates the AX software version, in the following format: AX-CACHE-software-version(major.minor):last-octet-of-VIP address
Insertion of these headers is enabled by default. You can disable insertion of the Age and Via headers, in individual RAM caching templates.
cached.
A response for a GET request that contains a body is not cached. A request that contains an Authorization or a Proxy-Authorization
header is not cacheable. The authorization header contains securityrelated information and should not be cached.
A response for a request that contains an If-Match header or an If-
other than Accept-Encoding is not cached. (The compression module inserts the Vary: Accept-Encoding header.)
A response with a Cache-Control header that has one of the following
521 of 950
cached. (Responses with Cookie headers often contain information that is specific to the user and so should not be cached.)
If the response type is FIN terminated, or the response does not have one
of the following attributes: Content-Length, or Transfer-Encoding: Chunked, it is not cached. Caching Server Replies in Cookie Persistence Configurations AX RAM caching does not cache responses that contain cookies. In configurations that also use cookie persistence, this behavior prevents server responses from being cached. You can enable the AX device to remove cookies from server replies, so that the replies can be cached. Note: Image files are an exception. RAM caching can cache images that have cookies.
Dynamic Caching
You can enhance RAM caching performance with dynamic RAM caching. Dynamic RAM caching is useful in situations where the response to a client request can be used multiple times before the response expires. Here are some examples where dynamic RAM caching is beneficial:
The same response is usable by multiple users within a certain period of
time. In this case, dynamic RAM caching is useful even if the cache expiration period is very small, if enough users access the response within that period. For example, dynamic RAM caching is beneficial for a hierarchical directory that is generated dynamically but presents the same view to all users that request it.
The response is usable by only a single user but the user accesses it mul-
tiple times. For example, if the response generated in one session can be used unchanged in a second session.
Host Verification
RAM caching has an optional host verification feature. Host verification supports multiple name-based virtual hosts. Name-based virtual hosts are host names that share the same IP address. For example, the real server IP address 192.168.209.34 could be shared by the following virtual hosts:
www.abc.com www.xyz.com
522 of 950
P e r f o r m a n c e
b y
D e s i g n
P e r f o r m a n c e
b y
523 of 950
The Details menu option displays RAM caching statistics. The Objects option displays cached entries. The Replacement option shows entry replacement information. To Export Web Log Archives 1. Select Monitor > Service > Application. 2. On the menu bar, select RAM Caching > Logs. The list of log archive files appears.
524 of 950
P e r f o r m a n c e
b y
D e s i g n
When support for these headers is enabled, either header causes the AX device to reload the cached object from the origin server. [no] age seconds This command specifies how long a cached object can remain in the AX RAM cache without being requested. You can specify 1-999999 seconds (about 11-1/2 days). The default is 3600 seconds (1 hour). [no] default-policy-nocache This command changes the default cache policy in the template from cache to nocache. This option gives you tighter control over content caching. When you use the default no-cache policy, the only content that is cached is cacheable content whose URI matches an explicit cache policy. [no] max-cache-size MB This command specifies the size of the AX RAM cache.
P e r f o r m a n c e
b y
525 of 950
The default is 80 MB. [no] max-content-size bytes This command specifies the maximum object size that can be cached. The AX device will not cache objects larger than this size. You can specify 0-4194303 bytes (4 MB). If you specify 0, no objects can be cached. The default is 81920 bytes (80 KB). [no] disable-insert-age Disables insertion of Age headers into cached responses. Insertion of Age headers is enabled by default. [no] disable-insert-via Disables insertion of Via headers into cached responses. Insertion of Via headers is enabled by default. [no] min-content-size bytes This command specifies the minimum object size that can be cached. The AX device will not cache objects smaller than this size. You can specify 0-4194303 bytes (4 MB). If you specify 0, all objects smaller than or equal to the maximum content size can be cached. The default is 512 bytes. [no] remove-cookies This command enables RAM caching to remove cookies from server replies so the replies can be cached. (See Caching Server Replies in Cookie Persistence Configurations on page 522.) [no] replacement-policy LFU This command specifies the policy used to make room for new objects when the RAM cache is full. The policy supported in the current release is Least Frequently Used (LFU). When the RAM cache becomes more than 90% full, the AX device discards the least-frequently used objects to ensure there is sufficient room for new objects. This is the default behavior and is the only supported option in the current release.
526 of 950
P e r f o r m a n c e
b y
D e s i g n
for the number of seconds configured in the template (set by the age command). To override the aging period set in the template, specify the number of seconds with the cache command.
nocache Does not cache the content. invalidate inv-pattern Invalidates the content that has been cached for
inv-pattern. If a URI matches the pattern in more than one policy command, the policy command with the most specific match is used. Note: Wildcard characters (for example: ? and *) are not supported in RAM Caching policies. For example, if the string pattern contains *, it is interpreted literally, as the * character. Host Verification Command [no] verify-host This command enables the AX device to cache the host name in addition to the URI for cached content. Use this command if a real server that contains cacheable content will host more than one host name (for example, www.abc.com and www.xyz.com). Show Commands To display client sessions that are using cached content, use the following command: show session To display RAM caching statistics, use the following command:
P e r f o r m a n c e D e s i g n Document No.: D-030-01-00-0006 - Ver. 2.4.3 6/21/2010 b y
527 of 950
528 of 950
P e r f o r m a n c e
b y
D e s i g n
The following commands configure the virtual server and bind the RAM caching template and the service group to virtual HTTP service port 80.
AX(config)#slb virtual-server cached-vip 10.10.10.101 AX(config-slb virtual server)#port 80 http AX(config-slb virtual server-slb virtua...)#service-group cached-group AX(config-slb virtual server-slb virtua...)#template cache ramcache
The following command shows client sessions. Asterisks ( * ) in the Reverse Source and Reverse Dest fields indicate that the AX device directly served the requested content to the client from the AX RAM cache. In this case, the session is actually between the client and the AX device rather than the real server.
AX(config-slb virtual server-slb virtua...)#show session Traffic Type Total -------------------------------------------TCP Established 4328 TCP Half Open 39026 UDP 0 Non TCP/UDP IP sessions 0 Other 0 Reverse NAT TCP 0 Reverse NAT UDP 0 Free Buff Count 0 Curr Free Conn 1923655 Conn Count 5287134 Conn Freed 5113720 tcp syn half open 0 Prot Forward Source Forward Dest Reverse Source Reverse Dest Age --------------------------------------------------------------------------------------Tcp 10.10.10.61:25058 10.10.10.10:80 * * 600 Tcp 10.10.10.60:9239 10.10.10.11:80 * * 600 Tcp 10.10.10.61:1838 10.10.10.10:80 * * 600 Tcp 10.10.10.65:47834 10.10.10.11:80 * * 600 Tcp 10.10.10.62:55613 10.10.10.11:80 * * 600 Tcp 10.10.10.57:9233 10.10.10.11:80 * * 600
P e r f o r m a n c e
b y
529 of 950
530 of 950
P e r f o r m a n c e
b y
D e s i g n
The Status column indicates the status. In this example, all entries are fresh (FR). For more information, see the AX Series CLI Reference. Dynamic Caching Configuration Here is an example application of dynamic RAM caching. Web site x.y.com displays a frequently requested list page, and also serves private pages to individual clients based on additional requests from clients. Clients also can add or delete content on the list page. http://x.y.com/list http://x.y.com/private?user=u1 http://x.y.com/add?a=p1&b=p2 http://x.y.com/del?c=p3 Dynamic RAM caching policies can be used to effectively manage caching for this site. The /list URI is visited by many users and therefore should be cached, so long as the content is current. However, the /private URI contain private data for a specific user, and should not be cached. The /add and /del URLs modify the content of the list page. When either type of URI is observed by the AX device, the currently cached content for the /list URI should be invalidated, so that new requests for the URI are not served with a stale page. The following commands implement the dynamic RAM caching configuration described above.
AX(config)#slb template cache ram-cache AX(config-RAM caching template)#policy uri /list cache 3000 AX(config-RAM caching template)#policy uri /private nocache AX(config-RAM caching template)#policy uri /add invalidate /list AX(config-RAM caching template)#policy uri /del invalidate /list P e r f o r m a n c e D e s i g n Document No.: D-030-01-00-0006 - Ver. 2.4.3 6/21/2010 b y
531 of 950
This policy is configured to flush (invalidate) all cached entries that have /story in the URI. The policy is activated when a request is received with the URI /flush.
532 of 950
P e r f o r m a n c e
b y
D e s i g n
High Availability
This chapter describes High Availability (HA) and how to configure it.
Overview
High Availability (HA) is an AX feature that provides AX-level redundancy to ensure continuity of service to clients. In HA configurations, AX devices are deployed in pairs. If one AX device in the HA pair becomes unavailable, the other AX device takes over. You can configure either of the following types of HA:
Active-Standby One AX device is the primary SLB device for all vir-
tual services on which HA is enabled. The other AX device is a hot Standby for the virtual services.
Active-Active Each AX device is the primary SLB device for some of
the configured virtual services, and is a hot Standby for the other configured virtual services. Active-Active is supported only on AX devices that are deployed in route mode. Active-Standby is supported on AX devices deployed in transparent mode or route mode. Note: Both AX devices in an HA pair should be the same model and should be running the same software version. Using different AX models or different software versions in an HA pair is not supported.
P e r f o r m a n c e
b y
533 of 950
Layer 3 Active-Standby HA
Figure 142 shows an example of an Active-Standby configuration. FIGURE 142 Active-Standby HA
534 of 950
P e r f o r m a n c e
b y
D e s i g n
device must have an HA ID, which can be 1 or 2. The ID must be different on each AX device. The ID can be used as a tie breaker to select the Active AX device. (See How the Active AX Device Is Selected on page 551.)
HA group HA group 1 is configured on each AX device. An AX
device can have up to 31 HA groups. Both VIPs on each AX device are members of the HA group. Each HA group must be configured with a priority. The priority can be used as a tie breaker to select the Active AX device for a VIP.
Session synchronization Also called connection mirroring, session
synchronization sends information about active client sessions to the Standby AX device. If a failover occurs, the client sessions are maintained without interruption. (For a complete list of configurable HA parameters, see HA Configuration Parameters on page 556.)
P e r f o r m a n c e
b y
535 of 950
Layer 3 Active-Active HA
Figure 143 shows an example of an Active-Active configuration. FIGURE 143 Active-Active HA
In the Active-Active configuration, as in the Active-standby configuration. only one AX is active for a given VIP. But unlike the Active-Standby configuration, the same AX device does not need to be the Active AX device for all the VIPs. Instead, each of the AX devices can be the Active AX device for some VIPs. In this example, AX1 is Active for VIP2 and AX2 is Active for VIP1.
536 of 950
P e r f o r m a n c e
b y
D e s i g n
priority on one AX device than it does on the other AX device. In this example, HA group 1 has a higher priority on AX2, whereas HA group 2 has a higher priority on AX1.
On each AX device, one of the VIPs is assigned to HA group 1 and the
enables the devices to use the HA group priority values to select the Active and Standby AX device for each VIP. Without HA pre-emption, the AX selection is based on which of the AX devices comes up first.
P e r f o r m a n c e
b y
537 of 950
In this example, a pair of routers configured as a redundant pair route traffic between clients and servers. The redundant router pair can be implemented using Virtual Router Redundancy Protocol (VRRP), Extreme Standby Router Protocol (ESRP), or another equivalent router redundancy protocol.
538 of 950
P e r f o r m a n c e
b y
D e s i g n
P e r f o r m a n c e
b y
539 of 950
Restrictions
Supported for Active-Standby HA deployments only. Not supported for
Active-Active HA.
Inline mode is designed for one HA group in Hot-Standby mode. Do not
540 of 950
P e r f o r m a n c e
b y
D e s i g n
ment, the Standby AX does not forward traffic. In addition, the Active AX in the HA pair is designed to not forward packets destined for the Standby AX. Depending on the network topology, certain traffic to the Standby AX might be dropped if it must first pass through the Active AX.
Preferred HA Port
When you enable inline mode on an AX, the AX uses a preferred HA port for session synchronization and for management traffic between the AX devices in the HA pair. For example, if you use the CLI on one AX to ping the other AX, the ping packets are sent only on the preferred HA port. Likewise, the other AX sends the ping reply only on its preferred HA port. Management traffic between AX devices includes any of the following types of traffic:
Telnet SSH Ping
Optionally, you can designate the preferred HA port when you enable inline mode. In Figure 145 on page 540, Ethernet interface 5 on each AX has been configured as the preferred HA port. The AX selects the Active AX devices preferred HA port as follows: 1. Is a preferred port specified with the inline configuration, and is the port up? If so, use the port. 2. If no preferred HA port is specified in the configuration or that port is down, the first HA interface that comes up on the AX is used as the preferred HA port. 3. If the preferred HA port selected by 1. or 2. above goes down, the HA interface with the lowest port number is used. If that port also goes down, the HA interface with the next-lowest port number is used, and so on. HA heartbeat messages are not restricted to the preferred HA port. Heartbeat messages are sent out all HA interfaces unless you disable the messages on specific interfaces. Note: The preferred port must be added as an HA interface and heartbeat messages must be enabled on the interface.
P e r f o r m a n c e
b y
541 of 950
Port Restart
When a transition from Standby to Active occurs because the formerly Active AX device becomes unavailable, the other devices that are directly connected to the unavailable AX detect that their links to the AX have gone down. The devices then flush their cached MAC entries on the down links. For example, in Figure 145 on page 540, while AX1 is still Active, the active router (the one on the left) uses the MAC entries it has learned on its link with AX1 to reach downstream devices. If the link with AX1 goes down, the router flushes the MAC entries. The router then relearns the MAC addresses on the link with AX2 when it becomes the Active AX. This mechanism is applicable when the link with AX1 goes down. However, if the transition from Active to Standby does not involve failure of the router's link with AX1, the router does not flush its learned MAC entries on the link. As a result, the router might continue to send traffic for downstream devices through the router's link with AX1. Since AX1 is now the Standby, it drops the traffic, thereby causing reachability issues. For example, if you administratively force a failover by changing the HA configurations of the AX devices and enabling HA pre-emption, the link between the router and AX1 remains up. In this case, the router continues to have MAC addresses through this link. To ensure that devices connected to the formerly Active AX flush their learned MAC entries on their links with AX1, you can enable HA port restart. HA port restart toggles a specified set of ports on the formerly Active AX by disabling the ports, waiting for a specified number of milliseconds, then re-enabling the ports. Toggling the ports causes the links to go down, which in turn causes the devices on the other ends of the links to flush their learned MAC entries on the links. The devices then can relearn MACs through links with the newly Active AX. Note: You must omit at least one port connecting the AX devices from the restart port-list. This is so that heartbeat messages between the AX devices are maintained; otherwise, flapping might occur. On model AX 2000 or AX 2100, A10 recommends that you do not include Fiber ports in the restart port list.
Note:
542 of 950
P e r f o r m a n c e
b y
D e s i g n
In this example, each AX device has multiple Ethernet ports connected to the clients, and multiple Ethernet ports connected to the servers. On each AX device, all these Ethernet interfaces are configured as a single Virtual Ethernet (VE) interface with a single IP address. The routers, both AX devices, and the servers are all in the same subnet.
P e r f o r m a n c e D e s i g n Document No.: D-030-01-00-0006 - Ver. 2.4.3 6/21/2010 b y
543 of 950
receive server replies to client requests. CPU processing is required on these interfaces in order to change the source IP address from the servers real IP address back into the VIP address. Restrictions
Supported for Active-Standby HA deployments only. Not supported for
Active-Active HA.
Inline mode is designed for one HA group in Hot-Standby mode. Do not
ment, the Standby AX does not forward traffic. In addition, the Active AX in the HA pair is designed to not forward packets destined for the Standby AX. Depending on the network topology, certain traffic to the Standby AX might be dropped if it must first pass through the Active AX.
HA Messages
The AX devices in an HA pair communicate their HA status with the following types of messages:
HA heartbeat messages Gratuitous ARP requests and replies
544 of 950
P e r f o r m a n c e
b y
D e s i g n
HA Heartbeat Messages
Each of the AX devices regularly sends HA heartbeat messages out its HA interfaces. The Standby AX device listens for the heartbeat messages. If the Standby AX device stops receiving heartbeat messages from the Active AX device, the Standby AX device transitions to Active and takes over networking and SLB operations from the other AX device. By default, heartbeat messages are sent every 200 milliseconds. If the Standby AX device does not receive a heartbeat message for 1 second (5 times the heartbeat interval), the Standby AX device transitions to Active. The heartbeat interval and retry count are configurable. (See HA Configuration Parameters on page 556.)
Gratuitous ARPs
When an AX transitions from Standby to Active, the newly Active AX device sends gratuitous ARP requests and replies (ARPs) for the IP address under HA control. Gratuitous ARPs are sent for the following types of addresses:
Virtual server IP addresses, for the VIPs that are assigned to an HA
group.
Floating IP address, if configured NAT pool IP addresses, for NAT pools assigned to an HA group
Devices that receive the ARPs learn that the MAC address for the AX HA pair has moved, and update their forwarding tables accordingly. The Active AX device sends the gratuitous ARPs immediately upon becoming the Active AX device. To make sure ARPs are being received by the target addresses, the AX device re-sends the ARPs 4 additional times, at 500millisecond intervals. After this, the AX device sends gratuitous ARPs every 30 seconds to keep its IP information current. The ARP retry count is configurable. (See HA Configuration Parameters on page 556.)
P e r f o r m a n c e
b y
545 of 950
HA Interfaces
When configuring HA, you specify each of the interfaces that are HA interfaces. An HA interface is an interface that is connected to an upstream router, a real server, or the other AX device in the HA pair. HA heartbeat messages can be sent only on HA interfaces. Optionally, you can disable the messages on individual interfaces. When you configure an HA interface that is a tagged member of one or more VLANs, you must specify the VLAN on which to send the heartbeat messages. Note: The maximum number of HA interfaces you can configure is the same as the number of Ethernet data ports on the AX device. If the heartbeat messages from one AX device to the other will pass though a Layer 2 switch, the switch must be able to pass UDP IP multicast packets. Changes to the state of an HA interface can trigger a failover. By default, the HA state of an interface can be Up or Down. Optionally, you can specify the HA interface type as one of the following:
Server interface A real server can be reached through the interface. Router interface An upstream router (and ultimately, clients) can be
Note:
interface. If you specify the HA interface type, the HA status of the AX device is based on the status of the AX link with the real server and/or upstream router. The HA status can be one of the following:
Up All configured HA router and server interfaces are up. Partially Up Some HA router or server interfaces are down but at least
The status also is Down if both router interfaces and server interfaces are not configured and an HA interface goes down. If both types of interfaces (router interfaces and server interfaces) are configured, the HA interfaces for which a type has not been configured are not included in the HA interface status determination. During selection of the active AX, the AX with the highest state becomes the active AX and all HA interfaces on that AX become active. For exam-
546 of 950
P e r f o r m a n c e
b y
D e s i g n
becomes active for that group. If the group priorities on the two AX devices are also the same, the AX that has the lowest HA ID (1 or 2) becomes active. Note: You can configure up to 31 HA groups on an AX, and assign a separate HA priority to each. For Active-Standby configurations, use only one group ID. For Active-Active configurations, use multiple groups IDs and assign VIPs to different groups.
Session Synchronization
HA session synchronization sends information about active client sessions to the Standby AX device. If a failover occurs, the client sessions are maintained without interruption. Session synchronization is optional. Without it, a failover causes client sessions to be terminated. Session synchronization can be enabled on individual virtual ports. Session synchronization applies primarily to Layer 4 sessions. Session synchronization does not apply to DNS sessions. Since these sessions are typically very short lived, there is no benefit to synchronizing them. Likewise, session synchronization does not apply to static NAT sessions. Synchronization of these sessions is not needed since the newly Active AX device will create a new flow for the session following failover. To enable session synchronization, see Enabling Session Synchronization on page 595. Session synchronization is required for config sync. Config sync uses the session synchronization link. (For more information, Synchronizing Configuration Information on page 598.) Note: Session synchronization is also called connection mirroring.
P e r f o r m a n c e
b y
547 of 950
VLAN-based Failover
You can enable HA checking for individual VLANs. When HA checking is enabled for a VLAN, the active AX device in the HA pair monitors traffic activity on the VLAN. If there is no traffic on the VLAN for half the duration of a configurable timeout, the AX device attempts to generate traffic by issuing ping requests to servers if configured, or broadcast ARP requests through the VLAN. If the AX device does not receive any traffic on the VLAN before the timeout expires, a failover occurs. The timeout can be 2-600 seconds. You must specify the timeout. Although there is no default, A10 recommends trying 30 seconds. This HA checking method provides a passive means to detect network health, whereas heartbeat messages are an active mechanism. You can use either or both methods to check VLAN health. If you use both methods on a VLAN, A10 recommends that you specify an HA checking interval (timeout) that is much longer than the heartbeat interval. For a configuration example, see VLAN-Based Failover Example on page 588.
Gateway-based Failover
Gateway-based failover uses ICMP health monitors to check the availability of the gateways. If any of the active AX devices gateways fails a health check, the AX device changes its HA status to Down. If the HA status of the other AX device is higher than Down, a failover occurs. Likewise, if the gateway becomes available again and all gateways pass their health checks, the AX device recalculates its HA status according to the HA interface counts. If the new HA status of the AX device is higher than the other AX devices HA status, a failover occurs.
548 of 950
P e r f o r m a n c e
b y
D e s i g n
Route-based Failover
Route-based failover reduces the HA priority of all HA groups on the AX device, if a specific route is missing from the IPv4 or IPv6 route table. You can configure this feature for individual IP routes. When you configure this feature for a route, you also specify the value to subtract from the HA priority of all HA groups, if the route is missing from the route table. You can configure this option for up to 100 IPv4 routes and up to 100 IPv6 routes. This option is valid for all types of IP routes supported in this release (static, RIP, and OSPF). If the priority of an HA group falls below the priority for the same group on the other AX device in an HA pair, a failover can be triggered. Notes
This feature applies only to routes in the data route table. The feature
option must be enabled. For a configuration example, see Route-Based Failover Example on page 591.
P e r f o r m a n c e
b y
549 of 950
individual port, and both health checks are unsuccessful, only the server weight is subtracted from the HA groups priority.
For failover to occur due to HA priority changes, the HA pre-emption
VIP-based Failover
VIP-based failover allows service for a VIP to be transferred from one AX device in an HA pair to the other AX device based on HA status changes of the real servers. When you configure an HA group ID, you also specify its priority. If HA pre-emption is enabled, the HA groups priority can be used to determine which AX device in the HA pair becomes the Active AX for the HA group. In this case, the AX device that has a higher value for the groups priority becomes the Active AX device for the group. If you enable the dynamic HA option on a virtual server, the AX device reduces the HA priority of the group assigned to the virtual server, if a real server becomes unavailable. (A real server is unavailable if it is marked Down by the AX device because the server failed its health check.) If the priority value is reduced to a value that is lower than the groups priority value on the other AX device in the HA pair, and HA pre-emption is enabled, service of the virtual serve is failed over to the other AX device. When a real server becomes available again, the weight value that was subtracted from the HA groups priority is re-added. If this results in the priority value being higher than on the other AX device, the virtual server is failed over again to the AX device with the higher priority value for the group.
550 of 950
P e r f o r m a n c e
b y
D e s i g n
P e r f o r m a n c e
b y
551 of 950
able.
HA pre-emption is enabled, and the configured HA priority is changed
to be higher on the Standby AX device. Figure 148 shows the events that can cause an HA failover.
552 of 950
P e r f o r m a n c e
b y
D e s i g n
P e r f o r m a n c e
b y
553 of 950
HA Pre-Emption
By default, a failover occurs only in the following cases:
The Standby AX device stops receiving HA heartbeat messages form
causes the Standby AX to have the greater HA priority for the VIPs HA group. (See VIP-based Failover on page 550.) By default, failover does not occur due to HA configuration changes to the HA priority. To enable the AX devices to failover in response to changes in priority, enable HA pre-emption. When pre-emption is enabled, the AX device with the higher HA priority becomes the Active AX device. If the HA priority is equal on both AX devices, then the AX device with the lower HA ID (1) becomes the Active AX device. Note: To force Active groups to change to Standby status, without changing HA group priorities and enabling pre-emption, see Forcing Active Groups to Change to Standby Status on page 595.
554 of 950
P e r f o r m a n c e
b y
D e s i g n
HA Sets
Optionally, you can provide even more redundancy by configuring multiple sets of HA pairs. FIGURE 149 Multiple HA Pairs
In this example, two HA pairs are configured. Each pair is distinguished by an HA set ID. Each HA pair can be used to handle a different set of real servers. You can configure up to 7 HA sets. This feature is supported for Layer 2 and Layer 3 HA configurations. The set ID can be specified along with the HA ID. (For syntax information, see Table 14 on page 556.)
P e r f o r m a n c e
b y
555 of 950
HA Configuration Parameters
Table 14 lists the HA parameters. TABLE 14 HA Parameters
Parameter HA ID and HA set ID Description and Syntax Supported Values HA ID: 1 or 2 HA set ID: 1-7 Default: Neither parameter is set
Global HA Parameters
HA ID of the AX device, and HA set to which the AX device belongs. The HA ID uniquely identifies the AX device within the HA pair. The HA set ID specifies the HA set to which the AX device belongs. This parameter is applicable to configurations that use multiple AX pairs. [no] ha id {1 | 2} [set-id num] HA group ID Config > HA > Setting > HA Global - General Uniquely identifies the HA group on an individual AX device. The priority value can be used during selection of the Active AX device. (SeeHow the Active AX Device Is Selected on page 551.) [no] ha group group-id priority num Floating IP address Config > HA > Setting > HA Global - Group IP address that downstream devices should use as their default gateway. The same address is shared by both AX devices in the HA pair. Regardless of which device is Active, downstream devices can reach their default gateway at this IP address. [no] floating-ip ipaddr ha-group group-id Config > HA > Setting > HA Global - Floating IP Address Default: not set HA group ID: 1-31 Priority: 1 (low priority) to 255 (high priority Default: not set
556 of 950
P e r f o r m a n c e
b y
D e s i g n
VLAN-based HA
Valid VLAN ID Default: not set The timeout can be 2-600 seconds. Although there is no default timeout, A10 recommends trying 30 seconds.
P e r f o r m a n c e
b y
557 of 950
2-255
Default: 5
1-255
Default: 4 additional gratuitous
558 of 950
P e r f o r m a n c e
b y
D e s i g n
Enabled or disabled Default: Disabled. Layer 4 traffic is dropped by the Standby AX device.
P e r f o r m a n c e
b y
559 of 950
Change the delay waited by the AX device before changing the HA state (Up, Partially Up, or Down) in response to link-state changes on HA interfaces. [no] ha link-event-delay 100-ms-unit Config > HA > Setting - HA Inline Mode HA group ID for a virtual server. This is required to enable HA for the VIP. [no] ha-group group-id Config > Service > SLB > Virtual Server Weight value assigned to real servers bound to the virtual server. The weight is used for VIP-based failover. (See VIP-based Failover on page 550.) [no] ha-dynamic server-weight Config > Service > SLB > Virtual Server - Select the HA group, then select the Dynamic Server Weight. Change the delay waited by the AX device before changing the HA state (Up, Partially Up, or Down) in response to link-state changes on HA interfaces. [no] ha link-event-delay 100-ms-unit Config > HA > Setting - HA Inline Mode
Server weight
100 milliseconds (ms) to 10000 ms, in increments of 100 ms Default: 3000 ms (3 seconds)
560 of 950
P e r f o r m a n c e
b y
D e s i g n
Session synchronization
P e r f o r m a n c e
b y
561 of 950
562 of 950
P e r f o r m a n c e
b y
D e s i g n
HA Status Indicators
The HA status of an AX device is displayed in the GUI and CLI. The HA status indicators provide the following information:
Current HA status of the AX device: Active or Standby Configuration status: Most recent configuration update The system time and date when
the most recent configuration change was made. Most recent configuration save The system time and date when the configuration was saved to the startup-config. Most recent config-sync The system time and date when the most recent configuration change was made. If the AX device is configured with multiple Role-Based Administration (RBA) partitions, separate configuration status information is shown for each partition.
In the GUI
The current HA status is shown as one of the following:
Active Standby Not Configured
The GUI does not indicate when the most recent configuration update or save occurred. This information is available in the CLI. (See below.)
In the CLI
In the CLI, the HA the status is shown in the command prompt. For example:
AX-Active#
or
AX-Standby#
P e r f o r m a n c e
b y
563 of 950
Disabling HA Status Display in the CLI Prompt Display of the HA status in the CLI prompt is enabled by default. To disable it, use the following command at the global configuration level of the CLI: [no] terminal no-ha-prompt
Configuring Layer 3 HA
To configure Layer 3 HA: 1. Configure the following global HA parameters: HA ID HA group ID and priority. For an Active-Standby configuration, configure one group ID. For Active-Active, configure multiple HA group IDs. Floating IP address (optional) Session synchronization (optional) HA pre-emption (optional) 2. Configure the HA interfaces. 3. Add each virtual server to an HA group. 4. If session synchronization is globally enabled, enable it on the individual virtual ports whose client sessions you want to synchronize. 5. If IP NAT pools are configured, add each pool to an HA group.
564 of 950
P e r f o r m a n c e
b y
D e s i g n
P e r f o r m a n c e
b y
565 of 950
566 of 950
P e r f o r m a n c e
b y
D e s i g n
P e r f o r m a n c e
b y
567 of 950
Note:
This example shows HA configuration of a single interface. Make sure to configure HA settings on the other HA interfaces too. FIGURE 152 Config > Service > SLB > Virtual Server (VIP1)
568 of 950
P e r f o r m a n c e
b y
D e s i g n
P e r f o r m a n c e
b y
569 of 950
FIGURE 156
570 of 950
P e r f o r m a n c e
b y
D e s i g n
The following commands configure the floating IP addresses for each HA group. The real servers and the Layer 2 switches connected to them will need to be configured to use the floating IP addresses as their default gateways.
AX1(config)#floating-ip 10.10.10.1 ha-group 1 AX1(config)#floating-ip 10.10.10.100 ha-group 2
The following commands configure the HA interfaces. The interface types are specified, so that the HA state of the AX device can be more precisely calculated based on HA interface state. (See HA Interfaces on page 546.)
P e r f o r m a n c e
b y
571 of 950
The following command enables session synchronization (connection mirroring). The feature also will need to be enabled on individual virtual ports, later in the configuration. The IP address is the real address of the other AX device.
AX1(config)#ha conn-mirror ip 10.10.30.2
The following command enables HA pre-emption, to ensure that the Active and Standby for each virtual server are chosen based on the configuration. By default, when HA is first configured, Active and Standby are selected based on which AX device comes up first.
AX1(config)#ha preemption-enable
The following commands add each of the virtual servers to an HA group, and enables session synchronization on the virtual ports. (For brevity, this example does not show the complete SLB configuration, only the HA part of the SLB configuration.)
AX1(config)#slb virtual-server VIP1 AX(config-slb virtual server)#ha-group 1 AX(config-slb virtual server)#port 80 tcp AX(config-slb virtual server-slb virtua...)#ha-conn-mirror AX(config-slb virtual server-slb virtua...)#exit AX(config-slb virtual server)#exit AX1(config)#slb virtual-server VIP2 AX1(config-slb virtual server)#ha-group 2 AX1(config-slb virtual server)#port 80 tcp AX1(config-slb virtual server-slb virtua...)#ha-conn-mirror AX1(config-slb virtual server-slb virtua...)#exit AX1(config-slb virtual server)#exit
572 of 950
P e r f o r m a n c e
b y
D e s i g n
The floating IP addresses must be the same as the ones set on AX1.
AX2(config)#floating-ip 10.10.10.1 ha-group 1 AX2(config)#floating-ip 10.10.10.100 ha-group 2 AX2(config)#ha interface ethernet 1 router-interface no-heartbeat AX2(config)#ha interface ethernet 2 router-interface no-heartbeat AX2(config)#ha interface ethernet 3 server-interface no-heartbeat AX2(config)#ha interface ethernet 4 server-interface no-heartbeat AX2(config)#ha interface ethernet 5
The HA configuration for virtual servers and virtual ports is identical to the configuration on AX1.
AX2(config)#slb virtual-server VIP1 AX2(config-slb virtual server)#ha-group 1 AX2(config-slb virtual server)#port 80 tcp AX2(config-slb virtual server-slb virtua...)#ha-conn-mirror AX2(config-slb virtual server-slb virtua...)#exit AX2(config-slb virtual server)#exit AX2(config)#slb virtual-server VIP2 AX2(config-slb virtual server)#ha-group 2 AX2(config-slb virtual server)#port 80 tcp AX2(config-slb virtual server-slb virtua...)#ha-conn-mirror AX2(config-slb virtual server-slb virtua...)#exit AX2(config-slb virtual server)#exit
P e r f o r m a n c e
b y
573 of 950
types affect the AX devices summary link state for HA. (See HA Interfaces on page 546.)
Session synchronization (also called connection mirroring) Existing
a floating IP address shared by the AX devices, rather than the IP address of the Active AX. Servers can still reach clients through their
P e r f o r m a n c e b y D e s i g n
574 of 950
575 of 950
576 of 950
P e r f o r m a n c e
b y
D e s i g n
P e r f o r m a n c e
b y
577 of 950
Note:
This example shows HA configuration of a single interface. Make sure to configure HA settings on the other HA interfaces too. FIGURE 159 Config > HA > Setting > HA Inline Mode
578 of 950
P e r f o r m a n c e
b y
D e s i g n
The following command enables inline HA mode and specifies the preferred HA port.
AX1(config)#ha inline-mode preferred-port 5
The following commands configure the HA interfaces. Each interface that is connected to a server, a router, or the other AX can be configured as an HA interface. Make sure to add the preferred HA port as one of the HA interfaces.
AX1(config)#ha interface ethernet 1 router-interface no-heartbeat AX1(config)#ha interface ethernet 2 router-interface no-heartbeat AX1(config)#ha interface ethernet 3 server-interface AX1(config)#ha interface ethernet 4 server-interface AX1(config)#ha interface ethernet 5
The following command enables restart of the HA ports connected to the routers, to occur if the AX transitions to Standby.
AX1(config)#ha restart-port-list ethernet 1 to 2
Note:
If source NAT is not configured for the VIP, but real servers send responses to a gateway IP address other than the AX floating IP address, enter the cpu-process command at the configuration level for each interface connected to the real servers. This requirement applies to the following AX models: AX 2200, AX 3100, AX 3200, AX 5100, and AX 5200. On other models, the command for CPU processing is not valid and is not required. The following command enables HA pre-emption mode, which causes failover to occur in response to administrative changes to the HA configuration. (For example, if you change the HA priority so that the other AX has higher priority, this will trigger a failover, but only if pre-emption mode is enabled.)
AX1(config)#ha preemption-enable
P e r f o r m a n c e
b y
579 of 950
The following command configures the floating IP address for the real servers to use as their default gateway address.
AX1(config)#floating-ip 172.168.10.1 ha-group 1
The following commands configure a health method, real servers, a server group, and a VIP for an HTTP service.
AX1(config)#health monitor myHttp interval 10 retry 2 timeout 3 AX1(config-health:monitor)#method http url HEAD /index.html AX1(config-health:monitor)#exit AX1(config)#slb server s1 172.168.10.30 AX1(config-real server)#port 80 tcp AX1(config-real server-node port)#health-check myHttp AX1(config-real server-node port)#exit AX1(config-real server)#exit AX1(config)#slb server s2 172.168.10.31 AX1(config-real server)#port 80 tcp AX1(config-real server-node port)#health-check myHttp AX1(config-real server-node port)#exit AX1(config-real server)#exit AX1(config)#slb service-group g80 tcp AX1(config-slb service group)#member s1:80 AX1(config-slb service group)#member s2:80 AX1(config-slb service group)#exit AX1(config)#slb virtual-server v1 172.168.10.80 AX1(config-slb virtual server)#ha-group 1 AX1(config-slb virtual server)#port 80 tcp AX1(config-slb virtual server-slb virtua...)#service-group g80 AX1(config-slb virtual server-slb virtua...)#ha-conn-mirror
580 of 950
P e r f o r m a n c e
b y
D e s i g n
the Active AX. (On the Active AX, the session synchronization IP address is the address of the Standby AX.)
AX2(config)#ha id 2 AX2(config)#ha group 1 priority 1 AX2(config)#ha interface ethernet 1 router-interface no-heartbeat AX2(config)#ha interface ethernet 2 router-interface no-heartbeat AX2(config)#ha interface ethernet 3 server-interface AX2(config)#ha interface ethernet 4 server-interface AX2(config)#ha interface ethernet 5 AX2(config)#ha inline-mode preferred-port 5 AX2(config)#ha restart-port-list ethernet 1 to 2 AX2(config)#ha preemption-enable AX2(config)#ha conn-mirror ip 172.168.10.2 AX2(config)#floating-ip 172.168.10.1 ha-group 1 AX2(config)#health monitor myHttp interval 10 retry 2 timeout 3 AX2(config-health:monitor)#method http url HEAD /index.html AX2(config-health:monitor)#exit AX2(config)#slb server s1 172.168.10.30 AX2(config-real server)#port 80 tcp AX2(config-real server-node port)#health-check myHttp AX2(config-real server-node port)#exit AX2(config-real server)#exit AX2(config)#slb server s2 172.168.10.31 AX2(config-real server)#port 80 tcp AX2(config-real server-node port)#health-check myHttp AX2(config-real server-node port)#exit AX2(config-real server)#exit AX2(config)#slb service-group g80 tcp AX2(config-slb service group)#member s1:80 AX2(config-slb service group)#member s2:80 AX2(config-slb service group)#exit
P e r f o r m a n c e
b y
581 of 950
582 of 950
P e r f o r m a n c e
b y
D e s i g n
583 of 950
The following commands configure the HA ID and set the HA priority. HA priority is associated with an HA group. Later in the configuration, the VIP is assigned to this HA group.
AX1(config)#ha id 1 AX1(config)#ha group 1 priority 255
The following commands configure the HA interfaces. Each interface that is connected to a server, a router, or the other AX can be configured as an HA interface. (Make sure to add the dedicated HA link between the AX devices as one of the HA interfaces.)
AX1(config)#ha interface ethernet 1 router-interface no-heartbeat AX1(config)#ha interface ethernet 2 router-interface no-heartbeat AX1(config)#ha interface ethernet 3 server-interface AX1(config)#ha interface ethernet 4 server-interface AX1(config)#ha interface ethernet 5
The following command enables restart of the HA ports connected to the routers, to occur if the AX transitions to Standby.
AX1(config)#ha restart-port-list ethernet 1 to 2
The following command enables HA pre-emption mode, which causes failover to occur in response to administrative changes to the HA configuration. (For example, if you change the HA priority so that the other AX has higher priority, this will trigger a failover, but only if pre-emption mode is enabled.)
AX1(config)#ha preemption-enable
The following command specifies the IP address of the other AX, to use for session synchronization.
AX1(config)#ha conn-mirror ip 172.168.10.3
584 of 950
P e r f o r m a n c e
b y
D e s i g n
The following commands configure a health method, real servers, a server group, and a VIP for an HTTP service.
AX1(config)#health monitor myHttp interval 10 retry 2 timeout 3 AX1(config-health:monitor)#method http url HEAD /index.html AX1(config-health:monitor)#exit AX1(config)#slb server s1 172.168.10.30 AX1(config-real server)#port 80 tcp AX1(config-real server-node port)#health-check myHttp AX1(config-real server-node port)#exit AX1(config-real server)#exit AX1(config)#slb server s2 172.168.10.31 AX1(config-real server)#port 80 tcp AX1(config-real server-node port)#health-check myHttp AX1(config-real server-node port)#exit AX1(config-real server)#exit AX1(config)#slb service-group g80 tcp AX1(config-slb service group)#member s1:80 AX1(config-slb service group)#member s2:80 AX1(config-slb service group)#exit AX1(config)#slb virtual-server v1 172.168.10.80 AX1(config-slb virtual server)#ha-group 1 AX1(config-slb virtual server)#port 80 tcp AX1(config-slb virtual server-slb virtua...)#service-group g80 AX1(config-slb virtual server-slb virtua...)#ha-conn-mirror
Commands on AX2 Here are the commands for implementing HA on AX2. Most of the commands are the same as those on AX1, with the following exceptions:
The IP interfaces are different. The HA ID is 2. The HA priority is 1.
The session synchronization (conn-mirror) IP address is the address of AX1. (On AX1, the session synchronization IP address is the address of AX2.)
P e r f o r m a n c e
b y
585 of 950
586 of 950
P e r f o r m a n c e
b y
D e s i g n
P e r f o r m a n c e
b y
587 of 950
Only the configuration relevant to the triggers is shown. A complete HA configuration also includes the configuration items described in the previous sections. Note: Failover based on HA interface state is also optional, and is described in other sections in this chapter.
588 of 950
P e r f o r m a n c e
b y
D e s i g n
P e r f o r m a n c e
b y
589 of 950
590 of 950
P e r f o r m a n c e
b y
D e s i g n
redistributed routes.) The distance num option specifies the metric value (cost) of the route.
P e r f o r m a n c e
b y
591 of 950
Note:
The lowest possible HA priority value is 1. Deleting 255 sets the HA priority value to 1, regardless of the original priority value. The following command configures HA route awareness for a dynamic route to subnet 10.10.10.x with route cost 10. If the IP route table does not have a dynamic route to this destination with the specified cost, 10 is subtracted from the HA priority value for each HA group.
The following commands configure HA route awareness for an IPv6 route to 3000::/64. Based on the combination of these commands, if the IPv6 route table does not contain any routes to the destination, 105 is subtracted from the HA priority of each HA group. If the IPv6 route table does contain a static route to the destination, but the next-hop gateway is not 2001::1, the AX device subtracts only 5 from the HA priority of each HA group.
AX(config)#ha check route 3000::/64 priority-cost 100 AX(config)#ha check route 3000::/64 priority-cost 5 protocol static gateway 2001::1
592 of 950
P e r f o r m a n c e
b y
D e s i g n
593 of 950
The following command enables HA pre-emption. HA pre-emption must be enabled in order for failover to occur based on HA group priority changes.
AX-1(config)#ha preemption-enable
The following commands assign virtual server VIP2 to HA group 6 and enable VIP-based failover for the virtual server. (For simplicity, this example does not show configuration of the real servers or non-HA virtual server options.)
AX-1(config)#slb virtual VIP2 192.168.10.22 AX-1(config-slb virtual server)#ha-group 6 AX-1(config-slb virtual server)#ha-dynamic 10
The following commands configure the HA settings on AX-2. The priority for HA group 6 is set to 80. The server weight for HA group 6 on VIP2 is set to 10, the same weight value set on AX-1. Up to 2 real servers bound to VIP2 can become unavailable on AX-1 without triggering a failover. However, if a third real server becomes unavailable, the priority of HA group 6 is reduced to 70, which is lower than the priority value set on AX-2 for the group. In this case, a failover does occur for VIP2.
AX-2(config)#ha group 6 priority 80 AX-2(config)#ha preemption-enable AX-2(config)#floating-ip 192.168.10.1 ha-group 6 AX-2(config)#slb virtual VIP2 192.168.10.22 AX-2(config-slb virtual server)#ha-group 6 AX-2(config-slb virtual server)#ha-dynamic 10
594 of 950
P e r f o r m a n c e
b y
D e s i g n
supported for Layer 4 sessions. Note: HA session synchronization is required for persistent sessions (source-IP persistence, and so on), and is therefore automatically enabled for these sessions by the AX device. Persistent sessions are synchronized even if session synchronization is disabled in the configuration.
P e r f o r m a n c e
b y
595 of 950
The following commands access the configuration level for a virtual port and enable connection mirroring on the port:
596 of 950
P e r f o r m a n c e
b y
D e s i g n
OSPF Awareness of HA
The AX device uses HA-aware VIPs, floating IPs, IP NAT pools, and IP range lists with route redistribution to achieve HA-aware dynamic routing. However, by default, the OSPF protocol on the AX device is not aware of the HA state (Active or Standby) of the AX device. Consequently, following HA failover of an AX device, other OSPF routers might continue forwarding traffic to the Standby AX device (the former Active AX device), instead of the new Active AX device. Note: In Layer 3 inline mode, all VLANs on the AX device participate in OSPF routing by default. (See OSPF Support on Standby AX in Layer 3 Inline Mode on page 598.) You can assign an additional cost to an AX devices OSPF interfaces when the HA status for any group on the device is Standby. If failover of one or more HA groups from Active to Standby occurs, the AX device does the following:
Updates the cost of all its OSPF interfaces Sends Link-State Advertisement (LSA) updates to its OSPF neighbors
advertising the interface cost change After an OSPF neighbor receives the LSA update, the neighbor updates its OSPF link-state database with the increased cost of the links. The increased cost biases route selection away from paths that use the Standby AX device. Similarly, if a failover results in HA status Active for all HA groups on an AX device, the device removes the additional cost added for Standby status from all its OSPF interfaces and sends LSA updates to advertise the change. The reduced cost biases route selection toward paths that use the Active AX device and away from paths that use the Standby AX device.
P e r f o r m a n c e
b y
597 of 950
fig
Running-config, to the other AX devices running-config or startup-con-
fig)
598 of 950
P e r f o r m a n c e
b y
D e s i g n
Requirements Session synchronization (connection mirroring) is required for config sync. Config sync uses the session synchronization link. To enable session synchronization, see Enabling Session Synchronization on page 595. SSH management access must be enabled on both ends of the link. (See Securing Admin Access by Ethernet on page 677.)
Note:
For IP NAT configuration items to be backed up, you must specify an HA group ID as part of the NAT configuration.
P e r f o r m a n c e
b y
599 of 950
Reload of the Target AX Device In certain cases, the target AX device is automatically reloaded, but in other cases, reload is either optional or is not allowed. Table 15 lists the cases in which reload is automatic, optional, or not allowed. TABLE 15 Reload of Target AX Device After Config-Sync
Admin Role Root or Super User (Read-Write) Status of Target AX1 Standby Active Target Config startup-config running-config startup-config running-config startup-config running-config startup-config running-config Reload? Automatic Automatic Optional2 Not reloaded by default Automatic Not Allowed Not Allowed Not Allowed Not Allowed
Partition Write
Standby Active
1. Active means the AX device is currently the active device for at least one HA group. 2. If the target AX device is not reloaded, the GUI Save button on the Standby AX device does not blink to indicate unsaved changes. It is recommended to save the configuration if required to keep the running-config before the next reboot.
600 of 950
P e r f o r m a n c e
b y
D e s i g n
P e r f o r m a n c e
b y
601 of 950
Performing HA Synchronization
To synchronize the AX devices in an HA configuration, use the CLI commands described below.
602 of 950
603 of 950
updated To help reconvergence occur faster, you can create a real server configuration for each router, and use an ICMP health monitor for checking the health of the gateways. The health checks keep the ARP entries for the gateway routers active, which can help to reduce reconvergence time considerably. In a typical SLB configuration that includes a client-side router and a server-side router, configure a real server for each router. To configure health checking of the gateway routers: 1. (Optional) Configure an ICMP health monitor. For Layer 3 inline deployments, it is recommended to use very short values (1 second) for the interval and timeout. (For examples of Layer 3 inline HA deployments for TCS, see Transparent Cache Switching on page 295.) 2. Create an SLB real server configuration for each gateway. If you plan to use a custom ICMP health monitor (previous step), apply the health monitor to the server. Perform these steps on both AX devices in the HA pair. Note: The AX device also has an HA gateway health checking feature. This feature also uses ICMP health monitors. However, if you use the HA gateway health checking feature, HA failover is triggered if a gateway fails a health check. If you use real server configurations instead, as shown in the following examples, HA failover is not triggered by a failed health check.
604 of 950
P e r f o r m a n c e
b y
D e s i g n
To use the default ICMP health monitor instead, the configuration is even simpler:
AX(config)#slb server gateway-upstream 192.168.10.1 AX(config-real server)#exit AX(config)#slb server gateway-downstream 10.10.10.1 AX(config-real server)#exit
P e r f o r m a n c e
b y
605 of 950
606 of 950
P e r f o r m a n c e
b y
D e s i g n
P e r f o r m a n c e
b y
607 of 950
SLB NAT
AX Series devices can perform source and destination NAT on client-VIP SLB traffic.
608 of 950
P e r f o r m a n c e
b y
D e s i g n
lates the destination IP address from the virtual server IP address (VIP) to the IP address of the real server.
The AX device reverses the translation before sending the server reply
to the client. The source IP address is translated from the real servers IP address to the VIP address. The default SLB NAT behavior does not translate the clients IP address.
servers are in a different subnet than the VIP, source NAT ensures that reply traffic from a server will pass back through the AX device. (See Source NAT for Servers in Other Subnets on page 614.)
in all NAT pools. For example, you can configure 1 NAT pool containing 500 NAT addresses, or 100 NAT pools containing 5 addresses each, and so on.
NAT pools Maximum of 100 NAT pools supported. NAT pool groups Maximum of 50 NAT pool groups supported. Each
Connection Reuse
Connection reuse enables you to reuse TCP connections between the AX device and real servers for multiple client sessions. When you enable this feature, the AX device does not tear down a TCP connection with the real server each time a client ends its session. Instead, the AX device leaves the TCP connection established, and reuses the connection for the next client that uses the real server.
P e r f o r m a n c e
b y
609 of 950
610 of 950
P e r f o r m a n c e
b y
D e s i g n
P e r f o r m a n c e
b y
611 of 950
To configure an IPv6 pool: ipv6 nat pool pool-name start-ipv6-addr end-ipv6-addr netmask mask-length [gateway ipaddr] [ha-group-id group-id]
To configure a pool group, configure a separate IP pool for each contiguous set of addresses, then use the following command to add the pools to a pool group: ip nat pool-group pool-group-name {pool-name ...} 2. To configure a connection reuse template, enter the following command at the global configuration level to create the template: slb template connection-reuse template-name
612 of 950
P e r f o r m a n c e
b y
D e s i g n
pool group for all source addresses, use the following command at the configuration level for the virtual port: source-nat pool {pool-name | pool-group-name} To enable policy-based source NAT and use separate pools based on source IP address, use the following command at the configuration level for the port. This command binds an ACL to its pool: access-list acl-num source-nat-pool pool-name Note: If you do not specify a NAT pool with this command, the ACL is used only to filter the traffic. 4. Add the connection reuse template to the virtual port, use the following command at the configuration level for the virtual port: template connection-reuse template-name CLI Example The following commands configure standard ACLs that match on different client addresses:
AX(config)#access-list 30 permit ip 192.168.1.1 AX(config)#access-list 50 permit ip 192.168.20.69
P e r f o r m a n c e
b y
613 of 950
The following commands configure policy-based source NAT, by binding ACLs to NAT pools on the virtual port.
AX(config)#slb virtual-server vs1 10.10.10.100 AX(config-slb virtual server)#port 80 tcp AX(config-slb virtual server-slb virtua...)#access-list 30 source-nat-pool pool1 AX(config-slb virtual server-slb virtua...)#access-list 50 source-nat-pool pool2
group to the virtual port. This option is applicable if all the real servers are in the same subnet.
Use sets of ACL-pool pairs, one for each real server subnet. You must
use this method if the real servers are in multiple subnets. This section describes how to use this method. For the real server to be able to send replies back through the AX device, use an extended ACL. The source IP address must match on the client address. The destination IP address must match on the real server address. The action must be permit. The ACL should not match on the virtual IP address (unless the virtual IP address is in the same subnet as the real servers, in which case source NAT is probably not required). Figure 161 on page 615 shows an example.
614 of 950
P e r f o r m a n c e
b y
D e s i g n
In this example, a service group has real servers that are located in two different subnets. The VIP is not in either of the subnets. To ensure that reply traffic from a server will pass back through the AX device, the AX device uses IP source NAT. To implement IP source NAT, two pairs of ACL and IP address pool are bound to the virtual port. Each ACL-pool pair contains the following:
An extended ACL whose source IP address matches on client addresses
615 of 950
The following commands configure the IP address pools. Each pool contains addresses in one of the real server subnets.
AX(config)#ip nat pool pool1 10.10.10.100 10.10.10.101 netmask /24 AX(config)#ip nat pool pool2 10.10.20.100 10.10.20.101 netmask /24
The following commands bind the ACLs and IP address pools to a virtual port on the VIP:
AX(config)#slb virtual-server vip1 192.168.1.100 AX(config-slb virtual server)#port 80 tcp AX(config-slb virtual server-slb virtua...)#access-list 100 source-nat-pool pool1 AX(config-slb virtual server-slb virtua...)#access-list 110 source-nat-pool pool2
616 of 950
P e r f o r m a n c e
b y
D e s i g n
Note:
P e r f o r m a n c e
b y
617 of 950
618 of 950
P e r f o r m a n c e
b y
D e s i g n
IP Source NAT
Independently of SLB NAT, you can configure traditional, Layer 3 IP source NAT. IP source NAT translates internal host addresses into routable addresses before sending the hosts traffic to the Internet. When reply traffic is received, the AX device then retranslates addresses back into internal addresses before sending the reply to the client. You can configure dynamic or static IP source NAT:
Dynamic source IP NAT Internal addresses are dynamically translated
external addresses. Configuration Elements for Dynamic NAT Dynamic NAT uses the following configuration elements:
Access Control List (ACL) to identify the inside host addresses to be
translated
Pool to identify a contiguous range of external addresses into which to
619 of 950
non-contiguous range of addresses, you can configure separate pools, then combine them in a pool group and map the ACL to the pool group. The addresses within an individual pool still must be contiguous, but you can have gaps between the ending address in one pool and the starting address in another pool. You also can use pools that are in different subnets. A pool group can contain up to 5 pools. Pool group members must belong to the same protocol family (IPv4 or IPv6) and must use the same HA ID. A pool can be a member of multiple pool groups. Up to 50 NAT pool groups are supported. If a pool group contains pools in different subnets, the AX device selects the pool that matches the outbound subnet. For example, of there are two routes to a given destination, in different subnets, and the pool group has a pool for one of those subnets, the AX selects the pool that is in the subnet for the outbound route. The AX device searches the pools beginning with the first one added to the group, and selects the first match. If none of the pools are in the destination subnet, the AX uses the first pool that has available addresses.
Inside NAT setting on the interface connected to the inside host. Outside NAT setting on the interface connected to the Internet. Inside
host addresses are translated into external addresses from a pool before the host traffic is sent to the Internet. Note: The AX device enables you to specify the default gateway for an IP source NAT pool to use. However, the pools default gateway can be used only if the data route table already has either a default route or a direct route to the destination of the NAT traffic. In this case, the pools default gateway will override the route, for NAT traffic that uses the pool. If the data route table does not have a default route or a direct route to the NAT traffic destination, the pools default gateway can not be used. In this case, the NAT traffic can not reach its destination. Configuration Elements for Static NAT Static NAT uses the following configuration elements:
Static mappings or an address range list A static mapping is a one-to-
one mapping of an inside address to an external address. An address range list is a contiguous range of inside addresses and external addresses to translate them into.
Inside NAT setting on the interface connected to the inside host.
620 of 950
P e r f o r m a n c e
b y
D e s i g n
host addresses are translated into external addresses from a static mapping or a range list before the host traffic is sent to the Internet.
P e r f o r m a n c e
b y
621 of 950
622 of 950
P e r f o r m a n c e
b y
D e s i g n
FIGURE 163
FIGURE 164
P e r f o r m a n c e
b y
623 of 950
624 of 950
P e r f o r m a n c e
b y
D e s i g n
To configure an IPv6 pool: ipv6 nat pool pool-name start-ipv6-addr end-ipv6-addr netmask mask-length [gateway ipaddr] [ha-group-id group-id]
To configure a pool group: ip nat pool-group pool-group-name {pool-name ...} 3. To enable inside source NAT and map the ACL to the pool, use the following command: ip nat inside source list acl-name pool {pool-name | pool-group-name}
P e r f o r m a n c e
b y
625 of 950
CLI EXAMPLE
The following commands configure an ACL to specify the internal hosts to be NATted. In this example, all hosts in the 10.10.10.x subnet are to receive NAT service for traffic to the Internet.
AX(config)#access-list 1 permit 10.10.10.0 0.0.0.255
The following command configures an IPv4 pool of external addresses to use for the NAT translations. In this example, 10.10.10.x addresses will be translated into 192.168.1.1 or 192.168.1.2:
AX(config)#ip nat pool pool1 192.168.1.1 192.168.1.2 netmask /24
The following command enables inside source NAT and associates the ACL with the pool:
AX(config)#ip nat inside source list 1 pool pool1
The following commands enable inside source NAT on the interface connected to the internal hosts:
AX(config)#interface ethernet 4 AX(config-if:ethernet4)#ip nat inside
The following commands enable source NAT on the interface connected to the external hosts:
AX(config-if:ethernet4)#interface ethernet 6 AX(config-if:ethernet6)#ip nat outside
626 of 950
P e r f o r m a n c e
b y
D e s i g n
P e r f o r m a n c e
b y
627 of 950
628 of 950
P e r f o r m a n c e
b y
D e s i g n
CLI EXAMPLE
The following commands enable static NAT, configure an IP address range named nat-list-1 that maps up to 100 local addresses starting from 10.10.10.97 to Internet addresses starting from 192.168.22.50, set Ethernet interface 2 as the inside NAT interface, and set Ethernet interface 4 as the outside NAT interface.
AX(config)#ip nat range-list nat-list-1 10.10.10.97 /16 192.168.22.50 /16 count 100 AX(config)#interface ethernet 2 AX(config-if:ethernet2)#ip nat inside AX(config-if:ethernet2)#exit AX(config)#interface ethernet 4 AX(config-if:ethernet4)#ip nat outside
P e r f o r m a n c e
b y
629 of 950
The AX device is deployed between PPTP clients and the VPN server (VPN Server using PPTP). The AX interface connected to the PPTP clients is enabled for inside source NAT. The AX interface connected to the VPN server is enabled for outside source NAT. Each client runs a PPTP Network Server (PNS). To set up a VPN session, the PNS sends an Outgoing-Call-Request to the PPTP Access Concentrator (PAC), which is the VPN server. The destination TCP port is the PPTP port (1723 by default). The request includes a Call ID that the PNS chooses. Because multiple clients may share the same NAT address, the AX device must ensure that clients do not share the same Call ID as well. Therefore, the AX device assigns to each client a NAT Call ID (analogous to a NAT source port for TCP) and modifies the Outgoing-Call-Request to use the NAT Call ID instead. The PAC replies to the Outgoing-Call-Request with a Call ID of its own. This is like a TCP destination port. The AX device does not change the
630 of 950
P e r f o r m a n c e
b y
D e s i g n
addresses into which to translate client addresses. Configure an inside source NAT list, using the ACL and pool. Enable inside IP source NAT on the AX interface connected to the VPN clients. Enable outside IP source NAT on the AX interface connected to the VPN server.
If NAT ALG support for PPTP is disabled, enable it. (The feature is
enabled by default.)
P e r f o r m a n c e
b y
631 of 950
Note:
632 of 950
P e r f o r m a n c e
b y
D e s i g n
The following commands specify the inside NAT interface and the outside NAT interface.
AX(config)#interface ethernet 1 AX(config-if:ethernet1)#ip address 10.2.2.254 255.255.255.0 AX(config-if:ethernet1)#ip nat inside AX(config-if:ethernet1)#interface ethernet 2 AX(config-if:ethernet2)#ip address 10.3.3.254 255.255.255.0 AX(config-if:ethernet2)#ip nat outside
10.3.3.2:1723
10.3.3.2:1723
192.168.1.100:2109
This example shows the GRE session and the TCP session over which the GRE session is transported. For the GRE session, the number following each IP address is the PPTP Call ID. For the TCP session, the number is the TCP protocol port.
P e r f o r m a n c e
b y
633 of 950
634 of 950
P e r f o r m a n c e
b y
D e s i g n
635 of 950
external DNS server, must pass through the IP NAT outside interface.
If an ACL is configured on the interface that will receive the DNS
responses (the IP NAT outside interface), the ACL must include a permit rule that allows traffic from the DNS server. Otherwise, the traffic will be denied by the implicit (non-visible) deny any any rule at the end of the ACL.
636 of 950
P e r f o r m a n c e
b y
D e s i g n
In this configuration, the AX device will initiate health checks using the last IP address in the pool as the source IP address. In this example, the AX device will use IP address 173.168.10.25. In addition, the AX device will only respond to control traffic directed to 173.168.10.25 from the 173.168.10.0/24 subnet.
NAT Range List Requires AX Interface or Route Within the Global Subnet
In an IP source NAT configuration, return UDP or ICMP traffic may not be able to reach the AX device. This can occur under the following circumstances:
IP source NAT is configured using a NAT range list. The AX device does not have any data interfaces or routes that contain
an address within the subnet of the range list's global address(es). To work around this issue, configure an IP interface that is within the NAT range lists global subnet. You can configure the address on any active data interface on the AX device. This issue does not affect NATted traffic other than ICMP or UDP traffic, or use of an ACL with a NAT pool.
IP NAT in HA Configurations
If you are using IP source NAT or full NAT in an HA configuration, make sure to add the NAT pool or range list to an HA group. Doing so allows a newly Active AX device to properly continue management of NAT resources following a failover.
P e r f o r m a n c e D e s i g n Document No.: D-030-01-00-0006 - Ver. 2.4.3 6/21/2010 b y
637 of 950
/mask-length
638 of 950
P e r f o r m a n c e
b y
D e s i g n
Note:
LSN is supported only on the 64-bit ACOS models: AX 2500, AX 2600, AX 3000, AX 5100, and AX 5200. The current release provides Application Layer Gateway (ALG) support for FTP only. LSN requires the new-path processing option. This option was enabled by default in AX Release 2.5.0 (the Beta release for LSN) but is disabled by default in the current release. New-path processing is required for LSN and applies only to LSN. The option does not apply to any other features. (To enable the option, see step 7 in Configuring Large-Scale NAT on page 655.)
Note:
Note:
Overview
LSN provides robust NAT support for network carriers (also called Internet Service Providers or ISPs). Carriers can use LSN to provide NAT service for multiple enterprises and residential clients. Figure 167 shows an example of a carrier using LSN to provide NAT to residential clients.
P e r f o r m a n c e
b y
639 of 950
The carriers clients are on an internal subnet, 5.5.5.x/24, in the carriers network. When a client sends a request, the AX device running LSN creates a mapping of the clients internal address and protocol port to a public address and protocol port. In this example, LSN creates the following mapping:
Client Internal Address 5.5.5.1:65535 Client Public Address 192.168.1.1:65535
640 of 950
P e r f o r m a n c e
b y
D e s i g n
P e r f o r m a n c e
b y
641 of 950
observes the FIN messages exchanged by the two end points of the session. If the AX device does not observe the FIN exchange but the session is idle, the mapping is removed when the session ages out.
For a UDP session, the data session is removed when the session ages
out.
For an ICMP session, the data session ends when the ICMP reply is
received, or when the session ages out. NAT session aging is individually configurable for TCP, UDP, and ICMP, using the ip nat translation command.
tcp-timeout Configurable to 60-1500 seconds. The default is 300 sec-
onds.
udp-timeout Configurable to 60-1500 seconds. The default is 300
seconds.
icmp-timeout Configurable to 60-1500 seconds, or fast. The fast
option uses the SLB maximum session life (MSL), which is 2 seconds by default. The default is fast. Optionally, static mappings can be configured. A static mapping never ages out. NAT Mapping Removal and Full-Cone Behavior When a NAT data session is removed, removal of the NAT mapping used by the data session depends on whether full-cone behavior is present:
If full-cone behavior is not present, the NAT mapping is removed when
all the data session that use the mapping a removed. For example, if a client uses source port 50000 to connect to two different destinations, the same NAT mapping is used for both data sessions. (This is endpointindependent mapping.) The NAT mapping is not removed until the data sessions with both destinations have been removed. LSN maintains the NAT mapping for a full-cone session for a period of time, the STUN timeout, after the last data session ends. The STUN timeout is 2 minutes by default and is configurable. (See STUN Timeout on page 659.)
642 of 950
P e r f o r m a n c e
b y
D e s i g n
allows for easy development of new user applications. Traditional NAT implementations vary considerably, and may not work for all applications.
Fairness in resource sharing LSN provides user guarantees and protec-
tion.
LSN works for both client-server (traditional) and client-client (P2P)
applications. The benefits LSN provides that traditional NAT can not provide are described in this section and in more detail in Benefits of LSN on page 645. Traditional NAT works for client-to-server applications, wherein a client opens a connection to a server and requests data, and the server responds back to the client. However, traditional NAT is often inadequate for contemporary applications such as peer-to-peer (P2P) file-sharing, instant messengers (IM), and Voice-over-IP (VoIP). To provide NAT for these types of applications, LSN is required. Figure 169 shows an example of P2P file sharing among LSN clients and other devices.
P e r f o r m a n c e
b y
643 of 950
In this example, multiple clients are registered with a P2P file-sharing tracker as sharers of file example.torrent. All clients are registered on the file-sharing tracker by their public IP addresses. LSN allows each of the internal clients to use the same public IP address, with different Layer 4 source port numbers. LSN also allows the clients in the internal subnet to share the file among themselves, as well as with other clients who are outside the internal network.
644 of 950
P e r f o r m a n c e
b y
D e s i g n
Benefits of LSN
LSN provides the following benefits not provided by traditional NAT:
Sticky NAT Application transparency through full-cone NAT to support peer-to-peer
(P2P) applications
Hairpinning support Configurable user quotas to ensure fair allocation of NAT mappings Static port reservation
Sticky NAT
Once an internal user uses a NAT IP, the user always uses the same NAT IP for future connections. If all user sessions are cleared, then a different NAT IP may be assigned. Some applications that open multiple sessions to the same or multiple servers often do not work well without sticky NAT.
Full-Cone NAT
Traditional NAT works well for client-to-server applications, wherein a client opens a connection to a server and requests data, and the server responds back to the client. However, traditional NAT is inadequate to support clientto-client applications, such as the following:
Peer-to-peer (P2P) file-sharing applications Instant messengers (IM) Voice-over-IP (VoIP)
To overcome the shortcomings of traditional NAT, LSN implements fullcone NAT. Full-cone NAT, also known as one-to-one NAT, has two specific behaviors:
Endpoint-Independent Mapping (See Figure 168 on page 641.) After
LSN maps an internal clients source IP address and Layer 4 (TCP or UDP) port to an external IP address and port, the same mapping is used for all traffic from that internal source IP and port, regardless of the destination. For ping, the ICMP query identifier is treated the same way as a UDP or TCP port. Internal-IP-and-L4-Port = External-IP-and-L4-Port, for all destinations Internal-IP-and-ICMP-query-ID = External-IP-and-ICMP-queryID, for all destinations
P e r f o r m a n c e D e s i g n Document No.: D-030-01-00-0006 - Ver. 2.4.3 6/21/2010 b y
645 of 950
traffic from any source to a given mapped client, LSN always allows the traffic to be forwarded to the internal client regardless of the endpoint. These techniques provide consistent NAT mapping behavior, enabling client-to-client applications such as P2P, client-to-server applications, and NAT traversal techniques such as STUN, to work correctly. Note: Endpoint-Independent Filtering is different from security filtering such as provided by ACLs, black/white lists, and so on. Endpoint-Independent Filtering simply means that LSN does not cause an internal client to be unreachable by certain sources, by using different mappings based on destination. The AX devices security features can still be used to control access to clients.
646 of 950
P e r f o r m a n c e
b y
D e s i g n
Hairpinning
Hairpinning allows inside clients to communicate with one another using their outside addresses. This feature is useful for applications that require global addresses. Figure 170 shows an example. FIGURE 170 LSN NAT Hairpinning
User Quotas
LSN user quotas limit the number of NAT port mappings allowed for individual internal IP addresses. For example, you can limit each inside IP address to a maximum of 100 TCP NAT ports. Once a client reaches the quota, the client is not allowed to open additional TCP sessions. You can configure separate quotas for each of the following protocols, on a global or individual LSN Limit-ID (LID) basis:
P e r f o r m a n c e
b y
647 of 950
When an internal user first makes a NAT mapping, it will be assigned to a NAT IP as part of sticky NAT. Before choosing a NAT IP for a particular internal user, LSN checks to ensure there are enough ports free on that NAT IP to satisfy the user quota. This guarantees that internal users will be able to use as many ports as possible. For example, if the TCP user quota is 100 ports, the user will only be assigned to the NAT IP if it has at least 100 free NAT ports. Once the assignment is made, LSN reserves 100 ports on that NAT IP. For example, if a certain class of user has a TCP user-quota of 100, and LSN assume there are 64,000 ports on a NAT IP, then 640 users of that type can be mapped to that NAT IP. In some situations, you might want to relax the user-quota requirement if users are not expected to use their entire user-quota. In this case, you can specify a reserve value for each user quota. For example, you can configure a TCP user-quota of 100 with a reserve value of 50. For the above calculation, LSN only checks that the NAT IP has 50 free NAT ports instead of the full 100. In that case, there can be twice as many (1280) users assigned to that NAT IP. How the Reserve Value Affects NAT IP Selection If the inside client is not yet assigned to a NAT IP address, LSN selects an available NAT IP address. The NAT IP address must meet the following requirements in order to be used for the client:
The TCP port reserve on the NAT IP address must contain enough
free ports on the NAT IP address. Note: There is a difference between available reserve ports and free ports. It is possible to allocate more than the reserve value. However, it is not possible to allocate more than the user-quota value.
648 of 950
P e r f o r m a n c e
b y
D e s i g n
In this configuration, a new inside client can be assigned to a NAT IP address only if the address has at least 100 unreserved UDP ports and 200 unreserved TCP ports. In addition, the NAT IP address must have at least 100 free UDP ports and 200 free TCP ports. Extended User Quota for Always-Available Services By default, once a client reaches their quota for a protocol, no new translations for that protocol are allowed. To ensure that ports are available for essential services, you can configure an extended quota for the protocol ports used by those essential services. For example, to ensure that email service remains available, you can configure an extended quota for TCP port 25, the standard port used by Simple Mail Transfer Protocol (SMTP). Extended quotas can be configured on individual LSN LIDs, for individual destination ports. Maximum User Per IP By default, there is no limit to the number of internal addresses that can be mapped to a single public address at the same time. You can specify 1-65535 as the limit.
P e r f o r m a n c e
b y
649 of 950
LSN Logging
The AX device generates logs for LSN operational events and for LSN traffic.
Warning
Notice
LSN: ICMP user-quota exceeded on pool... LSN: UDP user-quota exceeded on pool... LSN: TCP user-quota exceeded on pool... LSN: UDP extended user-quota exceeded on pool... LSN: TCP extended user-quota exceeded on pool...
This log indicates that a current NAT IP user with an external IP address from pool2 could not get a new NAT port session, because no ports were available. The log indicates 4146 occurrences of the same event. LSN events are logged to the AX devices local log buffer based on the log settings for the system.
650 of 950
P e r f o r m a n c e
b y
D e s i g n
sessions
NAT port mapping logs, to indicate creation or freeing of NAT port
mappings for ICMP, TCP, and UDP Table 18 lists the LSN traffic logs that can be generated. TABLE 18 LSN Traffic Logs
Event ICMP data session created TCP data session created UDP data session created ICMP data session deleted TCP data session deleted UDP data session deleted LSN port mapping created for ICMP Message String Format
AX_hostname NAT-ICMP-C: fwd_src_ip:fwd_src_port<-->fwd_dest_ip:fwd_dest_port, rev_src_ip:rev_src_port<-->rev_dest_ip:rev_dest_port AX_hostname NAT-TCP-C: fwd_src_ip:fwd_src_port<-->fwd_dest_ip:fwd_dest_port, rev_src_ip:rev_src_port<-->rev_dest_ip:rev_dest_port AX_hostname NAT-UDP-C: fwd_src_ip:fwd_src_port<-->fwd_dest_ip:fwd_dest_port, rev_src_ip:rev_src_port<-->rev_dest_ip:rev_dest_port AX_hostname NAT-ICMP-D: fwd_src_ip:fwd_src_port<-->fwd_dest_ip:fwd_dest_port, rev_src_ip:rev_src_port<-->rev_dest_ip:rev_dest_port AX_hostname NAT-TCP-D: fwd_src_ip:fwd_src_port<-->fwd_dest_ip:fwd_dest_port, rev_src_ip:rev_src_port<-->rev_dest_ip:rev_dest_port AX_hostname NAT-UDP-D: fwd_src_ip:fwd_src_port<-->fwd_dest_ip:fwd_dest_port, rev_src_ip:rev_src_port<-->rev_dest_ip:rev_dest_port AX_hostname NAT-ICMP-C: inside_ip:inside_port<-->nat_ip:nat_port to dest_ip:dest_port
Note: In this message and the other port mapping creation messages, the destination (to dest_ip:dest_port) is not included in the message by default. You can enable the destination to be included when you configure LSN external logging. LSN port mapping created for TCP LSN port mapping created for UDP LSN port mapping for ICMP freed LSN port mapping for TCP freed LSN port mapping for UDP freed
AX_hostname NAT-TCP-C: inside_ip:inside_port<-->nat_ip:nat_port to dest_ip:dest_port AX_hostname NAT-UDP-C: inside_ip:inside_port<-->nat_ip:nat_port to dest_ip:dest_port AX_hostname NAT-ICMP-F: inside_ip:inside_port<-->nat_ip:nat_port to dest_ip:dest_port AX_hostname NAT-TCP-F: inside_ip:inside_port<-->nat_ip:nat_port to dest_ip:dest_port AX_hostname NAT-UDP-F: inside_ip:inside_port<-->nat_ip:nat_port to dest_ip:dest_port
P e r f o r m a n c e
b y
651 of 950
The following logs indicate the creation and freeing of a port mapping for UDP.
AX5200 NAT-UDP-C: 10.10.10.100:63226 -> 172.7.7.25:6226 to 172.7.7.100:5300 AX5200 NAT-UDP-F: 10.10.10.100:63226 -> 172.7.7.25:6226
Remote Logging LSN traffic logs can be sent only to external log servers. LSN traffic logs are not sent to the AX devices local log buffer. You can use a group of external log servers. The AX device uses a hash value based on the client IP address to select an external log server, and always sends logs for that client to the same server. (For configuration information, see Configuring External Logging for LSN Traffic Logs on page 660.) Note: External LSN logging applies only to LSN traffic logs, not to LSN operational event logs.
652 of 950
P e r f o r m a n c e
b y
D e s i g n
This limit is configurable. To display the current and configurable values, use the show system resource-usage command. Here is an example on model AX 5200:
AX5200(config)#show system resource-usage Resource l4-session-count nat-pool-addr-count real-server-count real-port-count ... Current 33554432 10000 1024 2048 Default 33554432 2000 1024 2048 Minimum 8388608 500 512 512 Maximum 134217728 10000 16384 32768 --------------------------------------------------------------------------
The Current column shows the maximum number of LSN pool addresses currently allowed on the system. The default column shows the default maximum allowed. In this example, the maximum has been increased by an administrator, to the highest allowed amount, 10000. To change the maximum number of LSN pool addresses allowed on the system, use the following command at the global configuration level of the CLI: [no] system maximum resource-usage nat-pool-addr-count
The maximum value can be any value in the range between the values in the Minimum and Maximum columns in the show system resource-usage output.
P e r f o r m a n c e
b y
653 of 950
An inside user creates 5 non-port-80 sessions followed by 10 port-80 sessions. In this case:
The first 5 port-80 sessions that finish will always decrement the
Dynamic Class-List Changes Class-list changes do not affect LSN sessions that are already in effect when the class list changes occur. Example: Some data sessions, user-quota sessions, or full-cone sessions are created for inside user X. Then, the class list is changed in a way that affects X. The sessions for X will stay alive as long as there is traffic matching them. LSN IP Selection The method used for selection of an IP address within an LSN pool does not apply to pool selection within a pool group. Selection of a pool from within a pool group is always random. After a pool is randomly selected, the configured IP selection method is used to select an IP address from the pool.
654 of 950
P e r f o r m a n c e
b y
D e s i g n
655 of 950
Configure a LID
Use the following commands: [no] lsn-lid num Enter this command at the global configuration level of the CLI. The num specifies the LID number and can be 1-31, for a maximum of 31 LIDs. This command changes the CLI to the configuration level for the LID, where the following LID-related commands are available:
656 of 950
P e r f o r m a n c e
b y
D e s i g n
P e r f o r m a n c e
b y
657 of 950
mask specifies the network mask. To configure a wildcard IP address, specify 0.0.0.0 /0. The wildcard address matches on all addresses that do not match any entry in the class list.
lsn-lid num Specifies the LID. ; comment-string Contains a comment. Use a semi-colon ( ; ) in front
of the comment string. Note: The AX device discards the comment string when you save the class list. Example Class Lists Here is an example of a class list for inside subnet 5.5.5.x/24 using LID 2.
5.5.5.0 /24 lsn-lid 2
658 of 950
P e r f o r m a n c e
b y
D e s i g n
Optional Configuration
The following sections describe additional configuration options.
P e r f o r m a n c e
b y
659 of 950
660 of 950
P e r f o r m a n c e
b y
D e s i g n
[no] facility facility-name This command specifies the logging facility to use. The default is local0. For a list of available facilities, enter the following command: facility ? [no] include-destination This command includes the destination IP addresses and protocol ports in NAT port mapping logs. This option is disabled by default. Activating the LSN Logging Template To activate the LSN external logging template, use the following command at the global configuration level of the CLI: [no] ip nat lsn logging default-template template-name LSN external logging does not take effect until you use this command. Using a Different LSN Logging Template for Individual Pools The default LSN logging template is used for all LSN pools. To use a different LSN logging template for an individual pool, configure the template, then use the following command at the global configuration level of the CLI:
P e r f o r m a n c e
b y
661 of 950
ports used
least-tcp-used-strict Selects the address with the fewest TCP NAT
ports used
least-reserved-strict Selects the address with the fewest NAT ports of
ports reserved
least-reserved-tcp-strict Selects the address with the fewest TCP NAT
ports reserved
least-users Selects the address with the fewest users
The IP address selection method applies only to the IP addresses within individual pools. The method does not apply to selection of pools within a pool group. LSN randomly selects a pool from within a pool group, then uses the configured IP address selection method to select an address from within the pool. To specify the method for LSN IP address selection within a pool, use the following command at the global configuration level of the CLI: [no] ip nat lsn ip-selection method The method can be one of the options listed above. The method you specify applies to all LSN pools.
662 of 950
P e r f o r m a n c e
b y
D e s i g n
P e r f o r m a n c e
b y
663 of 950
Configuration Example
The commands in this section implement the LSN configuration shown in Figure 167 on page 640. The following command configures an LSN NAT pool:
AX(config)#ip nat pool LSN_POOL1 192.168.1.1 192.168.1.254 netmask /24 lsn
The following commands configure an LSN LID. The LID is bound to pool LSN_POOL1. Per-user quotas are configured for TCP, UDP, and ICMP. For UDP, this class of users will reserve only 100 UDP ports instead of 300. An extended quota of sessions per client is allocated for TCP port 25 (SMTP).
AX(config)#lsn-lid 5 AX(config-lsn lid)#source-nat-pool LSN_POOL1 AX(config-lsn lid)#user-quota tcp 100 AX(config-lsn lid)#user-quota udp 300 reserve 100 AX(config-lsn lid)#user-quota icmp 10 AX(config-lsn lid)#extended-user-quota tcp port 25 sessions 3 AX(config-lsn lid)#end
The following commands configure a class list to bind the internal subnet to the LID:
AX(config)#class-list list1 AX(config-class list)#5.5.5.0 /24 lsn-lid 5 AX(config-class list)#end
664 of 950
P e r f o r m a n c e
b y
D e s i g n
The following commands enable outside NAT on the interface connected to the Internet:
AX(config)#interface ethernet 2 AX(config-if:ethernet2)#ip nat outside AX(config-if:ethernet2)#exit
The following command enables new-path processing, which is required for LSN:
AX(config)#slb new-path-enable
Configuration of External Logging for LSN Traffic Logs The following commands configure external logging for LSN traffic logs:
AX5200(config)#slb server syslog1 192.168.1.100 AX5200(config-real server)#port 514 udp AX5200(config-real server)#exit AX5200(config)#slb service-group syslog udp AX5200(config-slb svc group)#member syslog1:514 AX5200(config-slb svc group)#exit AX5200(config)#ip nat template logging lsn_logging AX5200(config-nat logging)#log port-mappings AX5200(config-nat logging)#service-group syslog AX5200(config-nat logging)#exit AX5200(config)#ip nat lsn logging default-template lsn_logging
P e r f o r m a n c e
b y
665 of 950
AX#show ip nat lsn user-quota-sessions LSN User-Quota Sessions: Inside Address NAT Address ICMP UDP TCP Pool LID --------------------------------------------------------------------------------------1.1.138.159 6.6.0.158 0 3 0 pool1 3 1.0.235.149 6.6.0.134 0 3 0 pool1 3 1.0.35.54 6.6.0.188 0 2 0 pool1 3 AX#show ip nat lsn port-reservations LSN Port Reservations Inside Address Start End NAT Address Start End -------------------------------------------------------------------------------------10.0.0.1 80 1024 172.7.7.30 80 1024 AX#show ip nat lsn pool-statistics
LSN Address Pool Statistics: ---------------------------pool0 Address Users ICMP Freed Total UDP Freed Total Rsvd TCP Freed Total Rsvd -------------------------------------------------------------------------------------------------------172.7.7.20 0 0 0 0 0 0 0 0 0 0 0 0 172.7.7.21 0 0 0 0 0 0 0 0 0 0 0 0 172.7.7.22 0 0 0 0 0 0 0 0 0 0 0 0 172.7.7.23 0 0 0 0 0 0 0 0 0 0 0 0 172.7.7.24 0 0 0 0 0 0 0 0 0 0 0 0 172.7.7.25 0 0 0 0 0 0 0 0 0 0 0 0 172.7.7.26 0 0 0 0 0 0 0 0 0 0 0 0 172.7.7.27 0 0 0 0 0 0 0 0 0 0 0 0 172.7.7.28 0 0 0 0 0 0 0 0 0 3 3 0 172.7.7.29 0 0 0 0 0 0 0 0 0 0 0 0
Table 17 describes the fields in the show ip nat lsn pool-statistics output. TABLE 19 show ip nat lsn pool-statistics fields
Field Address Users ICMP Freed (ICMP) Total (ICMP) UDP Freed (UDP) Description NAT (global) IP address. Number of inside IP addresses currently using the NAT IP address. Number of ICMP identifiers currently in use. Total number of ICMP identifiers freed. Total number of ICMP identifiers allocated. ICMP column + Freed column = Total column. Number of UDP ports currently in use. Total number of UDP ports freed.
666 of 950
P e r f o r m a n c e
b y
D e s i g n
P e r f o r m a n c e
b y
667 of 950
668 of 950
P e r f o r m a n c e
b y
D e s i g n
managed access security The following sections describe these features and show how to configure them. Note: If you have not already changed the default admin password and the enable password, A10 Networks recommends that you do so now, before implementing security options described in this chapter.
Note:
You cannot change the privilege level of the admin account or disable it.
P e r f o r m a n c e
b y
669 of 950
account is not the Root account and can be deleted. This account cannot configure other admin accounts. (Only the admin account that has Root privileges can configure other admin accounts.) Read Only Admin Allows monitoring access to the system but not configuration access. In the CLI, this account can only access the User EXEC and Privileged EXEC levels, not the configuration levels. In the GUI, this account cannot modify configuration information. Partition Write Admin The admin has read-write privileges within the private partition to which the admin is assigned. The admin has read-only privileges for the shared partition. Partition Read Admin The admin has read-only privileges within the private partition to which the admin is assigned, and read-only privileges for the shared partition.
670 of 950
P e r f o r m a n c e
b y
D e s i g n
but has permission only to view service port statistics for real servers in the partition, and to disable or re-enable the real servers and their service ports. Note: The Partition roles apply to Role-Based Administration (RBA). For information about this feature, see Role-Based Administration on page 797. 8. Leave the Status enabled. 9. Click OK. 10. The new admin appears in the Admin table. FIGURE 171 Config > Admin > Admin
FIGURE 172
P e r f o r m a n c e
b y
671 of 950
672 of 950
P e r f o r m a n c e
b y
D e s i g n
CLI EXAMPLES
The following commands add admin adminuser2 with password 12345678 and read-write privilege:
AX(config)#admin adminuser2 AX(config-admin:adminuser2)#password 12345678 AX(config-admin:adminuser2)#privilege write AX(config-admin:adminuser2)#show admin UserName admin adminuser2 Status Enabled Enabled Privilege Partition Root Read/Write -------------------------------------------------------
The following commands add admin adminuser3 with password abcdefgh and read-write privilege, and restrict login access to the 10.10.10.x subnet only:
AX(config)#admin adminuser3 AX(config-admin:adminuser3)#password abcdefgh AX(config-admin:adminuser3)#privilege write AX(config-admin:adminuser3)#trusted-host 10.10.10.0 /24 AX(config-admin:adminuser3)#show admin UserName admin adminuser2 adminuser3 Status Enabled Enabled Enabled Privilege Partition Root Read/Write Read/Write -------------------------------------------------------
AX(config-admin:adminuser3)#show admin adminuser3 detail User Name ...... adminuser3 Status ...... Enabled Privilege ...... Read/Write Partition ...... Trusted Host(Netmask) ...... 10.10.10.0(255.255.255.0) Lock Status ...... No Lock Time ...... Unlock Time ...... Password Type ...... Encrypted Password ...... $1$6334ba07$CKbWL/LuSNdY12kcE.KdS0
P e r f o r m a n c e
b y
673 of 950
674 of 950
P e r f o r m a n c e
b y
D e s i g n
Duration
10 minutes
P e r f o r m a n c e
b y
675 of 950
676 of 950
P e r f o r m a n c e
b y
D e s i g n
You can enable or disable management access, for individual access types and interfaces. You also can use an Access Control List (ACL) to permit or deny management access through the interface by specific hosts or subnets. To set management access through Ethernet interfaces, use either of the following methods. Notes Regarding Use of ACLs If you use an ACL to secure management access, the action in the ACL rule that matches the management traffics source address is used to permit or deny access, regardless of other management access settings. For example, if you disable Telnet access to a data interface, but you also enable access to the interface using an ACL with permit rules, the ACL permits Telnet (and all other) access to the interface, for traffic that matches the permit rules in the ACL. If you want certain types of management access to be disabled on an interface, do not use a permit ACL to control management access to the interface. Each ACL has an implicit deny any any rule at the end. If the management traffics source address does not match a permit rule in the ACL, the implicit deny any any rule is used to deny access. On data interfaces, you can disable or enable access to specific services and also use an ACL to control access. However, on the management interface,
P e r f o r m a n c e
b y
677 of 950
(MGMT)
ve ve-num [to ve-num] A VE data interface or range of VE data inter-
faces
ethernet port-num [to port-num] An Ethernet data interface or range
of Ethernet data interfaces In the first command, the following options specify the type of management access you are configuring:
678 of 950
P e r f o r m a n c e
b y
D e s i g n
affect the AX devices ability to ping other devices. Note: Disabling ping replies from being sent by the AX device does not affect the devices ability to ping other devices. In the second command, the acl acl-id option specifies an ACL. Management access from any host address that matches the ACL is either permitted or denied, depending on the action (permit or deny) used in the ACL. CLI Examples: The following command disables HTTP access to the out-of-band management interface:
AX(config)#disable-management service http management You may lose connection by disabling the http service. Continue? [yes/no]:yes
Enabling Management Access To enable management access, use either of the following commands at the global configuration level of the CLI: enable-management service {all | ssh | telnet | http | https | snmp | ping} {management | ethernet port-num [to port-num] | ve ve-num [to ve-num]} or enable-management service acl acl-num {management | ethernet port-num [to port-num] | ve ve-num [to ve-num]} The options are the same as those for the disable-management command.
P e r f o r m a n c e
b y
679 of 950
CLI EXAMPLES
Here is an example for an AX device that has 10 Ethernet data ports. In this example, all the access settings are set to their default values.
AX#show management PING mgmt on 1 2 3 4 5 6 7 9 10 ve1 on on on on on on on on on on SSH on off off off off off off off off off off Telnet HTTP off off off off off off off off off off off on off off off off off off off off off off HTTPS on off off off off off off off off off off SNMP on off off off off off off off off off off ACL ------------------------------------------------------
680 of 950
P e r f o r m a n c e
b y
D e s i g n
Enabled 80 Enabled
P e r f o r m a n c e
b y
681 of 950
aXAPI Timeout
Number of minutes an aXAPI session can remain idle before being terminated. Once the aXAPI session is terminated, the session ID generated by the AX device for the session is no longer valid.
Note: For information about aXAPI, see the AX Series aXAPI Reference.
Note:
If you disable HTTP or HTTPS access, any sessions on the management GUI are immediately terminated.
682 of 950
P e r f o r m a n c e
b y
D e s i g n
CLI EXAMPLE
The following command disables management access on HTTP and verifies the change:
AX(config)#no web-service server AX(config)#show web-service
AX Web server: Idle time: Http port: Https port: Auto redirect: Https: Http:
P e r f o r m a n c e
b y
683 of 950
Authentication
Authentication grants or denies access based on the credentials presented by the person who is attempting access. Authentication for management access to the AX device grants or denies access based on the admin username and password. By default, when someone attempts to log into the AX device, the device checks its local admin database for the username and password entered by the person attempting to gain access. Without additional configuration, the authentication process stops at this point. If the admin username and password are in the local database, the person is granted access. Otherwise, they are denied. You can configure the AX device to also use external RADIUS or TACACS+ servers for authentication. You can use TACACS+ or RADIUS for external authentication. Only one external authentication method can be used.
Authentication Process
You can specify whether to check the local database or the remote server first. Figure 173 and Figure 174 show the authentication processes used if the AX device is configured to check RADIUS or TACACS+ before checking the local database.
684 of 950
P e r f o r m a n c e
b y
D e s i g n
P e r f o r m a n c e
b y
685 of 950
Local Authentication Type Always Required The local database must be included as one of the authentication sources, regardless of the order is which the sources are used. Authentication using only a remote server is not supported. If the same username is configured in the local database and on the remote server but the passwords do not match, the order in which the authentication sources are used determines whether the admin is granted access. Figure 175 shows an example.
686 of 950
P e r f o r m a n c e
b y
D e s i g n
Username admin Always Authenticated Locally Unlike other admin accounts, the username admin has Root privileges. To ensure against accidental lockout from the AX device, admin is always authenticated using the local database only, regardless of the authentication order used for other admin usernames.
P e r f o r m a n c e
b y
687 of 950
on the server determines whether the admin is granted read-only or readwrite access: If the command level is 14 or 15, the admin is granted read-write access in the GUI. If the command level is 0-13, the admin is granted read-only access in the GUI. Note: This authorization process does not apply to admins who log in through the CLI. (See Authorization for CLI Access on page 688.)
688 of 950
P e r f o r m a n c e
b y
D e s i g n
The second line grants access to all levels. The admins CLI session begins at the Privileged EXEC level.
login as: admin4 Using keyboard-interactive authentication. Password: ******** Last login: Fri Mar 26 20:03:39 2010 from 192.168.1.140 [type ? for help] AX#
authorization before executing those commands. Note: This authorization process does not apply to admins who log in through the GUI. (See Authorization for GUI Access on page 688.) CLI Access Levels You can use TACACS+ to authorize an admin to execute commands at one of the following CLI access levels:
15(admin) This is the most extensive level of authorization. Com-
mands at all CLI levels, including those used to configure admin accounts, are sent to TACACS+ for authorization.
14(config) Commands at all CLI levels except those used to configure
admin accounts are sent to TACACS+ for authorization. Commands for configuring admin accounts are automatically allowed.
P e r f o r m a n c e D e s i g n Document No.: D-030-01-00-0006 - Ver. 2.4.3 6/21/2010 b y
689 of 950
levels are sent to TACACS+ for authorization. Commands at other levels are automatically allowed.
0 (user EXEC) Commands at the User EXEC level are sent to
TACACS+ for authorization. Commands at other levels are automatically allowed. Access levels 1-15 grant access to the Privileged EXEC level or higher, without challenging the admin for the enable password. Access level 0 grants access to the User EXEC level only. Note: Caution: Command levels 2-13 are equivalent to command level 1. The most secure option is 15(admin). If you select a lower option, for example, 1(priv EXEC), make sure to configure the TACACS+ server to deny any unmatched commands (commands that are not explicitly allowed by the server). Otherwise, unmatched commands, including commands at higher levels, will automatically be authorized to execute. TACACS+ Authorization Debug Options You can enable the following TACACS+ debug levels for troubleshooting:
0x1 Common system events such as trying to connect with
TACACS+ servers and getting response from TACACS+ servers. These events are recorded in the syslog.
0x2 Packet fields sent out and received by the AX Series device, not
including the length fields. These events are written to the terminal.
0x4 Length fields of the TACACS+ packets will also be displayed on
the terminal.
0x8 Information about TACACS+ MD5 encryption will be sent to the
syslog.
Accounting
You can configure the AX device to use external RADIUS or TACACS+ servers for Accounting. Accounting keeps track of user activities while the user is logged on. For AX admins, you can configure Accounting for the following:
Login/logoff activity (start/stop accounting) Commands
690 of 950
P e r f o r m a n c e
b y
D e s i g n
at all CLI levels, including those used to configure admin accounts, are tracked.
14(config) Commands at all CLI levels except those used to configure
admin accounts are tracked. Commands for configuring admin accounts are not tracked.
1(priv EXEC) Commands at the Privileged EXEC and User EXEC
mands at other levels are not tracked. Note: Command levels 2-13 are equivalent to command level 1.
P e r f o r m a n c e
b y
691 of 950
Configuring Authentication
To configure remote authentication, use either of the following methods.
3. To add the primary server, click Server 1 to display the configuration fields for the server. 4. Enter the hostname or IP address of the server in the Hostname field. 5. In the Secret and Confirm Secret fields, enter the shared secret (password) expected by the server when it receives requests.
692 of 950
P e r f o r m a n c e
b y
D e s i g n
Configuring Authorization
Note: The command syntax shown in this section is simplified to show the required or more frequently used options. For complete syntax information, see the AX Series CLI Reference. The configuration options described in this section are available only in the CLI.
Note:
P e r f o r m a n c e
b y
693 of 950
Configuring Accounting
Note: The command syntax shown in this section is simplified to show the required or more frequently used options. For complete syntax information, see the AX Series CLI Reference. The configuration options described in this section are available only in the CLI. 1. Add the RADIUS or TACACS+ server(s), if not already added. [no] tacacs-server host {hostname | ipaddr} secret secret-string [no] radius-server host {hostname | ipaddr} secret secret-string 2. To configure Accounting for logon/logoff activity, use the following command: [no] accounting exec {start-stop | stop-only} {radius | tacplus}
Note:
694 of 950
P e r f o r m a n c e
b y
D e s i g n
CLI EXAMPLES
RADIUS Authentication The following commands configure a pair of RADIUS servers and configure the AX device to use them first, before using the local database. Since 10.10.10.12 is added first, this server will be used as the primary server. Server 10.10.10.13 will be used only if the primary server is unavailable.
AX(config)#radius-server host 10.10.10.12 secret radp1 AX(config)#radius-server host 10.10.10.13 secret radp2 AX(config)#authentication type radius local
TACACS+ Authorization The following commands configure the AX device to use TACACS+ server 10.10.10.13 to authorize commands at all CLI levels. In this example, the none option is not used. As a result, if TACACS+ authorization cannot be performed (for example, due to server unavailability), the command is denied.
AX(config)#tacacs-server host 10.10.10.13 secret SharedSecret AX(config)#authorization commands 15 method tacplus
TACACS+ Accounting The following commands configure the AX device to use the same TACACS+ server for accounting of logon/logoff activity and of all command activity:
AX(config)#accounting exec start-stop tacplus AX(config)#accounting commands 15 stop-only tacplus
P e r f o r m a n c e
b y
695 of 950
Note:
In this example, the AX devices subnet is added as the client. Creation of dictionary.a10networks File In the dictionary file, specify the following:
Vendor name A10-Networks Vendor code 22610
After authenticating an admin, the RADIUS server must return the A10-Admin-Privilege attribute, with one of the following values:
P e r f o r m a n c e b y D e s i g n
696 of 950
EXEC commands only. These are commands at the > and # prompts.
Read-write-Admin The admin can access User EXEC, Privileged
EXEC, and configuration commands. These are commands at the >, #, (config)# and sub-config prompts.
vi /usr/local/share/freeradius/dictionary.a10networks # # #
# Version: $Id: dictionary.a10networks,v 1.4 2009/05/05 11:03:56 a10user Exp $
# # # # # VENDOR A10-Networks 22610 http://www.isi.edu/in-notes/iana/assignments/enterprise-numbers For a complete list of Private Enterprise Codes, see:
BEGIN-VENDOR A10-Networks ATTRIBUTE A10-App-Name ATTRIBUTE A10-Admin-Privilege VALUE VALUE 1 2 String integer 1 2
A10-Admin-Privilege Read-only-Admin A10-Admin-Privilege Read-write-Admin 51 String 52 String 53 String 54 String 55 String 56 String 57 String 58 String 59 String 60 String
ATTRIBUTE A10-Single-1 ATTRIBUTE A10-Single-2 ATTRIBUTE A10-Single-3 ATTRIBUTE A10-Single-4 ATTRIBUTE A10-Single-5 ATTRIBUTE A10-Multi-1 ATTRIBUTE A10-Multi-2 ATTRIBUTE A10-Multi-3 ATTRIBUTE A10-Multi-4 ATTRIBUTE A10-Multi-5 END-VENDOR A10-Networks P e r f o r m a n c e
b y
697 of 950
Procedure Overview
To configure Windows IAS for AX RADIUS authentication: 1. On the IAS server, create the following access groups: AX-Admin-Read-Only AX-Admin-Read-Write 2. On the IAS server, configure a RADIUS client for the AX device. 3. On the IAS server, configure the following remote access policies:
AX-Admin-Read-Only-Policy AX-Admin-Read-Write-Policy).
4. On the IAS server, add AD users to appropriate AX device access groups, either AX-Admin-Read-Only or AX-Admin-Read-Write. 5. Register the IAS server in AD.
698 of 950
P e r f o r m a n c e
b y
D e s i g n
P e r f o r m a n c e
b y
699 of 950
5. Click Create. 6. Enter the following information for the second group:
Group Name AX-Admin-Read-Write Group Description Read-Write to AX devices Members Add members as desired using the Add button
700 of 950
P e r f o r m a n c e
b y
D e s i g n
Note:
192.168.1.238 is the IP address of the AX device that will use the IAS server for external RADIUS authentication. 4. Click Next. 5. Enter the following information in the Add RADIUS Client dialog box:
Client address IP address or domain name for the client (AX
device) Client-Vendor RADIUS Standard Shared secret Secret to be shared between IAS and AX. You also will need to enter this in the RADIUS configuration on the AX device. Confirm shared secret Same as above Note: Do not select Request must contain the Message Authenticator attribute. AX RADIUS authentication does not support this option.
P e r f o r m a n c e
b y
701 of 950
6. Click Next.
702 of 950
P e r f o r m a n c e
b y
D e s i g n
3. Click Next. 4. In the Add Remote Access Policy dialog box, click Add. 5. In the Select Attribute dialog box, double-click Client Friendly Name. 6. In the Client-Friendly-Name dialog box, enter the friendly name used to define the AX device (for example, AX-Admin-Read-Only-Policy) and click OK. 7. In the same Add Remote Access Policy dialog box as before, click Add again.
P e r f o r m a n c e
b y
703 of 950
704 of 950
P e r f o r m a n c e
b y
D e s i g n
P e r f o r m a n c e
b y
705 of 950
706 of 950
P e r f o r m a n c e
b y
D e s i g n
P e r f o r m a n c e
b y
707 of 950
708 of 950
P e r f o r m a n c e
b y
D e s i g n
P e r f o r m a n c e
b y
709 of 950
710 of 950
P e r f o r m a n c e
b y
D e s i g n
Note:
18. Click OK for the Configure VSA, Vendor-Specific Attribute Information, and Multivalued Attribute Information dialog boxes. 19. Click Close in the Add Attributes dialog box. 20. Click OK in the Edit Dial-In Profile dialog box. Optionally, read the suggested help by clicking OK. 21. Click Finish in the Add Remote Access Policy dialog box. 22. To create the second Remote Access Policy, repeat the above steps with the following changes:
Policy Friendly name AX-Admin-Read-Write-Policy Group to add AX-Admin-Read-Write Attribute value 2
P e r f o r m a n c e
b y
711 of 950
712 of 950
P e r f o r m a n c e
b y
D e s i g n
P e r f o r m a n c e
b y
713 of 950
Note:
192.168.230.10 is the IP address of w2003-10.com, and shared-secret is the secret entered in the step 5 in Configure RADIUS Client for AX Device on page 700.
714 of 950
P e r f o r m a n c e
b y
D e s i g n
The following sections describe these features and show how to configure them. Note: IP limiting provides a more robust version of the source-IP based connection rate limiting feature. For information, see IP Limiting on page 777.
DDoS Protection
AX Series devices provide enhanced protection against distributed denialof-service (DDoS) attacks, with IP anomaly filters. The IP anomaly filters drop packets that contain common signatures of DDoS attacks. Note: On models AX 2200, AX 3100, AX 3200, AX 5100, and AX 5200, DDoS protection is hardware-based. On other models, DDoS protection is software-based. DDoS detection applies only to Layer 3, Layer 4, and Layer 7 traffic. Layer 2 traffic is not affected by the feature. All IP anomaly filters except IP-option apply to IPv4 and IPv6. The IP-option filter applies only to IPv4. You can enable the following DDoS filters. All filters are supported for IPv4. All filters except IP-option are supported for IPv6.
P e r f o r m a n c e
b y
715 of 950
address as the source and destination, which can be used to launch an IP land attack
Ping-of-death Drops all jumbo IP packets, known as ping of death
packets Note: On models AX 1000, AX 2000, AX 2100, AX 2500, AX 2600, and AX 3000, the ping-of-death option drops all IP packets longer than 32000 bytes. On models AX 2200, AX 3100, AX 3200, AX 5100, and AX 5200, the option drops IP packets longer than 65535 bytes.
TCP-no-flag Drops all TCP packets that do not have any TCP flags set TCP-SYN-FIN Drops all TCP packets in which both the SYN and FIN
which can be used to launch TCP Syn flood attacks IP Anomaly Filters for System-Wide PBSLB The following IP anomaly filters are supported specifically for system-wide PBSLB:
Invalid HTTP or SSL payload Zero-length TCP window Out-of-sequence packet
When these filters are enabled, the AX device checks for these anomalies in new HTTP or HTTPS connection requests from clients. Filtering for these anomalies is disabled by default. However, if you configure a system-wide PBSLB policy, the filters are automatically enabled. You also can configure the filters on an individual basis. Note: In the current release, these filters are supported only for HTTP and HTTPS traffic. (For information about system-wide PBLSB, see Configuring SystemWide PBSLB on page 754.)
716 of 950
P e r f o r m a n c e
b y
D e s i g n
P e r f o r m a n c e
b y
717 of 950
SYN Cookies
AX Series devices provide enhanced protection against TCP SYN flood attacks, with SYN cookies. SYN cookies enable the AX to continue to serve legitimate clients during a TCP SYN flood attack, without allowing illegitimate traffic to consume system resources.
718 of 950
P e r f o r m a n c e
b y
D e s i g n
open TCP connections allowed on the AX device, before SYN cookies are enabled. If the number of half-open TCP connections exceeds the on-threshold, the AX device enables SYN cookies. You can specify 0-2147483647 half-open connections. Off-threshold option 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 halfopen connections.
P e r f o r m a n c e D e s i g n Document No.: D-030-01-00-0006 - Ver. 2.4.3 6/21/2010 b y
719 of 950
virtual server ports configured on the device. Hardware-based SYN cookies are available on the AX 2200, AX 3100, AX 3200, AX 5100, and AX 5200.
Software-based SYN cookies can be enabled on individual virtual ports.
This version of the feature is available on all AX models. Note: Hardware-based SYN cookies are a faster, easier-to-configure alternative to the software-based SYN cookie feature available on all AX platforms. If your AX model supports hardware-based SYN cookies, A10 Networks recommends that you use the hardware-based version of the feature instead of the software-based version of the feature. If both hardware-based and software-based SYN cookies are enabled, only hardware-based SYN cookies are used. You can leave softwarebased SYN cookies enabled but they are not used. Note: If the target VIP is in a different subnet from the client-side router, use of hardware-based SYN cookies requires some additional configuration. See Configuration when Target VIP and Client-side Router Are in Different Subnets on page 721.
720 of 950
P e r f o r m a n c e
b y
D e s i g n
Configuration when Target VIP and Client-side Router Are in Different Subnets
Usually, the target VIP in an SLB configuration is in the same subnet as the client-side router. However, if the target VIP is in a different subnet from the client-side router, use of hardware-based SYN cookies requires some additional configuration:
On the AX device, configure a dummy VIP that is in the same subnet
P e r f o r m a n c e
b y
721 of 950
The following commands configure hardware-based SYN cookies on the AX device in this example:
AX(config)#slb virtual-server dummyvip 10.10.10.154 AX(config-slb virtual server)#exit AX(config)#syn-cookie
Note:
If HA is configured, add both the target VIP and the dummy VIP to the same HA group, so they will fail over to the HA peer as a unit.
722 of 950
P e r f o r m a n c e
b y
D e s i g n
723 of 950
packets allowed per second. If the AX device receives more than the normal rate of ICMP packets, the excess packets are dropped until the next one-second interval begins. The normal rate can be 1-65535 packets per second.
Maximum rate The IMCP maximum rate is the maximum number of
ICMP packets allowed per second before the AX device locks up ICMP traffic. When ICMP traffic is locked up, all ICMP packets are dropped until the lockup expires. The maximum rate can be 1-65535 packets per second.
Lockup time The lockup time is the number of seconds for which the
AX device drops all ICMP traffic, after the maximum rate is exceeded. The lockup time can be 1-16383 seconds. Specifying a maximum rate (lockup rate) and lockup time is optional. If you do not specify them, lockup does not occur. Note: The maximum rate must be larger than the normal rate.
P e r f o r m a n c e b y D e s i g n
724 of 950
725 of 950
726 of 950
P e r f o r m a n c e
b y
D e s i g n
Parameters
Source-IP based connection rate limiting is configured using the following parameters:
TCP or UDP Layer 4 protocol for the connections. Connection limit Maximum number of connection requests allowed
from a client, within the limit period. The connection limit can be 1-1000000.
Limit period Interval to which the connection limit is applied. A client
is conforming to the rate limit if the number of new connection requests within the limit period does not exceed the connection limit. The limit period can be one of the following: 100 milliseconds (one tenth of a second) 1000 milliseconds (one second)
Scope Specifies whether the connection limit applies separately to
each virtual port, or is applied as an aggregate to all virtual ports. By default, the connection limit applies separately to each individual virtual port. (See Deployment Considerations on page 728 for more information.)
Exceed actions Actions to take when the connection limit is exceeded.
All connection requests in excess of the connection limit that are received from a client within the limit period are dropped. This action is enabled by default when you enable the feature, and can not be disabled. You can enable one or both of the following additional exceed actions: Logging Generates a log message when a client exceeds the connection limit. Lockout Locks out the client for a specified number of seconds. During the lockout period, all connection requests from the client are dropped. The lockout period can be 1-3600 seconds (1 hour). There is no default. By default, logging and lockout are both disabled.
Log Messages
The AX device generates two log messages per offending client, per client activity. The first message is generated the first time a client exceeds the connection limit. The message indicates the source (client) address and the destination address of the session. If lockout is configured, the message also indicates that the client is locked out.
P e r f o r m a n c e D e s i g n Document No.: D-030-01-00-0006 - Ver. 2.4.3 6/21/2010 b y
727 of 950
In this example, the session is between client 53.12.3.82 and destination 51.1.1.2:53. During this period of activity, 8654 of the requests from the client were sent after a connection limit had been exceeded, and were dropped. Message Examples With Lockout Configured Here is an example of how the messages look if lockout is configured.
Mar 05 2009 14:34:57 Notice [AX]: UDP 53.12.3.82 > 51.1.1.2:53 nection rate limit dropped this packet (locked out) Source IP Con-
Mar 05 2009 14:37:00 Notice [AX]: UDP 51.2.1.81 > 51.1.1.2:53 Source IP exceeded Connection rate limit in all (897 times, 2342 times in lockout)
In this example, the session is between the same client and destination as the previous example. During this period of activity, 897 of the requests from the client were sent after a connection limit had been exceeded, and were dropped. An additional 2342 requests were dropped because they were received during the lockout.
Deployment Considerations
The AX device internally uses a session to keep track of user activity. Currently, the AX device has a capacity of up to 16 million sessions. Up to 8 million of these sessions are available for tracking user activity. Depending on client profile and activity, as well as the number of virtual ports configured on the device, you might need to use the shared option to apply the connection limit to all virtual ports, instead of each individual port. The default is to apply the connection limit to each individual virtual port, which uses proportionally more sessions than the shared option.
728 of 950
P e r f o r m a n c e
b y
D e s i g n
maximum number of Layer 4 sessions the system can have, use the following CLI command at the global configuration level of the CLI: system resource-usage l4-session-count num The num option specifies the number of Layer 4 sessions.
Use a short UDP aging time. To set a short UDP aging time, use the fol-
lowing command at the configuration level for the UDP template to which you plan to bind the DNS virtual port(s): aging short [seconds] The seconds option specifies the number of seconds to wait before terminating UDP sessions. If you omit the seconds option, sessions are terminated after the SLB maximum session life (MSL) time expires, after a request is received and sent out to the server. (The MSL timer is a globally configurable SLB option. For more information, see the AX Series CLI Reference or AX Series GUI Reference.)
Configuration
Note: The current release does not support configuration or monitoring of this feature using the GUI. To configure source-IP based connection rate limiting, use the following command at the global configuration level of the CLI: slb conn-rate-limit src-ip {tcp | udp} conn-limit per {100 | 1000} [shared] [exceed-action [log] [lock-out lockout-period]] The tcp | udp option specifies the Layer 4 protocol. The conn-limit option specifies the connection limit and can be 1-1000000.
P e r f o r m a n c e
b y
729 of 950
can be 1-3600 seconds (1 hour). To display statistics for this feature, use the following command: show slb conn-rate-limit src-ip statistics To clear statistics for this feature, use the following command: clear slb conn-rate-limit src-ip statistics
Configuration Examples
CLI Example 1 The following command allows up to 1000 TCP connection requests per one-second interval from any individual client. If a client sends more than 1000 requests within a given limit period, the client is locked out for 3 seconds. The limit applies separately to each individual virtual port. Logging is not enabled.
AX(config)#slb conn-rate-limit src-ip tcp 1000 per 1000 exceed-action lock-out 3
CLI Example 2 The following command allows up to 2000 UDP connection requests per 100-millisecond interval. The limit applies to all virtual ports together. Logging is enabled but lockout is not enabled.
AX(config)#slb conn-rate-limit src-ip udp 2000 per 100 shared exceed-action log
CLI Example 3 The following command allows up to 2000 UDP connection requests per 100-millisecond interval. The limit applies to all virtual ports together. Logging is enabled and lockout is enabled. If a client sends a total of more than
730 of 950
P e r f o r m a n c e
b y
D e s i g n
Statistics The following commands display statistics for this feature, then reset the counters to 0 and verify that they have been reset:
AX(config)#show slb conn-rate-limit src-ip statistics Threshold check count 1022000 Honor threshold Lockout drops 60 Log messages sent 20532 DNS requests re-transmitted 1000 No DNS response for request 1021000 AX(config)#clear slb conn-rate-limit src-ip statistics AX(config)#show slb conn-rate-limit src-ip statistics Threshold check count 0 Honor threshold Lockout drops 0 Log messages sent 0 DNS requests re-transmitted No DNS response for request 0 count 0 Threshold exceeded count 0 count 20532 Threshold exceeded count 1001408
DNS Security
You can configure security for DNS VIPs. DNS security examines DNS queries addressed to a VIP to ensure that the queries are formed properly (not malformed). If a malformed DNS query is detected, the AX device takes one of the following actions, depending on the action specified in the DNS security policy:
Drops the query Forwards the query to another service group This option is useful if
you want to quarantine and examine the malformed queries, while still keeping them away from the DNS server.
P e r f o r m a n c e
b y
731 of 950
To configure DNS security for a DNS virtual port: 1. Create a DNS template and specify the DNS security action in the template. 2. Bind the DNS template to the DNS virtual port. Note: DNS templates are a new type of template in AX Release 2.4.
732 of 950
P e r f o r m a n c e
b y
D e s i g n
Since the drop action is specified, malformed DNS queries sent to the virtual DNS server are dropped by the AX device.
address.
Extended IPv4 ACL Extended IPv4 ACLs filter based on source and
P e r f o r m a n c e
b y
733 of 950
ACL to the virtual port. (See Applying an ACL to a Virtual Server Port on page 747.)
To permit or block management access, use the ACL with the enable-
NAT, use the ACL when configuring the pool. (See Network Address Translation on page 607.)
734 of 950
P e r f o r m a n c e
b y
D e s i g n
The remark option adds a remark to the ACL. (For more information, see Adding a Remark to an ACL on page 743.) The source address to match on is specified by one of the following:
any The ACL matches on all source IP addresses. host host-src-ipaddr The ACL matches only on the specified host IP
address.
net-src-ipaddr {filter-mask | /mask-length} The ACL matches on any
host in the specified subnet. The filter-mask specifies the portion of the address to filter: Use 0 to match. Use 255 to ignore. For example, the following filter-mask filters on a 24-bit subnet: 0.0.0.255 Alternatively, you can use mask-length to specify the portion of the address to filter. For example, you can specify /24 instead 0.0.0.255 to filter on a 24-bit subnet. The log option configures the AX device to generate log messages when traffic matches the ACL. This option is disabled by default. The transparent-session-only option limits logging for an ACL rule to creation and deletion of transparent sessions for traffic that matches the ACL rule. (See Transparent Session Logging on page 744.)
P e r f o r m a n c e D e s i g n Document No.: D-030-01-00-0006 - Ver. 2.4.3 6/21/2010 b y
735 of 950
CLI EXAMPLE
The following commands configure a standard ACL to deny traffic sent from subnet 10.10.10.x, and apply the ACL to inbound traffic received on Ethernet interface 4:
AX(config)#access-list 1 deny 10.10.10.0 0.0.0.255 AX(config)#interface ethernet 4 AX(config-if:ethernet4)#access-list 1 in
736 of 950
P e r f o r m a n c e
b y
D e s i g n
The remark option adds a remark to the ACL. (For more information, see Adding a Remark to an ACL on page 743.) The source address to match on is specified by one of the following:
any The ACL matches on all source IP addresses. host host-src-ipaddr The ACL matches only on the specified host IP
address.
net-src-ipaddr {filter-mask | /mask-length} The ACL matches on any
host in the specified subnet. The filter-mask specifies the portion of the address to filter: Use 0 to match. Use 255 to ignore. For example, the following filter-mask filters on a 24-bit subnet: 0.0.0.255
P e r f o r m a n c e
b y
737 of 950
738 of 950
P e r f o r m a n c e
b y
D e s i g n
The code code-num option matches based on the specified ICMP code. To match on any ICMP code, specify any-code. To match on a specific ICMP code, specify the code, 0-254. Syntax for Filtering on Source and Destination IP Addresses and on TCP or UDP Protocol Port Numbers [no] access-list acl-num [seq-num] {permit | deny | remark string} {tcp | udp} {any | host host-src-ipaddr | net-src-ipaddr {filter-mask | /mask-length}} [eq src-port | gt src-port | lt src-port | range start-src-port end-src-port] {any | host host-dst-ipaddr | net-dst-ipaddr {filter-mask | /mask-length}} [eq dst-port | gt dst-port | lt dst-port | range start-dst-port end-dst-port] [log [transparent-session-only]]
P e r f o r m a n c e
b y
739 of 950
port.
gt src-port The ACL matches on traffic from any source port with a
any source port within the specified range. The same options can be used to specify the destination port(s) on which to filter.
CLI EXAMPLE
The following commands configure an extended IPv4 ACL to deny traffic sent from subnet 10.10.10.x to 10.10.20.5:80, and apply the ACL to inbound traffic received on Ethernet interface 7:
AX(config)#access-list 100 deny tcp 10.10.10.0 0.0.0.255 10.10.20.5 /32 eq 80 AX(config)#interface ethernet 7 AX(config-if:ethernet7)#access-list 100 in
740 of 950
P e r f o r m a n c e
b y
D e s i g n
P e r f o r m a n c e
b y
741 of 950
deny | permit
any | host host-srcipv6addr | net-srcipv6addr /masklength Source IP address(es) to filter. any The ACL matches on all source IP addresses. host host-src-ipv6addr The ACL matches only on the specified host IPv6 address. net-src-ipv6addr /mask-length The ACL matches on any host in the specified subnet. The mask-length specifies the portion of the address to filter. eq src-port | gt src-port | lt src-port | range startsrc-port end-src-port
For tcp or udp, the source protocol ports to filter. eq src-port The ACL matches on traffic from the specified source port. gt src-port The ACL matches on traffic from any source port with a higher number than the specified port. lt src-port The ACL matches on traffic from any source port with a lower number than the specified port.
742 of 950
P e r f o r m a n c e
b y
D e s i g n
Configures the AX device to generate log messages when traffic matches the ACL. The transparent-session-only option limits logging for an ACL rule to creation and deletion of transparent sessions for traffic that matches the ACL rule. (See Transparent Session Logging on page 744.)
The remark Command The remark command adds a remark to the ACL. The remark appears at the top of the ACL when you display it in the CLI. Here is the syntax: [no] remark string The string can be 1-63 characters. To use blank spaces in the remark, enclose the entire remark string in double quotes.
P e r f o r m a n c e
b y
743 of 950
As shown in this example, the remark appears at the top of the ACL, above the first rule. To use blank spaces in the remark, enclose the entire remark string in double quotes, as shown in the example. The ACL must already exist before you can configure a remark for it.
The interface on which the ACL matched traffic is indicated in brackets (in this example, eth 1). The addresses are shown as src-ip:port > dst-ip:port. The ACL number or ACL name is shown at the end of the message.
744 of 950
P e r f o r m a n c e
b y
D e s i g n
For all other types of transparent IPv6 sessions, a message is generated if the packet is forwarded:
Feb 24 2010 02:18:07 Notice [AX]:[ve 21] IP 2001:10::100 > 2001:7::40 rule permitted this packet (IPV6_LIST) ACL
For all other types of transparent IPv6 sessions, a message such as the following is generated:
Feb 24 2010 02:18:07 Notice [AX]:[ve 21] IP 2001:10::100 > 2001:7::40 rule denied this packet (IPV6_LIST) ACL
Configuration
To configure session filtering for transparent IPv6 sessions on an interface: 1. Configure an IPv6 ACL that uses the log transparent-session-only option. 2. Apply the ACL to the interface that receives incoming traffic for the sessions. 3. For the following AX models only, enable the cpu-process option on the interface that receives incoming traffic for the sessions: AX 2200, AX 3100, AX 3200, AX 5100, and AX 5200. CLI Example The following commands configure an IPv6 ACL for transparent session logging, and apply it to an IPv6 interface:
P e r f o r m a n c e
b y
745 of 950
746 of 950
P e r f o r m a n c e
b y
D e s i g n
P e r f o r m a n c e
b y
747 of 950
748 of 950
P e r f o r m a n c e
b y
D e s i g n
In this example, two rules are configured for ACL 86. The default sequence numbers are used. The first rule has sequence number 10, and each rule after that has a sequence number that is higher by 10. The intent of this ACL is to deny all access from the 10.10.10.x subnet, except for access from specific host addresses. In this example, the permit rule for the host appears before the deny rule for the subnet the host is in, so the host will be permitted. However, suppose another permit rule is added for another host in the same subnet.
AX(config)#access-list 86 permit host 10.10.10.13 AX(config)#show access-list ipv4 86 access-list 86 10 permit host 10.10.10.12 log Hits: 0 access-list 86 20 deny 10.10.10.0 0.0.0.255 log Hits: 0 access-list 86 30 permit host 10.10.10.13 log Hits: 0
By default, since no sequence number was specified when the rule was configured, the rule is placed at the end of the ACL. Because the deny rule comes before the permit rule, host 10.10.10.13 will never be permitted. To resequence the ACL to work as intended, the deny rule can be deleted, then re-added. Alternatively, either the deny rule or the second permit rule can be resequenced to appear in the right place. To change the sequence number of an ACL rule, delete the rule, then re-add it with the sequence number.
P e r f o r m a n c e
b y
749 of 950
In this example, rule 30 is deleted, then re-added with sequence number 11. The ACL will now work as intended, and permit hosts 10.10.10.12 and 10.10.10.13 while denying all other hosts in the 10.10.10.x subnet. To permit another host, another rule can be added, sequenced to come before the deny rule.
AX(config)#access-list 86 12 permit host 10.10.10.14 log AX(config)#show access-list ipv4 86 access-list 86 10 permit host 10.10.10.12 log Hits: 0 access-list 86 11 permit host 10.10.10.13 log Hits: 0 access-list 86 12 permit host 10.10.10.14 log Hits: 0 access-list 86 20 deny 10.10.10.0 0.0.0.255 log Hits: 0
750 of 950
P e r f o r m a n c e
b y
D e s i g n
fies a group of IP host or subnet addresses contained in the list. In a PBSLB policy template on the AX device, you can map the group to one of the following actions: Drop the traffic Reset the connection Send the traffic to a specific service group The default group ID is 0, which means no group is assigned.
P e r f o r m a n c e
b y
751 of 950
tions allowed from the client. By default, there is no connection limit. If you set it, the valid range is from 1 to 32767. On the AX, you can specify whether to reset or drop new connections that exceed this limit. The # is required only if you do not specify a group-id. Note: The conn-limit is a coarse limit. The larger the number you specify, the coarser the limit will be. For example, if you specify 100, the AX device limits the total connections to exactly 100; however, if you specify 1000, the device limits the connections to not exceed 992. If the number in the file is larger than the supported maximum (32767), the parser will use the longest set of digits in the number you enter that makes a valid value. For example, if the file contains 32768, the parser will use 3276 as the value. As another example, if the file contains 111111, the parser will use 11111 as the value.
The ;comment-string is a comment. Everything to the right of the ; is
ignored by the AX device when it parses the file. Example Black/White List Here is an example black/white list:
10.10.1.3 4; blocking a single host. 4 is the drop group 10.10.2.0/24 4; blocking the entire 10.10.2.x subnet 192.168.1.1/32 #20 ; 20 concurrent connections max, any group ok 192.168.4.69 2 20 ; assign to service group 2, and allow 20 max
The first row assigns a specific host to group 4. On the AX device, the drop action will be assigned to this group, thus black listing the client. The second row black lists an entire subnet, by assigning it to the same group (4). The third row sets the maximum number of concurrent connections for a specific host to 20. The fourth row assigns a specific host to group 2 and specifies a maximum of 20 concurrent connections. Note: The AX device allows up to three parser errors when reading the file. However, after the third parser error, the device stops reading the file.
752 of 950
resets the timeout value for the entry. (Dynamic entry aging is described below.)
If the list contains a static entry for the clients host or subnet address,
the static entry is used instead. Here is an example of a wildcard address in a black/white list: 0.0.0.0/0 1 #20 In this example, all clients who do not match a static entry in the list will be assigned to group 1, and will be limited to 20 concurrent connections. The AX device supports up to 8 million dynamic client entries for systemwide PBSLB. Once this limit is reached, the AX device does not track connections or anomaly counters for additional clients. Connection Limit for Dynamic Entries For dynamic entries in a system-wide PBSLB policys black/white list, the connection limit in the list applies to each individual client. In the example above, each client that has a dynamic entry in the black/white list will be allowed to have a maximum of 20 concurrent connections. Aging of Dynamic Entries When the AX device creates a dynamic black/white list entry for a client, the device also sets the timeout for the entry. The timeout value for the dynamic entry decrements until the timeout reaches 0 or the client sends a new HTTP or HTTPS connection request.
If the client sends a new HTTP or HTTPS connection request, the time-
tions, the dynamic entry is removed. However, if the client has an active connection, the dynamic entry is not removed until the clients connection ends. You can set the timeout to 1-127 minutes. The default is 5 minutes. If client-lockup is enabled, the timeout for a locked up client does not begin decrementing until the lockup expires. (See Client Lockup on page 755.)
P e r f o r m a n c e
b y
753 of 950
To configure a system-wide PBLSB policy, use the following commands at the global configuration level of the CLI: [no] system pbslb bw-list name This command specifies the name of the black/white list to use for the policy. [no] system pbslb id id {drop | reset} [logging minutes] This command specifies the action to take for clients in a given group configured in the black/white list.
drop Drops the connections. reset Resets the connections.
The logging option enables logging. The minutes option specifies how often messages can be generated.
754 of 950
P e r f o r m a n c e
b y
D e s i g n
attempts from the client, for the specified number of minutes. The logging option enables logging. The minutes option specifies how often messages can be generated. [no] system pbslb timeout minutes This command sets the timeout for dynamic black/white-list entries. You can specify 1-127 minutes. The default is 5 minutes. Note: If the lockup option is used with the system pbslb over-limit command, aging of the dynamic entry for a locked up client begins only after the lockup expires. Client Lockup The over-limit rule in a system-wide PBSLB policy includes an optional lockup period. If the lockup period is configured, the AX device continues to enforce the over-limit action for the duration of the lockup. For example, if the over-limit action is drop and a client exceeds the connection limit specified in the black/white list, the AX device continues to drop all connection attempts from the client until the lockup expires. The lockup option is disabled by default. You can enable it by specifying a lockup period of 1-127 minutes. The dynamic black/white-list entry for a client does not age while the client is locked up. After the lockup ends, the timeout for the entry is reset to its full value and begins decrementing normally as described in Aging of Dynamic Entries on page 753. Displaying and Clearing System-Wide PBSLB Information To display information for system-wide PBSLB, use the following commands:
P e r f o r m a n c e D e s i g n Document No.: D-030-01-00-0006 - Ver. 2.4.3 6/21/2010 b y
755 of 950
ing actions: Send the traffic to a specific service group. Reset the traffic. Drop the traffic. Optionally, change the action (drop or reset) the AX will perform on connections that exceed the limit specified in the list. Optionally, if needed for your configuration, change client address matching from source IP matching to destination IP matching. Note: These steps assume that the real servers, service groups, and virtual servers have already been configured.
756 of 950
P e r f o r m a n c e
b y
D e s i g n
757 of 950
ing a new service group. c. Optionally, enable logging. To change the logging interval, edit the number in the Period field. Logging generates messages to indicate that traffic matched the group ID. To generate log messages only when there is a failed attempt to reach a service group, select Log Failures only. Note: If the Use default server selection when preferred method fails option is enabled on the virtual port, log messages will never be generated for server-selection failures. To ensure that messages are generated to log server-selection failures, disable the Use default server selection when preferred method fails option on the virtual port. This limitation does not affect failures that occur because a client is over their PBSLB connection limit. These failures are still logged. d. Click Add. The group settings appear in the PBSLB list. e. Repeat the steps above for each group. 8. Select the action to take when traffic exceeds the limit: Drop or Reset. 9. Optionally, to match destination traffic against the black/white list, instead of source traffic, select Use Destination IP. 10. Click OK. The new policy appears in the PBSLB policy list. 11. To bind the PBSLB policy template to a virtual port: a. Select Config > Service > SLB. b. On the menu bar, select Virtual Server. c. Click on the virtual server name or click Add to create a new one. d. In the Port section, click Add, or select a virtual port and click Edit. e. In the Virtual Server Port section, select the PBSLB template from the Policy Template drop-down list. f. Click OK. g. Click OK again.
758 of 950
P e r f o r m a n c e
b y
D e s i g n
P e r f o r m a n c e
b y
759 of 950
760 of 950
P e r f o r m a n c e
b y
D e s i g n
Note:
group.
reset Resets connections for IP addresses that are in the specified
group.
P e r f o r m a n c e D e s i g n Document No.: D-030-01-00-0006 - Ver. 2.4.3 6/21/2010 b y
761 of 950
option specifies how often messages can be generated. This option reduces overhead caused by frequent recurring messages. For example, if the logging interval is set to 5 minutes, and the PBSLB rule is used 100 times within a five-minute period, the AX device generates only a single message. The message indicates the number of times the rule was applied since the last message. You can specify a logging interval from 0 to 60 minutes. To send a separate message for each event, set the interval to 0. PBSLB rules that use the service service-group-name option also have a fail option for logging. The fail option configures the AX device to generate log messages only when there is a failed attempt to reach a service group. Messages are not generated for successful connections to the service group. The fail option is disabled by default. The option is available only for PBSLB rules that use the service service-group-name option, not for rules with the drop or reset option, since any time a drop or reset rule affects traffic, this indicates a failure condition. Logging is disabled by default. If you enable it, the default for minutes is 3. The AX device uses the same log rate limiting and load balancing features for PBSLB logging as those used for ACL logging. See Log Rate Limiting on page 48. Note: If the def-selection-if-pref-failed option is enabled on the virtual port, log messages will never be generated for server-selection failures. To ensure that messages are generated to log server-selection failures, disable the def-selection-if-pref-failed option on the virtual port. This limitation does not affect failures that occur because a client is over their PBSLB connection limit. These failures are still logged. [no] bw-list over-limit {lockup min | logging min | reset} This command specifies the action to take for traffic that is over the limit. You can specify one or more of the following options:
lockup min Continues to apply the over-limit action to all new con-
nection attempts from the client, for the specified number of minutes (1-127).
logging min Generates a log message when traffic goes over the
limit. The min option specifies the log interval and can be 1-255 minutes.
reset Resets new connections until the number of concurrent con-
762 of 950
763 of 950
tions on the virtual port falls below the ports connection limit. (The connection limit is set in the black/white list.)
reset Resets new connections until the number of concurrent connec-
tions on the virtual port falls below the connection limit.The connection threshold is set in the black/white list.
764 of 950
P e r f o r m a n c e
b y
D e s i g n
------------------------------------------------------------------------------
The following commands configure a PBSLB template and bind it to a virtual port:
AX(config)#slb template policy bw1 AX(config-policy)#bw-list name bw1 AX(config-policy)#bw-list id 2 service srvcgroup2 AX(config-policy)#bw-list id 4 drop AX(config-policy)#exit AX(config)#slb virtual-server PBSLB_VS1 10.10.10.69 AX(config-slb virtual server)#port 80 http AX(config-slb virtual server-slb virtua...)#template policy bw1
The following commands configure the same PBSLB settings directly on a virtual port:
AX(config)#slb virtual-server PBSLB_VS2 10.10.10.70 AX(config-slb virtual server)#port 80 http AX(config-slb virtual server-slb virtua...)#pbslb bw-list sample-bwlist AX(config-slb virtual server-slb virtua...)#pbslb id 4 drop AX(config-slb virtual server-slb virtua...)#pbslb id 2 service srvcgroup2
P e r f o r m a n c e
b y
765 of 950
The lockup period is set to 5 minutes, to continue enforcing the over-limit action for 5 minutes after the over-limit action is triggered. The timeout for dynamic black/white list entries is set to 2 minutes. This example uses the following black/white list: 0.0.0.0/0 1 #20 System-wide PBSLB Policy Configuration The following commands configure the system-wide PBSLB policy:
AX(config)#system pbslb bw-list bwlist-wc AX(config)#system pbslb over-limit lockup 5 AX(config)#system pbslb timeout 2
Configuring the system-wide PBSLB policy also automatically enables the new IP anomaly filters. Statistics Display The following command shows system-wide statistics for the new IP anomaly filters:
766 of 950
P e r f o r m a n c e
b y
D e s i g n
The following command shows statistics for the system-wide PBSLB policy:
AX(config)#show pbslb system
System B/W list: bwlist-wc Virtual Server Port Blacklist/whitelist GID Connection # (Establish Reset Drop) -------------------------------------------------------------------------------System bwlist-wc 1 12 0 0 2 0 0 0
The following command shows summary statistics for individual black/ white-list clients:
AX#show pbslb client GID = Group ID, S/D = Static or dynamic entry Out-s = Out of sequence, Zero-w = Zero window, Bad-c = Bad content IP 40.40.40.168 40.40.40.169 40.40.40.170 40.40.40.171 40.40.40.172 40.40.40.173 40.40.40.174 40.40.40.175 40.40.40.160 40.40.40.161 40.40.40.162 40.40.40.163 40.40.40.164 40.40.40.165 /32 /32 /32 /32 /32 /32 /32 /32 /32 /32 /32 /32 /32 /32 S/D GID Conn-limit Curr-conn Age D D D D D D D D D D D D D D 1 1 1 1 1 1 1 1 1 1 1 1 1 1 20 20 20 20 20 20 20 20 20 20 20 20 20 20 5 6 6 6 6 2 5 5 5 6 6 6 6 5 120 0 0 0 0 120 120 120 120 120 0 0 0 120 Lockup Out-s Zero-w Bad-c 0 5 5 5 5 0 0 0 0 0 5 5 5 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 5 6 6 6 6 2 5 5 5 6 6 6 6 5 5 6 6 6 6 2 5 5 5 6 6 6 6 5 ------------------+---+---+----------+---------+-----+------+-----+------+----
P e r f o r m a n c e
b y
767 of 950
The AX device determines a clients location by looking up the clients subnet in the geo-location database used by Global Server Load Balancing (GSLB). Note: This feature requires you to load a geo-location database, but does not require any other configuration of GSLB. The AX system image includes the Internet Assigned Numbers Authority (IANA) database. By default, the IANA database is not loaded but you can easily load it, as described in the configuration procedure later in this section.
768 of 950
P e r f o r m a n c e
b y
D e s i g n
Configuration
To configure geo-location-based access control for a VIP: 1. Configure a black/white list. You can configure the list using a text editor on a PC or enter it directly into the GUI. If you configure the list using a text editor, import the list onto the AX device. 2. Configure an SLB policy (PBSLB) template. In the template, specify the black/white list name, and the actions to perform for the group IDs in the list. 3. Load a geo-location database, if one is not already loaded. 4. Apply the policy template to the virtual port for which you want to control access. Configuring the Black/White List You can configure black/white lists in either of the following ways:
Remote option Use a text editor on a PC, then import the list onto the
AX device.
Local option Enter the black/white list directly into a management
GUI window. With either method, the syntax is the same. The black/white list must be a text file that contains entries (rows) in the following format: L "geo-location" group-id #conn-limit The L indicates that the clients location will be determined using information in the geo-location database. The geo-location is the string in the geo-location database that is mapped to the clients IP address; for example, US, US.CA, or US.CA.SanJose. The group-id is a number from 1 to 31 that identifies a group of clients (geolocations) in the list. The default group ID is 0, which means no group is assigned. On the AX device, the group ID specifies the action to perform on client traffic. The #conn-limit specifies the maximum number of concurrent connections allowed from a client. The # is required only if you do not specify a group ID. The connection limit is optional. For simplicity, the examples in this section do not specify a connection limit.
P e r f o r m a n c e
b y
769 of 950
3. Click OK. To configure an SLB policy (PBSLB) template: 1. Select Config > Service > Template. 2. On the menu bar, select Application > PBSLB Policy. 3. Click Add. 4. In the Name field, enter a name for the template. 5. From the drop-down list below the Name field, select the black/white list. 6. Select a group ID from the Group ID drop-down list. 7. Select one of the following from the Action drop-down list.
Drop Drops new connections until the number of concurrent con-
nections on the virtual port falls below the ports connection limit. (The connection limit is set in the black/white list.) Reset Resets new connections until the number of concurrent connections on the virtual port falls below the connection limit.
770 of 950
P e r f o r m a n c e
b y
D e s i g n
AX device is listed. create This option displays the configuration sections for creating a new service group. 8. Optionally, enable logging. (The AX device uses the same log rate limiting and load balancing features for PBSLB logging as those used for ACL logging. See Log Rate Limiting on page 48.) 9. Click Add. 10. Repeat step 6 through step 9 for each group ID. 11. Click OK. To load the IANA geo-location database: 1. Select Config > Service > GSLB. 2. On the menu bar, select Geo-location > Import. 3. In the Load/Unload section, enter iana in the File field. Leave the Template field blank. 4. Click Add. Note: If preferred, you can import a custom geo-location database instead. For information, see Loading or Configuring Geo-Location Mappings on page 459. To apply the policy template to a virtual port: 1. Select Config > Service > SLB. 2. On the menu bar, select Virtual Server. 3. Select the virtual server or click Add to configure a new one. 4. If you are configuring a new VIP, enter the name and IP address for the server. 5. In the Port section, select the port and click Edit, or click Add to add a new port. The Virtual Server Port page appears. 6. Select the policy template from the PBSLB Policy Template drop-down list.
P e r f o r m a n c e
b y
771 of 950
772 of 950
P e r f o r m a n c e
b y
D e s i g n
P e r f o r m a n c e
b y
773 of 950
The following commands configure a policy template named geoloc and add the black/white list to it. The template is configured to drop traffic from clients in the geo-location mapped to group 1 in the list.
AX(config)#slb template policy geoloc AX(config-policy)#bw-list name geolist AX(config-policy)#bw-list id 1 drop AX(config-policy)#exit
The following commands apply the policy template to port 80 on virtual server vip1:
AX(config)#slb virtual-server vip1 AX(config-slb virtual server)#port 80 http AX(config-slb vserver-vport)#template policy geoloc AX(config-slb vserver-vport)#show slb geo-location
774 of 950
P e r f o r m a n c e
b y
D e s i g n
Using the default behavior, the connection request from the client at US.CA.SanJose ia allowed even though CA has reached its connection limit. Likewise, a connection request from a client at US.CA is allowed. However, a connection request from a client whose location match is simply US is denied. After these three clients are permitted or denied, the connection permit and deny counters are incremented as follows:
US Deny counter is incremented by 1. US.CA Permit counter is incremented by 1. US.CA.SanJose Permit counter is incremented by 1.
Full-Domain Checking When full-domain checking is enabled, the AX device checks the current connection count not only for the clients specific geo-location, but for all geo-locations higher up in the domain tree. Based on full-domain checking, all three connection requests from the clients in the example above are denied. This is because the US domain has reached its connection limit. Likewise, the counters for each domain are updated as follows:
P e r f o r m a n c e
b y
775 of 950
776 of 950
P e r f o r m a n c e
b y
D e s i g n
IP Limiting
IP limiting provides a greatly enhanced implementation of the source IP connection limiting and connection-rate limiting feature available in previous releases. This chapter describes the IP limiting options and how to configure and apply them.
Overview
IP limiting provides the following benefits:
Configuration flexibility You can apply source IP limiting on a sys-
separate set of IP limits to each class. You also can exempt specific clients from being limited.
Separate limits can be configured for each of the following: Concurrent connections Connection rate Concurrent Layer 7 requests Layer 7 request rate
Note:
In the current release, Layer 7 request limiting applies only to the HTTP, HTTPS, and fast-HTTP virtual port types. The following sections describe the IP limiting options and how to configure and apply them.
Class Lists
A class list is a set of IP host or subnet addresses that are mapped to IP limiting rules. The AX device can support up to 255 class lists. Each class list can contain up to 8 million host IP addresses and 64,000 subnets.
P e r f o r m a n c e
b y
777 of 950
mask specifies the network mask. To configure a wildcard IP address, specify 0.0.0.0 /0. The wildcard address matches on all addresses that do not match any entry in the class list.
glid num | lid num Specifies the ID of the IP limiting rule to use for
matching clients. You can use a system-wide (global) IP limiting rule or an IP limiting rule configured in a PBSLB policy template. To use an IP limiting rule configured at the global configuration level, use the glid num option. To use an IP limiting rule configured at the same level (in the same PBSLB policy template) as the class list, use the lid num option. To exclude a host or subnet from being limited, do not specify an IP limiting rule.
; comment-string Contains a comment. Use a semi-colon ( ; ) in front
of the comment string. Note: The AX device discards the comment string when you save the class list.
IP Address Matching
By default, the AX device matches class-list entries based on the source IP address of client traffic. Optionally, you can match based on one of the following instead:
Destination IP address Matches based on the destination IP address
header in the HTTP request. You can specify the header when you enable this option.
778 of 950
P e r f o r m a n c e
b y
D e s i g n
a PBSLB policy template. (A PBSLB policy template can be applied globally for system-wide IP limiting, or to an individual virtual server or virtual port. This is described in more detail in a later section.)
For all hosts in subnet 2.2.2.0/24, use IP limiting rule 2, which is config-
IP Limiting Rules
IP limiting rules specify connection and request limits for clients. Each IP limiting rule has the following parameters:
Limit ID Number from 1-31 that identifies the rule. Connection limit Maximum number of concurrent connections
for a client within the limit period. You can specify 1-4294967295 connections. The limit period can be 100-6553500 milliseconds (ms), specified in increments of 100 ms. There is no default.
P e r f o r m a n c e
b y
779 of 950
client within the limit period. You can specify 1-4294967295 connections. The limit period can be 100-6553500 milliseconds (ms), specified in increments of 100 ms. There is no default.
Over-limit action Action to take when a client exceeds one or more of
the limits. The action can be one of the following: Drop The AX device drops that traffic. If logging is enabled, the AX device also generates a log message. This is the default action. Forward The AX device forwards the traffic. If logging is enabled, the AX device also generates a log message. Reset For TCP, the AX device sends a TCP RST to the client. If logging is enabled, the AX device also generates a log message.
Lockout period Number of minutes during which to apply the over-
limit action after the client exceeds a limit. The lockout period is activated when a client exceeds any limit. The lockout period can be 1-1023 minutes. There is no default.
Logging Generates log messages when clients exceed a limit. Logging
is disabled by default. When you enable logging, a separate message is generated for each over-limit occurrence, by default. You can specify a logging period, in which case the AX device holds onto the repeated messages for the specified period, then sends one message at the end of the period for all instances that occurred within the period. The logging period can be 0-255 minutes. The default is 0 (no wait period).
Match IP Address
By default, the AX device matches class-list entries based on the source IP address of client traffic. Optionally, you can match based on one of the following instead:
Destination IP address matches based on the destination IP address in
the specified header in packets from clients. If you do not specify a header name, this option uses the IP address in the X-Forwarded-For header.
780 of 950
P e r f o r m a n c e
b y
D e s i g n
PBSLB policy template or in standalone IP limiting rules. For IP limiting on an individual virtual server or virtual port, configure the rules in a PBSLB policy template. 3. Apply the IP limiting rules. You can configure multiple PBSLB policy templates with different IP limiting rules. You can use a given class list in one or more PBSLB policy templates.
For system-wide source IP limiting, apply the PBSLB policy template
globally.
For source IP limiting on an individual virtual server or virtual port,
apply the PBSLB policy template to the virtual server or virtual port. Clients must comply with all IP limiting rules that are applicable to the client. For example, if you configure system-wide IP limiting and also configure IP limiting on an individual virtual server, clients must comply with the system-wide IP limits and with the IP limits applied to the individual virtual server accessed by the client.
P e r f o r m a n c e
b y
781 of 950
another PC or server in the local network. Go to step 6. Remote The file is on a remote server. Go to step 8. 6. Click Browse and navigate to the location of the class list. 7. Click Open. The path and filename appear in the Source field. Go to step 13. 8. To use the management interface as the source interface for the connection to the remote device, select Use Management Port. Otherwise, the AX device will attempt to reach the remote server through a data interface. 9. Select the file transfer protocol: FTP, TFTP, RCP, or SCP. 10. In the Host field, enter the directory path and filename. 11. If needed, change the protocol port number n the port field. By default, the default port number for the selected file transfer protocol is used. 12. In the User and Password fields, enter the username and password required for access to the remote server. 13. Click OK. Configuring a Class List in the GUI 1. Select Config > Service > SLB. 2. On the menu bar, select Class List. 3. Click Create. 4. In the Name field, enter a name for the class list.
P e r f o r m a n c e b y D e s i g n
782 of 950
Note:
If the class list contains 100 or more entries, it is recommended to use the File option. A class list can be exported only if you use the File option. 6. Configure the class list entries: a. Enter the IP address and subnet mask. For a host entry, use mask 255.255.255.255. For a wildcard entry, enter IP address 0.0.0.0 and network mask 0.0.0.0. b. Specify the IP limiting rule to apply to the host or subnet address. Select the system location of the IP limiting rule: Local The IP limiting rule is configured in a PBSLB policy template to be applied to a virtual server or virtual port. Global The IP limiting rule is configured at the system (global) level, and can be shared by all policy templates. LSN This option applies only to the Large-Scale NAT feature. Do not use this option with IP limiting. Enter the rule number, 1-31.
Note:
Make sure to use the same number when you configure the IP limiting rule. c. Click Add. d. Repeat for each entry. 7. Click OK.
P e r f o r m a n c e
b y
783 of 950
You also can export class lists to a remote server, using the following command: export class-list file-name url Configuring a Class List in the CLI To configure a class list in the CLI, use the following commands: [no] class-list name [file] Enter this command at the global configuration level of the CLI. The file option saves the class list as a separate file. Without this option, the class list is instead saved in the startup-config. If the class list contains 100 or more entries, it is recommended to use the file option. The file option is valid only when you create the class list. After you create the list, the list remains either in the startup-config or in a separate file, depending on whether you use the file option when you create the list. Note: A class list can be exported only if you use the file option. The class-list command creates the class list if it is not already configured, and changes the CLI to the configuration level for the list. [no] ipaddr /network-mask [glid num | lid num]
To add an entry to the class list, use the command without no. To modify an entry, use the command without no. Use the same
source IP address as the entry to replace. Entries are keyed by source IP address.
To delete an entry, use no followed by the source IP address.
784 of 950
P e r f o r m a n c e
b y
D e s i g n
ports, you must configure the IP limiting rules in a PBSLB policy template, then apply the template to the virtual server or virtual port.
If you plan to apply IP limits on a system-wide basis, you can configure
785 of 950
786 of 950
P e r f o r m a n c e
b y
D e s i g n
To change the match IP address to one of these options, use the following command at the configuration level for the PBSPB policy template: [no] class-list client-ip {l3-dest | l7-header [header-name]}
P e r f o r m a n c e
b y
787 of 950
ing on page 786 Applying Source IP Limiting to a Virtual Server 1. Select Config > Service > SLB. 2. On the menu bar, select Virtual Server. 3. Click on the virtual server name or click Add if you are configuring a new virtual server. 4. If you are creating a new virtual server, enter the name, virtual IP address, and other General settings. 5. Select the PBSLB policy template from the PBSLB Policy Template drop-down list. 6. If you are creating a new virtual server, configure the virtual port settings as applicable to your deployment. 7. When the virtual server configuration is complete, click OK.
788 of 950
P e r f o r m a n c e
b y
D e s i g n
P e r f o r m a n c e
b y
789 of 950
790 of 950
P e r f o r m a n c e
b y
D e s i g n
CLI ExamplesConfiguration
The examples in this section show how to configure IP limiting.
The following commands configure class list global, which matches on all clients, and uses IP limiting rule 1:
AX(config)#class-list global AX(config-class list)#0.0.0.0/0 glid 1 AX(config-class list)#exit
The following command imports the class list used by the policy:
AX(config)#import class-list global_list ftp: Address or name of remote host []?1.1.1.2 User name []?axadmin Password []?********* File name [/]?global_list
P e r f o r m a n c e
b y
791 of 950
The following command imports the class list used by the policy:
AX(config)#import class-list vs_list ftp: Address or name of remote host []?1.1.1.2 User name []?axadmin Password []?********* File name [/]?vs_list
792 of 950
P e r f o r m a n c e
b y
D e s i g n
The following command imports the class list used by the policy:
AX(config)#import class-list vp_list ftp: Address or name of remote host []?1.1.1.2 User name []?axadmin Password []?********* File name [/]?vp_list
CLI ExamplesDisplay
This section shows example show command output for IP limiting.
Class Lists
The following command displays the class-list files on the AX device:
AX#show class-list Name test user-limit Total: 2 IP 4 14 Subnet 3 4 Location file config
P e r f o r m a n c e
b y
793 of 950
The following commands show the closest matching entries for specific IP addresses in class list test:
AX#show class-list test 1.1.1.1 1.1.1.1 /32 glid 1 AX#show class-list test 1.1.1.2 0.0.0.0 /0 lid 31
The class list contains an entry for 1.1.1.1, so that entry is shown. However, since the class list does not contain an entry for 1.1.1.2 but does contain a wildcard entry (0.0.0.0), the wildcard entry is shown.
794 of 950
P e r f o r m a n c e
b y
D e s i g n
IP Limiting Rules
The following command the configuration of each standalone IP limiting rule:
AX#show lid lid 1 conn-limit 100 conn-rate-limit 100 per 10 request-limit 1 request-rate-limit 10 per 10 over-limit-action reset log 1 lid 2 conn-limit 20000 conn-rate-limit 2000 per 10 request-limit 200 request-rate-limit 200 per 1 over-limit-action reset log 3 lid 30 conn-limit 10000 conn-rate-limit 1000 per 1 over-limit-action forward log
P e r f o r m a n c e
b y
795 of 950
IP Limiting Statistics
The following command shows IP limiting statistics for the entire system:
AX#show pbslb system System LID statistics (lid 1): Current connection: Current connection rate: Total over connection limit number: Total over connection rate limit number:
1 0/s 0 0
System class list statistics: F = Flag (C-Connection, R-Request), Over-RL = Over rate limit Source Destination F Current Rate Over-limit Over-RL ---------------+---------------------+-+---------+---------+----------+---------20.1.2.1 * C 0 0 0 0 Total: 1
796 of 950
P e r f o r m a n c e
b y
D e s i g n
Role-Based Administration
The AX Series provides Virtualized Management, through Role-Based Administration (RBA). RBA allows administrators (admins) to configure and view SLB resources based on administrative domains (partitions). RBA supports separate partitions for these types of resources. Partitioning allows the AX device to be logically segmented to support separate configurations for different customers; for example, separate companies or separate departments within an enterprise. Admins assigned to a partition can manage only the resources inside that partition. Note: RBA is backwards compatible with configurations saved under earlier AX releases. All resources are automatically migrated to a single, shared partition.
P e r f o r m a n c e
b y
797 of 950
Overview
Figure 179 shows an example of an AX device with multiple partitions. FIGURE 179 Role-Based Administration
In this example, a service provider hosts an AX device shared by two companies: A.com and B.com. Each company has its own dedicated servers that they want to manage in entirety. The partition for A.com contains A.com's SLB resources. Likewise, the partition for B.com contains B.com's SLB resources. Admins assigned to the partition for A.com can add, modify, delete and save only those resources contained in A.com's partition. Likewise, B.com's admins can add, modify, delete and save only the resources in B.com's partition. The following sections describe RBA in more detail.
798 of 950
P e r f o r m a n c e
b y
D e s i g n
Resource Partitions
AX system resources are contained in partitions. The AX device has a single shared partition and can have multiple private partitions.
Shared partition The shared partition contains resources that can be
configured only by admins with Root or Read Write privileges. By default, all resources are in the shared partition. There is one shared partition for the device and it is the default partition. The shared partition cannot be deleted.
Private partitions A private partition can be accessed only by the
admins who are assigned to it, and by admins with Root, Read Write, or Read Only privileges. The AX device does not have any private partitions by default. Private partitions can be created or deleted only by admins who have Root or Read Write privileges. A maximum of 128 partitions are supported. (For descriptions of admin privileges, see Table 25 on page 801.) Types of Resources That Can Be Contained in Private Partitions Only certain types of resources can be contained in private partitions. In the current release, a private partition can contain SLB resources only:
Real servers Virtual servers Service groups Templates Health monitors Certificates and keys aFleX policies
All other types of resources can reside only in the shared partition and are not configurable by admins assigned to private partitions. Resource names must be unique within a partition. However, the same name can be used for resources in different partitions. For example, partitions A.com and B.com can each have a real server named rs1. The AX device is able to distinguish between them.
P e r f o r m a n c e
b y
799 of 950
Resources in a private partition cannot be used by resources in any other partition, whether private or shared. aFleX Policies By default, aFleX policies act upon resources within the partition that contains the aFleX policy. Some aFleX commands have an option to act upon service groups in the shared partition instead. (For more information, see the AX Series aFleX Reference.) Partition Logos Each private partition has a logo file associated with it. The logo appears in the upper left corner of the Web GUI. By default, the A10 Networks logo is used. Partition admins can replace the A10 Networks logo with a company logo. The recommended logo size is 180x60 pixels. The following examples show Web GUI pages for two private partitions. A company-specific logo has been uploaded for each partition.
800 of 950
P e r f o r m a n c e
b y
D e s i g n
Administrator Roles
The type of access (read-only or read-write) allowed to an admin, and the partitions where the access applies, depend on that admins privilege level (role). An admin account can have one of the privilege levels listed in Table 25 on page 801. Note: The Partition privilege levels apply specifically to admins who are assigned to private partitions. Table 25 describes the admin roles. TABLE 25 Admin Privilege Levels
Privilege Level (Role) Root Read Write Read Only Partition Write Access to Shared Partition Read-write Read-write Read-only Read-only Can configure other admin accounts Yes1 No No No Can Change Own Password? Yes2 Yes No Yes
Access to Private Partition Read-write Read-write Read-only Read-write, for the partition to which the admin is assigned
P e r f o r m a n c e
b y
801 of 950
Access to Private Partition Read-only, for the partition to which the admin is assigned Read-only for real servers, with permission to view service port statistics, and to disable or enable real servers and real server ports. No other read-only or read-write privileges are granted. All access is restricted to the partition to which the admin is assigned.
1. Only the admin account named admin is allowed to configure other admin accounts, and cannot be deleted. Otherwise, the Root and Read-write privilege levels are the same. 2. The Root privilege level can also change the passwords of other admins.
Types of Resources That Can Be Viewed and Saved By Private Partition Admins All admins can view resources in the shared partition. However, the only admins who can add, modify, or delete resources in the shared partition are admins with Root or Read Write privileges. Admins who are assigned to a partition can view but not modify resources in the shared partition. Admins assigned to a partition cannot view the resources in any other private partition. Each partition has its own running-config and startup-config. When an admin assigned to a partition displays the running-config or startup-config, only the resources within the partition are listed. Likewise, when an admin assigned to a private partition saves the configuration, only the startup-config for that partition is modified. The configuration changes in the partitions running-config are copied to the partitions startup-config. Only admins with Root or Read Write privileges can select the partition(s) for which to save changes. Admins with Real Server Operator privileges can view real servers within the private partition and can disable or re-enable the real servers and their individual service ports. These admins have no other privileges.
802 of 950
P e r f o r m a n c e
b y
D e s i g n
Note:
P e r f o r m a n c e
b y
803 of 950
FIGURE 183
804 of 950
P e r f o r m a n c e
b y
D e s i g n
Deleting a Partition
Only an admin with Root or Read Write privileges can delete a partition. When a partition is deleted, all resources within the partition also are deleted.
P e r f o r m a n c e
b y
805 of 950
tition you select below. Partition Read Admin Gives read-only privileges within the partition you select below. Partition RS Operator Allows the admin to view, disable, or reenable real servers and service ports in the partition. No other read or write privileges are granted. 6. From the Partition drop-down list, select the partition to which you are assigning the admin. 7. Click OK. The new admin appears in the admin list with their respective partition logos.
806 of 950
P e r f o r m a n c e
b y
D e s i g n
P e r f o r m a n c e
b y
807 of 950
CLI Example
The following commands configure two private partitions, companyA and companyB, and verify that they have been created.
AX(config)#partition companyA AX(config)#partition companyB AX(config)#show partition Max Number allowed: 128 Total Number of partitions configured: 2 Partition Name companyA companyB Max. aFleX File Allowed 32 32 # of Admins 0 0 ------------------------------------------------------
808 of 950
P e r f o r m a n c e
b y
D e s i g n
sion only to view service port statistics for real servers in the partition, and to disable or re-enable the real servers.
809 of 950
Note:
810 of 950
P e r f o r m a n c e
b y
D e s i g n
A dialog appears, asking you to confirm your partition selection. 2. Click Yes. 3. Click the Refresh button next to the Partition drop-down list. You must refresh the page in order for the view change to take effect.
811 of 950
To display the currently active partition, use the following command: show active-partition
812 of 950
P e r f o r m a n c e
b y
D e s i g n
P e r f o r m a n c e
b y
813 of 950
Note:
Although the GUI displays the Delete and New buttons, these buttons are not supported for admins with Partition Real Server Operator privileges. To Disable or Re-Enable Individual Real Server Ports 1. Log in with your Partition Real Server Operator account. 2. Select the checkbox next to each server for which you want to disable or re-enable service ports, or click Select All to select all of the servers. 3. Click Edit. 4. A list of all the service ports on the selected servers is displayed.
814 of 950
P e r f o r m a n c e
b y
D e s i g n
FIGURE 187
P e r f o r m a n c e
b y
815 of 950
------------------------------------------------------------------------------
To Disable or Re-Enable Servers Use the following commands to access the configuration level of the CLI: enable config The enable command accesses the Privileged EXEC level. The end of the command prompt changes from > to #. If you are prompted for a password, enter the enable password assigned by the root administrator. The config command accesses the configuration level. At the configuration level, use the following command to access the operation level for the real server: slb server server-name [ipaddr]
816 of 950
P e r f o r m a n c e
b y
D e s i g n
AX(config)#show slb server compArs1 config Total Number of Services configured on Server compArs1: 1 H-check = Health check Service compArs1:80/tcp compArs1 Max conn = Max. Connection H-check Default Default Wgt = Weight Max conn Wgt 1000000 1000000 1 1 Address 7.7.7.7 7.7.7.7 Status Enable Disable
------------------------------------------------------------------------------
P e r f o r m a n c e
b y
817 of 950
818 of 950
P e r f o r m a n c e
b y
D e s i g n
SLB Parameters
This chapter lists the parameters you can configure for Server Load Balancing (SLB). Note: This chapter is intended only as a reference. Not every configurable parameter will apply to a given SLB application. For information about specific applications, see the individual SLB configuration chapters in this guide. For information about health monitoring parameters, see Health Monitoring on page 373. For information about GSLB parameters, see Global Server Load Balancing on page 427. For information about FWLB parameters, see Firewall Load Balancing on page 327.
unset.)
P e r f o r m a n c e
b y
819 of 950
To override the settings in a default template, you must configure another template of the same type and apply that template to the service port instead. For example, to override the settings that will be applied from the HTTP template, configure another HTTP template and assign that one to the virtual port instead. A virtual port can have only one of each type of template that is valid for the ports service type, so when you add a template to the virtual port, the other template of the same type is automatically removed from the virtual port. TABLE 26 Template Types Valid for Service Types
Service Type H T T P V V V V V H T T P S V V V V V V V V V V V V V V V V V V V V V V V V V V V V V V V V V V V V V V V V V V V V V V V V V V V V V V V V V V V V V V V V V V V V V V R T S P S I P S S M T P
Template Type Cache Client SSL Connection Reuse Cookie Persistence DNS Destination-IP Persistence HTTP Policy Server SSL Source-IP Persistence SIP SMTP SSL Session-ID Persistence Streamingmedia TCP TCP-Proxy UDP
FastHTTP
F T P
M M S
S I P
SIPTCP
SSLProxy
T C P
U D P
Others
820 of 950
P e r f o r m a n c e
b y
D e s i g n
Age time
Cache size
P e r f o r m a n c e
b y
821 of 950
Verify host
Default: Disabled
822 of 950
P e r f o r m a n c e
b y
D e s i g n
Cookie removal
Default: Disabled
Replacement policy
The policy supported in the current release is Least Frequently Used (LFU). Default: LFU
P e r f o r m a n c e
b y
823 of 950
Certificate name
824 of 950
P e r f o r m a n c e
b y
D e s i g n
P e r f o r m a n c e
b y
825 of 950
826 of 950
P e r f o r m a n c e
b y
D e s i g n
Cookie expiration
P e r f o r m a n c e
b y
827 of 950
Path
Insert always
Enabled or disabled Default: Disabled. The AX device inserts a persistence cookie only if the client request does not contain a persistence cookie inserted by the AX device, or if the server referenced by the cookie is unavailable. One of the following: Port (selectable in the GUI but not in the CLI) Server Service-group Default: Port
quent requests from the client will be sent to the same real port on the same real server.
Server The cookie inserted into the HTTP header of the server reply to a client ensures that subsequent requests from the client for the same VIP are sent to the same real server. (This assumes that all virtual ports of the VIP use the same cookie persistence template with matchtype set to Server.) Service Group Enables support for URL switching or host switching along with cookie persistence. Without this option, URL switch-
ing or host switching can be used only for the initial request from the client. After the initial request, subsequent requests are always sent to the same service group. Note: To use URL switching or host switching, you also must configure an HTTP template with the Host Switching or URL Switching option.
[no] match-type {server | service-group} Config > Service > Template > Persistent > Cookie Persistence
828 of 950
P e r f o r m a n c e
b y
D e s i g n
Enabled or Disabled Default: Disabled. By default, the connection limit set on real servers and real ports is used.
P e r f o r m a n c e
b y
829 of 950
830 of 950
P e r f o r m a n c e
b y
D e s i g n
Timeout
Enabled or Disabled Default: Disabled. By default, the connection limit set on real servers and real ports is used.
P e r f o r m a n c e
b y
831 of 950
832 of 950
P e r f o r m a n c e
b y
D e s i g n
Logging of retries
P e r f o r m a n c e
b y
833 of 950
834 of 950
P e r f o r m a n c e
b y
D e s i g n
Inserts the specified header into an HTTP request or reply. [no] request-header-insert field:value [insert-always | insert-if-not-exist] [no] response-header-insert field:value [insert-always | insert-if-not-exist] Config > Service > Template > Application > HTTP Note: These options are not supported with the fasthttp service type. The AX device does not allow an HTTP template with any of the header erase or header insert options to be bound to a fast-http virtual port. Likewise, the AX device does not allow header options to be added to an HTTP template that is already bound to a fast-http virtual port. Erases the specified header from an HTTP request or reply. [no] request-header-erase field [no] response-header-erase field Config > Service > Template > Application > HTTP Note: These options are not supported with the fasthttp service type. The AX device does not allow an HTTP template with any of the header erase or header insert options to be bound to a fast-http virtual port. Likewise, the AX device does not allow header options to be added to an HTTP template that is already bound to a fast-http virtual port.
Header erase
P e r f o r m a n c e
b y
835 of 950
Redirect rewrite
Modifies redirects sent by servers by rewriting the matching URL string to the specified value before sending the redirects to clients. [no] redirect-rewrite match url-string rewrite-to url-string Config > Service > Template > Application > HTTP
836 of 950
P e r f o r m a n c e
b y
D e s i g n
P e r f o r m a n c e
b y
837 of 950
838 of 950
P e r f o r m a n c e
b y
D e s i g n
You can specify the following: Over-limit action reset Lockup 1-127 minutes Logging 1-255 minutes Default: Over-limit action drop Lockup not set Logging not set
P e r f o r m a n c e
b y
839 of 950
Overlap
Matches black/white list entries based on the clients destination IP address. [no] overlap Config > Service > Template > Application > Policy
840 of 950
P e r f o r m a n c e
b y
D e s i g n
Client IP address, destination IP address, or request header. Default: Matching is based on the clients source IP address.
P e r f o r m a n c e
b y
841 of 950
842 of 950
P e r f o r m a n c e
b y
D e s i g n
P e r f o r m a n c e
b y
843 of 950
Note:
If you add, remove, or replace a certificate in a server-SSL template that is already bound to a VIP, the AX device does not use the changes. To change the certificates in a server-SSL template, unbind the template from the VIP and delete the template. Configure a new template with the changed certificates and bind the new template to the VIP.
844 of 950
P e r f o r m a n c e
b y
D e s i g n
P e r f o r m a n c e
b y
845 of 950
846 of 950
P e r f o r m a n c e
b y
D e s i g n
Disables reverse NAT based on the IP addresses in an extended ACL. This option is useful in cases where a SIP server needs to reach another server, and the traffic must pass through the AX device.
Configure the extended ACL to match on the SIP server IP address or subnet as the source address, and matches on the destination servers IP address or subnet as the destination address. [no] pass-real-server-ip-for-acl acl-id Config > Service > Template > Application > SIP
ID of a configured extended ACL. Default: Not set. Reverse NAT is enabled for all traffic from the server.
P e r f o r m a n c e
b y
847 of 950
848 of 950
P e r f o r m a n c e
b y
D e s i g n
Any of the following: VRFY, EXPN, TURN Default: VRFY, EXPN, and TURN are enabled
P e r f o r m a n c e
b y
849 of 950
850 of 950
P e r f o r m a n c e
b y
D e s i g n
P e r f o r m a n c e
b y
851 of 950
Timeout
Enabled or Disabled Default: Disabled. By default, the connection limit set on real servers and real ports is used.
852 of 950
P e r f o r m a n c e
b y
D e s i g n
Timeout
Enabled or Disabled Default: Disabled. By default, the connection limit set on real servers and real ports is used.
P e r f o r m a n c e
b y
853 of 950
854 of 950
P e r f o r m a n c e
b y
D e s i g n
Server reset
1-65535 bytes Default: The AX device uses the TCP window size set by the client or server.
P e r f o r m a n c e
b y
855 of 950
Idle timeout
Nagle algorithm
Retransmit retries
1-20 Default: 3
SYN retries
1-20 Default: 5
Time-Wait
856 of 950
P e r f o r m a n c e
b y
D e s i g n
P e r f o r m a n c e
b y
857 of 950
Server reselection
858 of 950
P e r f o r m a n c e
b y
D e s i g n
Graceful shutdown
1-65535 seconds (about 18 hours) Default: Not set. When you delete a real or virtual service port, the AX device places all the ports sessions in the delete queue, and stops accepting new sessions on the port.
859 of 950
Connection limit 1-1000000. Limit period One of the following: 100 milliseconds (one tenth of a second) 1000 milliseconds (one second) Scope One of the following: Shared Connection limit applies as an aggregate to all virtual ports. Not shared Connection limit applies separately to each virtual port. (This is the default behavior. There is no Not shared option.) (cont.)
860 of 950
P e r f o r m a n c e
b y
D e s i g n
DNS caching
Configures the AX device to locally cache DNS responses to client requests. Note: A DNS reply begins aging as soon as it is cached and continues aging even if the cached reply is used after aging starts. Use of a cached reply does not reset the age of that reply. [no] dns-cache-enable [no] dns-cache-age seconds Config > Service > SLB > Global > Settings
P e r f o r m a n c e
b y
861 of 950
862 of 950
P e r f o r m a n c e
b y
D e s i g n
Fast-path processing
Statistics collection
Enabled or disabled Default: Statistical data collection for system resources is enabled by default. This also allows collection for those individual load-balancing resources on which collection is enabled. Statistical data collection also is enabled by default on individual load-balancing resources.
P e r f o r m a n c e
b y
863 of 950
Default: Not set Max-local-rate 1-100 messages per second Max-remote-rate 1-100000 messages per second Exclude-destination Local, remote, or both Defaults: Max-local-rate 32 messages per second Max-remote-rate 15000 messages per second Exclude-destination Logging to both destinations is enabled.
864 of 950
P e r f o r m a n c e
b y
D e s i g n
Description and Syntax Name and IP address of the real server. [no] slb server server-name ipaddr Config > Service > SLB > Server Note: The name does not need to match the hostname configured on the server. State of the real server. [no] {disable | enable} Config > Service > SLB > Server Configuration template of real server parameters. [no] template server template-name Config > Service > SLB > Server
Server state
Health check
Enables or disables Layer 3 health monitoring and species the monitor to use. [no] health-check [monitor-name] Config > Service > SLB > Server
Yes
Connection limit
Number of concurrent connections allowed on a real server. [no] conn-limit max-connections Config > Service > SLB > Server
Yes
P e r f o r m a n c e
b y
865 of 950
Description and Syntax Maximum number of connections the server can have before the AX device resumes use of the server. Use does not resume until the number of connections reaches the configured maximum or less. [no] conn-resume connections Config > Service > SLB > Server
Service port
TCP or UDP port number. [no] port port-num {tcp | udp} Config > Service > SLB > Server - Port (For parameters you can set on the service port, see Real Service Port Parameters on page 868.)
N/A
Slow start
Allows time for a server to ramp up after the server is enabled or comes online, by temporarily limiting the number of new connections on the server. [no] slow-start Config > Service > SLB > Server - Port
Yes Note: Template configuration of this feature provides additional options. See Slow-Start on page 366. No
Weight
Administrative weight of the server, used for weighted load balancing (weighted-least-connection or weighted-round-robin). [no] weight num Config > Service > SLB > Server External IP address, used for reaching a server in a private network from outside the network. [no] external-ip ipaddr Config > Service > SLB > Server
1-100 Default: 1
External IP address
No
866 of 950
P e r f o r m a n c e
b y
D e s i g n
Description and Syntax Enables support for a spoofing cache server. A spoofing cache server uses the clients IP address instead of its own as the source address when obtaining content requested by the client. This command applies to the Transparent Cache Switching (TCS) feature. (See Transparent Cache Switching on page 295.) [no] spoofing-cache Config > Service > SLB > Server Enables or disables collection of statistical data for the server. stats-data-enable stats-data-disable Config > Service > SLB > Server Assigns an IPv6 address to the real server for GSLB. [no] ipv6 ipv6-addr Note: The current release does not support configuration of this option using the GUI.
Statistics collection
No
No
P e r f o r m a n c e
b y
867 of 950
Description and Syntax TCP or UDP port number. [no] port port-num {tcp | udp} Config > Service > SLB > Server - Port In the CLI, this is set at the real server configuration level. In the GUI, this is set in the Port section of the Server page.
State of the service port. [no] {disable | enable} Config > Service > SLB > Server - Port Configuration template of real port parameters. [no] template port template-name Config > Service > SLB > Server - Port
No
Health check
Enables or disables health monitoring and species the monitor to use. To base the ports health on the health of another port of the same type on the same server, use the follow-port option instead. [no] health-check [monitor-name | follow-port portnum method-type] Config > Service > SLB > Server - Port Note: In the current release, the follow-port option is not supported in the GUI.
868 of 950
P e r f o r m a n c e
b y
D e s i g n
Description and Syntax Number of concurrent connections allowed on the service port. [no] conn-limit max-connections Config > Service > SLB > Server - Port
Connection resume
Maximum number of connections the port can have before the AX device resumes use of the port. Use does not resume until the number of connections reaches the configured maximum or less. [no] conn-resume connections Config > Service > SLB > Server - Port
Yes, but as additional parameter with conn-limit command (CLI) or additional field under Connection Limit Status (GUI)
Weight
Administrative weight of the service port, used for weighted load balancing (service-weighted-leastconnection). [no] weight num Config > Service > SLB > Server - Port Disables SSL for server-side connections. This option is useful if a server-SSL template is bound to the virtual port that uses this real port, and you want to disable encryption on this real port. Encryption is disabled by default, but it is enabled for server-side connections when the real port is used by a virtual port that is bound to a server-SSL template. [no] no-ssl Config > Service > SLB > Server - Port
Yes
No-SSL
No
P e r f o r m a n c e
b y
869 of 950
Description and Syntax Enables or disables collection of statistical data for the port. stats-data-enable stats-data-disable Config > Service > SLB > Server - Port
Name of a configured real server, and a service port number configured on the server The priority can be 1-16. Defaults: State enabled Priority 1 Template not set Statistical data collection enabled
870 of 950
P e r f o r m a n c e
b y
D e s i g n
P e r f o r m a n c e
b y
871 of 950
872 of 950
P e r f o r m a n c e
b y
D e s i g n
1-63 Default: Not set. Backup servers are used only if all primary servers are unavailable. When you configure this parameter, the skip-pri-set option is disabled by default, for all load-balancing methods except round-robin. For round-robin (the default), skip-pri-set is always enabled and can not be disabled.
Statistics collection
P e r f o r m a n c e
b y
873 of 950
Description and Syntax Name to identify the virtual server on the AX device, and the virtual IP address that clients will request. To configure a single VIP, enter the IP address. To configure a contiguous range of VIPs, enter a subnet, in Classless Interdomain Routing (CIDR) format. [no] slb virtual-server name ipaddr or [no] slb virtual-server server-name starting-ip {subnet-mask | /mask-length}
Config > Service > SLB > Virtual Server State of the virtual server. [no] {disable [when-all-ports-down] | enable} The when-all-ports-down option automatically disables the virtual server if all its service ports are down. If OSPF redistribution of the VIP is enabled, the AX device also withdraws the route to the VIP in addition to disabling the virtual server. Config > Service > Server > Virtual Server Note: The when-all-ports-down option is not configurable using the GUI. Configuration template of virtual server parameters. [no] template virtual-server template-name Config > Service > Server > Virtual Server
Enabled or disabled Default: Virtual servers are enabled by default. The when-all-portsdown option is disabled by default.
No
Name of a configured virtual server template Default: Default virtual server template
N/A
874 of 950
P e r f o r m a n c e
b y
D e s i g n
Description and Syntax Service port number and service type. [no] port port-num service-type Config > Service > SLB > Virtual Server - Port Service type can be one of the following: fast-http Streamlined Hypertext Transfer Protocol (HTTP) service ftp File Transfer Protocol http HTTP https Secure HTTP (SSL) mms Multimedia Messaging Service rtsp Real Time Streaming Protocol sip Session Initiation Protocol smtp Simple Mail Transfer Protocol ssl-proxy SSL proxy service tcp Transmission Control Protocol udp User Datagram Protocol others Wildcard port used for IP protocol
load balancing. (For more information, see IP Protocol Load Balancing on page 263.)
(For parameters you can set on the service port, see Virtual Service Port Parameters on page 877.) Disables or re-enables ARP replies from a virtual server. [no] arp-disable Config > Service > SLB > Virtual Server HA group ID HA group ID to use for session backup. [no] ha-group group-id VIP-based High Availability (HA) failover Config > Service > SLB > Virtual Server Enables dynamic failover based on server weight. The configured amount is subtracted from the HA groups priority value for each real server that goes down. [no] ha-dynamic server-weight Config > Service > SLB > Virtual Server
ARP disable
Enabled or disabled Default: Disabled; ARP replies are enabled. 1-31 Default: Not set 1-255 Default: Not set
No
No
No
P e r f o r m a n c e
b y
875 of 950
Description and Syntax Explicitly include or exclude the VIP in OSPF redistribution. Setting this option enables you to selectively redistribute individual VIPs. Without this option, the VIP is automatically redistributed if VIP redistribution is enabled in OSPF. To redistribute a VIP, set this option on the VIP, and enter the following command at the OSPF configuration level: redistribute vip only-flagged To exclude this VIP from redistribution, set this option on the VIP, and enter either of the following commands at the OSPF configuration level: redistribute vip only-not-flagged or redistribute vip [no] redistribution-flagged Note: The current release does not support configuration of this option using the GUI. Enables or disables collection of statistical data for the virtual server. stats-data-enable stats-data-disable Config > Service > SLB > Virtual Server
Statistics collection
No
876 of 950
P e r f o r m a n c e
b y
D e s i g n
Description and Syntax Service port number and service type. [no] port port-num service-type Config > Service > SLB > Virtual Server - Virtual Server Port In the CLI, this is set at the virtual server configuration level. In the GUI, this is set on the Virtual Server Port page. Service type can be one of the following: fast-http Streamlined Hypertext Transfer Protocol (HTTP) service ftp File Transfer Protocol http HTTP https Secure HTTP (SSL) mms Multimedia Messaging Service rtsp Real Time Streaming Protocol sip Session Initiation Protocol over UDP sip-tcp SIP over TCP sips Secure SIP over TLS smtp Simple Mail Transfer Protocol ssl-proxy SSL proxy service tcp Transmission Control Protocol udp User Datagram Protocol Note: The AX device allocates processing resources to HTTPS virtual ports when you bind them to an SSL template. This results in increased CPU utilization, regardless of whether traffic is active on the virtual port. State of the virtual service port. [no] {disable | enable} Config > Service > SLB > Virtual Server - Virtual Server Port
No
P e r f o r m a n c e
b y
877 of 950
Description and Syntax Configuration template of virtual port parameters. [no] template virtual-port template-name Config > Service > SLB > Virtual Server - Virtual Server Port
Service group
Service group bound to the virtual service port. The AX device uses real servers and ports in the service group to fulfill requests for the virtual service port. [no] service-group group-name Config > Service > SLB > Virtual Server - Virtual Server Port Connection or application template to use for service port parameters. [no] template template-type template-name Config > Service > SLB > Virtual Server - Virtual Server Port
No
Template
Template type: One of the types described in Service Template Parameters on page 819. Template name: Name of a configured template. Default: Depends on whether the template type has a default and whether the service type uses that template type. (See Service Template Parameters on page 819.) Valid standard or extended ACL ID Default: None
N/A
ID of an ACL. If you do not also specify a NAT pool name, the ACL is used to deny or permit inbound traffic on the service port. If you do specify a NAT pool name, the ACL does not permit or deny traffic. Instead, it binds the source addresses in the ACL to the NAT pool. The NAT pool is used only for the client addresses in the ACL.
No
878 of 950
P e r f o r m a n c e
b y
D e s i g n
Description and Syntax aFleX policy to use for custom SLB processing. [no] aflex aflex-name Config > Service > SLB > Virtual Server - Virtual Server Port Number of concurrent connections allowed on the virtual service port. [no] conn-limit number Config > Service > SLB > Virtual Server - Virtual Server Port Backs up session information on the Standby AX device in an HA configuration. When this option is enabled, sessions remain up even following a failover. [no] ha-conn-mirror Config > Service > SLB > Virtual Server - Virtual Server Port Note: In HA deployments, HA session synchronization is required for persistent sessions (source-IP persistence, and so on), and is therefore automatically enabled for these sessions by the AX device. Persistent sessions are synchronized even if session synchronization is disabled in the configuration. Disables destination NAT, so that server responses go directly to clients. [no] no-dest-nat Config > Service > SLB > Virtual Server - Virtual Server Port
Connection limit
No
No
P e r f o r m a n c e
b y
879 of 950
Description and Syntax Uses a black/white list to allow or deny clients who request the service port, select service groups for allowed clients, and drop or reset connections if the connection limit is reached. [no] pbslb bw-list name [no] pbslb id id {service service-group-name | drop | reset} [logging [minutes [fail]]] [no] pbslb over-limit {drop | reset} Note: In the GUI, PBSLB can only be configured and applied using PBSLB policy templates. Note: If the option to use default selection if preferred server selection fails is enabled on the virtual port, log messages will never be generated for server-selection failures. To ensure that messages are generated to log server-selection failures, disable the option on the virtual port. This limitation does not affect failures that occur because a client is over their PBSLB connection limit. These failures are still logged. (For information about PBSLB, see Policy-Based SLB (PBSLB) on page 751.) Name of a pool of IP addresses to use for Network Address Translation (NAT). [no] source-nat pool pool-name Config > Service > SLB > Virtual Server - Virtual Server Port Note: This option is not applicable to the mms or rtsp service types.
Source NAT
No
880 of 950
P e r f o r m a n c e
b y
D e s i g n
Description and Syntax Enables IP NAT support for the VIP. Source IP NAT can be configured on a virtual port in the following ways: ACL-Source NAT binding at the virtual port level VIP source NAT at the global configuration level aFleX policy bound to the virtual port Source NAT pool at the virtual port level These methods are used in the order shown above. For example, if IP source NAT is configured using an ACL on the virtual port, and the VIP source NAT is also enabled globally, then a pool assigned by the ACL is used for traffic that is permitted by the ACL. For traffic that is not permitted by the ACL, the globally configured VIP source NAT can be used instead. [no] snat-on-vip Config > Service > SLB > Virtual Server - Virtual Server Port Note: The current release does not support source IP NAT on FTP or RTSP virtual ports. Protects against TCP SYN floods. [no] syn-cookie [sack] Config > Service > SLB > Virtual Server - Virtual Server Port Note: If hardware-based SYN cookies are supported on the AX model you are configuring, use that version of the feature instead. (See SYN Cookies on page 718.) Sends replies to clients back through the last hop on which the request for the virtual port's service was received. [no] use-rcv-hop-for-resp Config > Service > SLB > Virtual Server - Virtual Server Port
No
No
P e r f o r m a n c e
b y
881 of 950
Description and Syntax Sends a TCP reset (RST) to clients if server selection fails. [no] reset-on-server-selectionfail Config > Service > SLB > Virtual Server - Virtual Server Port Note: For more information about this option, see Sending a Reset After Server Selection Failure on page 895. Contact A10 Networks for information. Note: This option applies only to wildcard VIPs (VIP address 0.0.0.0). [no] use-default-if-no-server Config > Service > SLB > Virtual Server - Virtual Server Port Continues checking for an available server in other service groups if all of the servers are down in the first service group selected by SLB. During SLB selection of the preferred server to use for a client request, SLB checks the following configuration areas, in the order listed: 1. Layer 3-4 configuration items: a. aFleX policies triggered by Layer 4 events b. Policy-based SLB (black/white lists). PBSLB is a Layer 3 configuration item because it matches on IP addresses in black/white lists. 2. Layer 7 configuration items: a. Cookie switching b. aFleX policies triggered by Layer 7 events c. URL switching d. Host switching (cont.)
Default forwarding after server selection failure Default selection if preferred server selection fails
No
No
882 of 950
P e r f o r m a n c e
b y
D e s i g n
Description and Syntax 3. Default service group. If none of the items above results in selection of a server, the default service group is used. If the configuration uses only one service group, this is the default service group. If the configuration uses multiple service groups, the default service group is the one that is used if none of the templates used by the configuration selects another service group instead. The first configuration area that matches the client or VIP (as applicable) is used, and the client request is sent to a server in the service group that is applicable to that configuration area. For example, if the clients IP address in a black/white list, the service group specified by the list is used for the client request. [no] def-selection-if-pref-failed Config > Service > SLB > Virtual Server - Virtual Server Port Enables a DNS port to function as a proxy for Global Server Load Balancing (GSLB) for this virtual port. [no] gslb-enable Config > Service > SLB > Virtual Server - Virtual Server Port Note: This option applies only to DNS ports and only for a virtual service port on a virtual server that will be used as a DNS proxy on the GSLB AX device. Enables or disables collection of statistical data for the virtual port. stats-data-enable stats-data-disable Config > Service > SLB > Virtual Server - Virtual Server Port
No
Statistics collection
No
P e r f o r m a n c e
b y
883 of 950
884 of 950
P e r f o r m a n c e
b y
D e s i g n
server, the AX device creates the server or, if the server is already created, the AX device refreshes its TTL. The AX device also creates service-group members for the server and its ports.
If the DNS server replies with a CNAME record, the AX device also
sends a DNS query for the CNAME. The AX device supports multiple servers with the same hostname. For example, if the DNS server replies with a different IP address for a hostname real server that has already been created, the AX device creates a second real server with the same hostname and the new IP address. If the IP address returned by the DNS server matches the IP address of a statically configured real server, the server is not created. Service groups can contain both static and hostname servers. Dynamic Server Aging Dynamically created real servers do not persist indefinitely. Instead, they age out based on the TTL values returned by the DNS server. The AX device sets a servers initial TTL when the server is created. The initial TTL value is the greater of the following:
TTL value in the DNS reply DNS query interval multiplied by the min-ttl-ratio (described in Tem-
plate Options for Dynamically Created Real Servers on page 886) The servers TTL is decremented by 60 every minute. The TTL is refreshed each time the DNS server replies with the address.
P e r f o r m a n c e
b y
885 of 732
name for each dynamically created real server. Dynamically created servers are named using the following format: prefix-ipaddr-hostname The prefix is the string added by the AX device. You can specify a string of 1-3 characters. The default is DRS, for Dynamic Real Servers. The ipaddr is the IP address returned in the DNS reply. The hostname is the hostname you specify when you create the server configuration. The maximum total length of a dynamic server name is 32 bytes. If the name becomes longer than 32 characters, the AX device truncates the name to 32 bytes.
dns-query-interval Specifies the interval at which the AX device sends
DNS queries for the IP addresses of the dynamic real servers. You can specify 1-1440 minutes (one day). The default is 10 minutes.
P e r f o r m a n c e b y D e s i g n
886 of 732
that can be dynamically created for a given hostname. You can specify 1-1023. The default is 255. After the maximum number of servers is created, the AX device deletes the oldest servers, as determined by the time it was created, to make room for new ones.
min-ttl-ratio Specifies the minimum initial value for the TTL of
dynamic real servers. This option prevents dynamic real servers from aging out too quickly due to a small TTL value from the DNS server. To calculate the minimum TTL value for a dynamic real server, the AX device multiplies the dns-query-interval by the min-ttl-ratio. For example, if the min-ttl-ratio is 2 and the dns-query-interval is 10 minutes (600 seconds), then the minimum TTL for dynamic real servers is 1200. The min-ttl-ratio can be 2-15. The default is 2. Server port template options for dynamic service-group members:
dynamic-member-priority and decrement-delta Sets the initial priority
of dynamic service-group members, and specifies how much to decrement from the priority after each DNS query. Within a service group, the priorities of the members determine which of those members can be used to service client requests. Normally, only the highest priority members can be used. Decrementing the priorities of dynamic members provides a way to ensure that the service group uses newer dynamically created members instead of older ones. The initial priority can be 1-16, and the default is 16. The delta can be 0-8, and the default is 0. The priority value decrements only when the IP address is not refreshed after a DNS query. For example, assume a DNS query returns IP address 1.1.1.1, and the AX device creates a dynamic server with priority 16. However, the latest DNS query returns IP address 2.2.2.2 only. In this case, the priority of 1.1.1.1 is decremented by the delta value. If a later DNS query returns 1.1.1.1 again, the priority of server 1.1.1.1 is reset to 16. If you leave the delta set to its default (0), service-group member priorities are not decremented. Note: Settings that also apply to static servers and ports, such as connection and rate limits, apply individually to each dynamically created server or port. For example, the connection-rate limit configured in a server template applies individually to each dynamically created server for a given hostname. The limit is not applied collectively to all dynamically created servers for the hostname.
P e r f o r m a n c e
b y
887 of 732
888 of 732
P e r f o r m a n c e
b y
D e s i g n
CLI Example The following commands configure hostname server parameters in a server port template and a server template:
AX(config)#slb template port temp-port AX(config-rport)#dynamic-member-priority 12 AX(config-rport)#exit AX(config)#slb template server temp-server AX(config-rserver)#dns-query-interval 5 AX(config-rserver)#min-ttl-ratio 3 AX(config-rserver)#max-dynamic-server 16 AX(config-rserver)#exit
P e r f o r m a n c e
b y
889 of 732
The following commands configure a service group and add the hostname server and static server to it. The port template is bound to the member for the hostname server and port.
AX(config)#slb service-group sg-test tcp AX(config-slb svc group)#member s-test1:80 template temp-port AX(config-slb svc group)#member s-test2:80 AX(config-slb svc group)#exit
The following commands adds the DNS server to use for resolving the real server hostname into server IP addresses:
AX(config)#ip dns primary 10.10.10.10
The following command displays detailed information for the hostname server. The configuration details are shown first, followed by details for the dynamically created servers.
AX#show slb server s-test1 detail Server name: Hostname: Last DNS reply: State: Server template: DNS query interval: Minimum TTL ratio: Maximum dynamic server: Health check: Current connection: Current request: Total connection: s-test1 s1.test.com Tue Nov 17 03:41:59 2009 Up temp-server 5 3 16 none 0 0 1919 P e r f o r m a n c e b y D e s i g n
890 of 732
The following command displays service-group information. A separate row of information appears for each dynamically created member.
AX#show slb service-group Total Number of Service Groups configured: 40 Current = Current Connections, Total = Total Connections Fwd-p = Forward packets, Rev-p = Reverse packets Service Group Name Service *sg-test Current State: All Up 0 36 0 0 1919 53 0 5714 265 0 5631 212 Total Fwd-p Rev-p ----------------------------------------------------------------------DRS-10.4.2.6-s2.test.com:80 DRS-10.4.2.5-s1.test.com:80 s-test2:80
P e r f o r m a n c e
b y
891 of 732
Service: DRS-10.4.2.6-s2.test.com:80
Service: DRS-10.4.2.5-s1.test.com:80
Persistent connections:
The following command displays configuration information for the service group. In this example, the service group has dynamic members and a static member.
AX#show slb service-group sg-test config Service group name: sg-test Type: tcp Health Check: None Member Count:4 Member4: DRS-10.4.2.6-s2.test.com:80 Member3: DRS-10.4.2.5-s1.test.com:80 Member1: DRS-10.4.2.5-s-test2:80 Member2: s-test1:80 Priority: 1 Priority: 16 Priority: 1 Distribution: Round Robin
Priority: 1
892 of 732
P e r f o r m a n c e
b y
D e s i g n
P e r f o r m a n c e
b y
893 of 732
The starting-ip option specifies the beginning IP address in the range. The subnet-mask | /mask-length option specifies the size of the range. Note: If you do not specify a network mask, the virtual server is a standard VIP that has the IP address you specify as the starting-ip address. CLI Example The following command configures a set of VIPs for IP addresses 1.1.1.51.1.1.255:
AX(config)#slb virtual-server vs1 1.1.1.5 /24
894 of 732
P e r f o r m a n c e
b y
D e s i g n
Enabling the reset-on-server-selection-fail option at the service-group level allows selective use of the option based on service group. Figure 188 on page 896 shows an example of a Policy-Based SLB (PBSLB) solution that uses the reset-on-server-selection-fail option. Note: The TCP template reset-rev option also can be used to send a RST to clients. In AX releases prior to 2.2.2, the reset-rev option would send a RST in response to a server selection failure. In AX Release 2.2.2 and later, the new reset-on-server-selection-fail option must be used instead.
P e r f o r m a n c e
b y
895 of 732
896 of 732
P e r f o r m a n c e
b y
D e s i g n
In this solution, if a white-list client exceeds the connection limit specified in the black/white list, the AX device sends a RST to the client. However, if a grey-list or black-list client exceeds its connection limit, the AX device drops the connection, instead of sending a RST. To implement this solution, a separate service group is configured for each client category. In the black/white list, each client is assigned to one of the service groups, according to the clients category. For example, client 192.168.1.1 is a white-list client, and is therefore assigned to the white-list service group. To configure the AX device to send a RST to white-list clients upon server selection failure, but not to grey-list or black-list clients, the reset-on-serverselection-fail option is used in the white-list service group only. The default PBSLB action, drop, is used for the other service groups. The virtual port to which clients will send mail traffic is bound to all three service groups. In addition, the def-selection-if-pref-failed option is disabled. This option must be disabled so that the AX device does not attempt to use other configuration areas of the system to select a server, if SLB is unable to select a server. A policy template is used to identify the black/white list and the service group assignments, and is bound to the virtual port. Note: This example uses a separate server for each client category. However, traffic for all clients could be sent to the same server. The essential parts of this solution are use of a separate service group for each client category, enabling of the reset-on-server-selection-fail option in the white-list service group, and disabling of the def-selection-if-pref-failed option on the virtual port.
897 of 732
898 of 732
P e r f o r m a n c e
b y
899 of 732
900 of 732
P e r f o r m a n c e
b y
D e s i g n
P e r f o r m a n c e
b y
901 of 950
VIP 192.168.10.11 uses 3 real servers for HTTP service. Two of the servers have a single protocol port for HTTP. However, one of the servers has HTTP service on multiple service ports. The load-balancing method for the service group is used to select a server and port for the first request from a given client (source IP address). After this initial selection, subsequent requests from the same client are sent to the same server. By default, when the match-type is changed to server, the AX device uses the SLB load-balancing method for the first request to select a member, then uses fast-path processing to select the first member that has the same IP address as the server that was initially selected. In this example, if the load-balancing method chooses port 80 on server s3 for the first request, subsequent requests are also sent to s3. If port 80 goes down, the next request is still sent to s3, but to a different port on s3.
902 of 950
P e r f o r m a n c e
b y
D e s i g n
If s3:80 is disabled or is set to a lower priority, the AX device selects the next member on the same server, s3:8080.
P e r f o r m a n c e
b y
903 of 950
904 of 950
P e r f o r m a n c e
b y
D e s i g n
Overview
Some types of client-server traffic need to be encrypted for security. For example, traffic for online shopping must be encrypted to secure sensitive account information from being stolen. Commonly, clients and servers use Secure Sockets Layer (SSL) or Transport Layer Security (TLS) to secure traffic. For example, a client that is using a shopping application on a server will encrypt data before sending it to the server. The server will decrypt the clients data, then send an encrypted reply to the client. The client will decrypt the server reply, and so on. Note: SSL is an older version of TLS. The AX device supports SSL version 3.0 and TLS version 1.0. The AX device also supports RFC 3268: AES Ciphersuites for TLS. For simplicity, elsewhere this document and other AX user documents use the term SSL to mean both SSL and TLS. The AX device supports Privacy Enhanced Mail (PEM) format for certificate files and CRLs. AX SSL processing supports PEM format and RSA encryption.
Note:
SSL Process
SSL works using certificates and keys. Typically, a client will begin a secure session by sending an HTTPS request to a VIP. The request begins an SSL handshake. The AX device will respond with a digital certificate, to provide verification of the content servers identity. From the clients perspective, this certificate comes from the server. Once the SSL handshake is complete, the client begins an encrypted client-server session with the AX device.
P e r f o r m a n c e D e s i g n Document No.: D-030-01-00-0006 - Ver. 2.4.3 6/21/2010 b y
905 of 950
To begin, the client sends an HTTPS request. The request includes some encryption details such as the cipher suites supported by the client. The AX device, on behalf of the server, checks for a client-SSL template bound to the VIP. If a client-SSL template is bound to the VIP, the AX device sends all the digital certificates contained in the template to the client. The client browser checks its certificate store (sometimes called the certificate list) for a copy of the server certificate. If the client does not have a
906 of 950
P e r f o r m a n c e
b y
D e s i g n
Certificate Chain
Ultimately, a certificate must be validated by a root CA. Certificates from root CAs are the most trusted. They do not need to be signed by a higher (more trusted) CA. If the CA that signed the certificate is a root CA, the client browser needs a copy of the root CAs certificate. If the CA that signed the server certificate is not a root CA, the client browser should have another certificate or a certificate chain that includes the CA that signed the CAs certificate. A certificate chain contains the chain of signed certificates that leads from the CA to the signature authority that signed the certificate for the server. Typically, the certificate authority that signs the server certificate also will provide the certificate chain. Figure 191 shows an example of a certificate chain containing three certificates: FIGURE 191
-----BEGIN CERTIFICATE----ZS9naWYwITAfMAcGBSsOAwIaBBRLa7kolgYMu9BSOJsprEsHiyEFGDAmFiRodHRw Oi8vbG9nby52ZXJpc2lnbi5jb20vdnNsb2dvMS5naWYwDQYJKoZIhvcNAQEFBQAD gYEAheIVEe8vArUOZxKkUIGjaYymzJAh8Ty0uUPrikLpQ0IGezByVdbDUJ+HQLGp 2eruTPZpBNADaEfymstIPIxrsuCRhyr3Ymsa2rgzwy9kSXeG83H7E7HxRnpxDNZ8 l+uzpU/rk4j3bO/JVxPZMnwzMWriPSYgL1EKYcOSKyReaxQ= -----END CERTIFICATE---------BEGIN CERTIFICATE----ZS9naWYwITAfMAcGBSsOAwIaBBRLa7kolgYMu9BSOJsprEsHiyEFGDAmFiRodHRw Oi8vbG9nby52ZXJpc2lnbi5jb20vdnNsb2dvMS5naWYwDQYJKoZIhvcNAQEFBQAD gYEAheIVEe8vArUOZxKkUIGjaYymzJAh8Ty0uUPrikLpQ0IGezByVdbDUJ+HQLGp 2eruTPZpBNADaEfymstIPIxrsuCRhyr3Ymsa2rgzwy9kSXeG83H7E7HxRnpxDNZ8 l+uzpU/rk4j3bO/JVxPZMnwzMWriPSYgL1EKYcOSKyReaxQ= -----END CERTIFICATE---------BEGIN CERTIFICATE----ZS9naWYwITAfMAcGBSsOAwIaBBRLa7kolgYMu9BSOJsprEsHiyEFGDAmFiRodHRw Oi8vbG9nby52ZXJpc2lnbi5jb20vdnNsb2dvMS5naWYwDQYJKoZIhvcNAQEFBQAD gYEAheIVEe8vArUOZxKkUIGjaYymzJAh8Ty0uUPrikLpQ0IGezByVdbDUJ+HQLGp 2eruTPZpBNADaEfymstIPIxrsuCRhyr3Ymsa2rgzwy9kSXeG83H7E7HxRnpxDNZ8 l+uzpU/rk4j3bO/JVxPZMnwzMWriPSYgL1EKYcOSKyReaxQ= -----END CERTIFICATE-----
P e r f o r m a n c e
b y
907 of 950
Note:
It is normal for the AX device to display a certificate warning when an admin accesses the AX management GUI. Certificates used for SLB are not used by the management GUI.
908 of 950
P e r f o r m a n c e
b y
D e s i g n
signed by a recognized Certificate Authority (CA). To obtain a CAsigned 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 AX device. When a client sends an HTTPS request, the AX device sends a copy of the certificate to the client, to verify the identity of the server (AX device). To ensure that clients receive the required chain of certificates, you also can send clients a certificate chain in addition to the server certificate. (See Certificate Chain on page 907.) The example in Figure 190 on page 906 uses a CA-signed certificate.
Self-signed A self-signed certificate is a certificate that is created and
signed by the AX device. A CA is not used to create or sign the certificate. CA-signed certificates are considered to be more secure than self-signed certificates. Likewise, clients are more likely to be able to validate a CAsigned certificate than a self-signed certificate. If you configure the AX device to present a self-signed certificate to clients, the clients 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.
P e r f o r m a n c e
b y
909 of 950
SSL Templates
You can install more than one key-certificate pair on the AX device. The AX device selects the certificate(s) to send a client or server based on the SSL template bound to the VIP. You can bind the following types of SSL templates to VIPs:
Client-SSL template Contains keys and certificates for SSL-encrypted
traffic between clients and the AX device. A client-SLS template can also contain a certificate chain.
Server-SSL template Contains CA certificates for SSL-encrypted traf-
fic between servers and the AX device. Client-SSL Template Options Use client-SSL templates for deployments in which traffic between clients and the AX device will be SSL-encrypted. Client-SSL templates have the following options. For the simple deployment example in Figure 190 on page 906, only the first option (Certificate) needs to be configured. You may also need to configure the Certificate chain option.
Certificate Specifies a server certificate that the AX device will send
to a client, so that the client can validate the servers identity. The certificate can be generated on the AX device (self-signed) or can be signed by another entity and imported onto the AX device.
Key Specifies a public key for a server certificate. If the CSR used to
request the server certificate is generated on the AX device, the key is automatically generated. Otherwise, the key must be imported.
Certificate chain Specifies a named set of server certificates beginning
with a root CA certificate, and containing all the intermediary certificates in the authority chain that ends with the authority that signed the server certificate. (See Certificate Chain on page 907.)
CA certificate Specifies a CA certificate that the AX device can use to
validate the identity of a client. A CA certificate is needed only if the AX device will be required to validate the identities of clients. If CA certificates are required for this purpose, they must be imported onto the AX device. The AX device is not configured at the factory to contain a certificate store.
Certificate Revocation List (CRL) Specifies a list of client certificates
that have been revoked by the CAs that signed them. This option is applicable only if the AX device will be required to validate the identities of clients.
910 of 950
P e r f o r m a n c e
b y
D e s i g n
requests from clients. This option is applicable only if the AX device will be required to validate the identities of clients. The response can be one of the following: ignore (default) The AX device does not request the client to send its certificate. request The AX device requests the client to send its certificate. With this action, the SSL handshake proceeds even if either of the following occurs: The client sends a NULL certificate (one with zero length). The certificate is invalid, causing client verification to fail. Use this option if you want to the request to trigger an aFleX policy for further processing. require The AX device requires the client certificate. This action requests the client to send its certificate. However, the SSL handshake does not proceed (it fails) if the client sends a NULL certificate or the certificate is invalid.
Cipher list Specifies the cipher suites supported by the AX device.
When the client sends its connection request, it also sends a list of the cipher suites it can support. The AX device selects the strongest cipher suite supported by the client that is also enabled in the template, and uses that cipher suite for traffic with the client. By default, all the following are enabled: SSL3_RSA_DES_192_CBC3_SHA SSL3_RSA_DES_40_CBC_SHA SSL3_RSA_DES_64_CBC_SHA SSL3_RSA_RC4_128_MD5 SSL3_RSA_RC4_128_SHA SSL3_RSA_RC4_40_MD5 TLS1_RSA_AES_128_SHA TLS1_RSA_AES_256_SHA TLS1_RSA_EXPORT1024_RC4_56_MD5 TLS1_RSA_EXPORT1024_RC4_56_SHA
Session cache size Specifies the maximum number of cached sessions for SSL session ID reuse.
Server-SSL Template Options A server-SSL template is needed only if traffic between the AX device and real servers will be encrypted using SSL. In this case, the AX device will be required to validate the identities of the servers.
P e r f o r m a n c e
b y
911 of 950
When the server sends its connection request, it also sends a list of the cipher suites it can support. The AX device selects the strongest cipher suite supported by the server that is also enabled in the template and uses that cipher suite for traffic with the server. The same cipher suites supported in client-SSL templates are supported in server-SSL templates. Support for all of them is enabled by default.
912 of 950
P e r f o r m a n c e
b y
D e s i g n
(PKCS #7 format), import the certificate. You do not need to import the key if the CSR was created on the AX device. In this case, the key is already on the AX device. If the certificate is not in PEM format, specify the certificate format (type) when you import it. If the CSR was not created on the AX device, you do need to import the key also. If the key and certificate are provided by the CA in a single file (PKCS #12 format), specify the certificate format (type) when you import it. If the CSR was not created on the AX device, you need to import the key also. See Converting SSL Certificates to PEM Format on page 927. 5. If applicable, import the certificate chain onto the AX device. The certificate chain must be a single text file, beginning with a root CAs certificate at the top, followed in order by each intermediate signing authoritys certificate. (See Certificate Chain on page 907.) Figure 193 shows the most common way to obtain and install a CA-signed certificate onto the AX device. You also may need to install a certificate chain file.
P e r f o r m a n c e
b y
913 of 950
Note:
As an alternative to using a CA, you can use an application such as openssl to create a certificate, then use that certificate as a CA-signed certificate to sign another certificate. However, in this case, a clients browser is still likely to display a certificate warning to the end user.
914 of 950
P e r f o r m a n c e
b y
D e s i g n
P e r f o r m a n c e
b y
915 of 950
916 of 950
P e r f o r m a n c e
b y
D e s i g n
P e r f o r m a n c e
b y
917 of 950
918 of 950
P e r f o r m a n c e
b y
D e s i g n
Alternatively, you can use the following commands at the Privileged EXEC or global Config level of the CLI: import ssl-cert file-name url import ssl-key file-name url
P e r f o r m a n c e
b y
919 of 950
920 of 950
P e r f o r m a n c e
b y
D e s i g n
Note:
If you need to create a wildcard certificate, use an asterisk as the first part of the common name. For example, to create a wildcard certificate for domain example.com and it sub-domains, enter the following common name: *.example.com The key length, common name, and number of days the certificate is valid are required. The other information is optional. The default key length is 1024 bits. The default number of days the certificate is valid is 730. The following commands create a self-signed certificate named slbcert1 and verify the configuration:
AX(config)#slb ssl-create certificate slbcert1 input key bits(512,1024,2048) default 1024:<Enter> input Common Name, 1~64:slbcert1 input Division, 0~31:Div1 input Organization, 0~63:Org2 input Locality, 0~31:WestCoast input State or Province, 0~31:CA input Country, 2 characters:US input email address, 0~64:[email protected] input valid days, 30~3650, default 730:<Enter> AX(config)#show slb ssl cert name: slbcert1 type: certificate/key Common Name: slbcert1 Organization: Org2 Expiration: Apr 10 00:34:34 2010 GMT Issuer: Self key size: 1024
P e r f o r m a n c e
b y
921 of 950
Importing a CRL
To import a CRL, place it on the PC that is running the GUI or CLI session, or onto a PC or file server that can be locally reached over the network.
922 of 950
P e r f o r m a n c e
b y
D e s i g n
P e r f o r m a n c e
b y
923 of 950
Exporting a CRL
USING THE CLI
To export a CRL, use the following command at the Privileged EXEC or global Config level of the CLI: export ssl-crl file-name url
924 of 950
P e r f o r m a n c e
b y
D e s i g n
AX device (VIP) and clients. SSL > Server SSL to create a template for SSL traffic between the AX device and servers. 3. Click Add. 4. Enter or select the configuration options. (For information, see SSL Templates on page 910, the AX Series GUI Reference, or the online help.) 5. When finished, click OK.
P e r f o r m a n c e
b y
925 of 950
926 of 950
P e r f o r m a n c e
b y
D e s i g n
P e r f o r m a n c e
b y
927 of 950
928 of 950
P e r f o r m a n c e
b y
D e s i g n
Route Tables
The AX device uses separate route tables for management traffic and data traffic.
Management route table Contains all static routes whose next hops are
connected to the management interface. The management route table also contains the route to the device configured as the management default gateway.
Main route table Contains all routes whose next hop is connected to a
data interface. These routes are sometimes referred to as data plane routes. Entries in this table are used for load balancing and for Layer 3 forwarding on data ports. This route table also contains copies of all static routes in the management route table, excluding the management default gateway route. You can configure the AX device to use the management interface as the source interface for automated management traffic. In addition, on a caseby-case basis, you can enable use of the management interface and management route table for various types of management connections to remote devices: The AX device automatically will use the management route table for reply traffic on connections initiated by a remote host that reaches the AX device on the management port. For example, this occurs for SSH or HTTP connections from remote hosts to the AX device. Note: In AX Release 1.2.4 and earlier, all static routes are stored in the main route table, even if the next hop is connected to the management interface. The management route table contains only the route to the subnet directly
P e r f o r m a n c e
b y
929 of 950
routes.
For example, when use of the management interface as the source interface for control traffic is enabled, all log messages sent to remote log servers are sent through the management interface. Likewise, the management route table is used to find a route to the log server. The AX device does not attempt to use any routes from the main route table to reach the server, even if a route in the main route table could be used. In addition, on a case-by-case basis, you can enable use of the management interface and management route table for the following types of management connections to remote devices:
930 of 950
P e r f o r m a n c e
b y
D e s i g n
Caution:
If you enable this feature, then downgrade to AX Release 1.2.4 or earlier, it is possible to lose access to the AX device after you downgrade. This can occur if you configure an external AAA server (TACACS+ server) to authorize CLI commands entered on the AX device, and the TACACS+ server is connected to the AX device through the management default gateway. If this is the case, before you downgrade, remove the TACACS+ configuration from the AX device. After you downgrade, you can re-add the configuration, but make sure the TACACS+ server can be reached using a route other than through the management default gateway.
Enabling Use of the Management Interface as the Source for Automated Management Traffic
By default, use of the management interface as the source interface for automated management traffic is disabled. To enable it, use the following command at the configuration level for the management interface: [no] ip control-apps-use-mgmt-port Here is an example:
AX(config-if:management)#ip control-apps-use-mgmt-port
P e r f o r m a n c e
b y
931 of 950
Using the Management Interface as the Source Interface for Manually Generated Management Traffic
To use the management interface as the source interface for manually generated management traffic, use the use-mgmt-port option. In the GUI, this option is provided as a Use Management Port checkbox on the applicable pages. In the CLI, this option is supported with the following commands.
932 of 950
P e r f o r m a n c e
b y
D e s i g n
Show Commands
show techsupport [[use-mgmt-port] export url] [page]
P e r f o r m a n c e
b y
933 of 950
934 of 950
P e r f o r m a n c e
b y
D e s i g n
Configuration Management
By default, when you click the Save button in the GUI or enter the write memory command in the CLI, all unsaved configuration changes are saved to the startup-config. The next time the AX device is rebooted, the configuration is reloaded from this file. In addition to these simple configuration management options, the AX device has advanced configuration management options that allow you to save multiple configuration files. You can save configuration files remotely on a server and locally on the AX device itself. Note: For information about managing configurations for separate partitions on an AX device configured for Role-Based Administration (RBA), see Role-Based Administration on page 797. For information about synchronizing configuration information between AX devices in a High Availability (HA) pair, see Synchronizing Configuration Information on page 598. For upgrade instructions, see the release notes for the AX release to which you plan to upgrade.
Note:
Note:
P e r f o r m a n c e
b y
935 of 950
aFleX policies, and SSL certificates and keys. Backup > Config This option backs up only the specified configuration file. Backup > Syslog This option backs up the log entries in the AX devices syslog buffer. (If there are any core files on the system, this option backs them up as well.) 3. Select the backup location:
Local Saves the backup on the PC or workstation where you are
using the AX GUI. Remote Saves the backup onto another PC or workstation. 4. If you selected Local: a. Click OK. b. Click Save and navigate to the save location. Optionally, you can edit the filename. c. Click Save. 5. If you selected Remote: a. In the Protocol drop-down list, select the file transfer protocol: FTP, TFTP, RCP, or SCP. b. If using FTP and the remote device does not use the default FTP port, change the port. c. In the Host field, enter the hostname or IP address of the remote device. d. In the Location field, enter the pathname. To change the system backup file from the default name (backup_system.tar), specify the new name at the end of the path. e. In the User and Password fields, enter the username and password required for write access to the remote device. f. Click OK.
936 of 950
P e r f o r m a n c e
b y
D e s i g n
Note:
P e r f o r m a n c e
b y
937 of 950
Configuration Profiles
Configuration files are managed as configuration profiles. A configuration profile is simply a configuration file. You can locally save multiple configuration profiles on the AX device. The configuration management commands described in this section enable you to do the following:
Save the startup-config or running-config to a configuration profile. Copy locally saved configuration profiles. Delete locally saved configuration profiles. Compare two configuration profiles side by side to see the differences
other than the one stored in the image area used for the most recent reboot. (This is the profile that startup-config refers to by default.) This option makes it easier to test a configuration without altering the configuration stored in the image area. Note: Although the enable and admin passwords are loaded as part of the system configuration, they are not saved in the configuration profiles. Changes to the enable password or to the admin username or password take effect globally, regardless of the values that were in effect when a given configuration profile was saved.
938 of 950
P e r f o r m a n c e
b y
D e s i g n
Copying a profile from the compact flash to the hard disk is not supported.
939 of 950
link startup-config {default | profile-name} [primary | secondary] [cf] This command links the "startup-config" token to the specified configuration profile. By default, "startup-config" is linked to "default", which means the configuration profile stored in the image area from which the AX device most recently rebooted. This command enables you to easily test new configurations without replacing the configuration stored in the image area. The primary | secondary option specifies the image area. If you omit this option, the image area last used to boot is selected.
940 of 950
P e r f o r m a n c e
b y
D e s i g n
Note:
P e r f o r m a n c e
b y
941 of 950
CLI EXAMPLES
The following command saves the running-config to a configuration profile named slbconfig2:
AX(config)#write memory slbconfig2
The following command shows a list of the configuration profiles locally saved on the AX device. The first line of output lists the configuration profile that is currently linked to startup-config. If the profile name is default, then startup-config is linked to the configuration profile stored in the image area from which the AX device most recently rebooted.
AX(config)#show startup-config all Current Startup-config Profile: slb-v6 Profile-Name 1210test ipnat ipnat-l3 ipnat-phy ipv6 local-bwlist-123 mgmt slb slb-v4 slb-v6 Size 1957 1221 1305 1072 2722 3277 1318 1354 12944 13414 Time Jan 28 Jan 25 Jan 24 Jan 25 Jan 22 Jan 23 Jan 28 Jan 23 Jan 23 Jan 23 18:39 10:43 18:22 19:39 15:05 14:41 10:51 18:12 19:32 19:19 ------------------------------------------------------------
The following command copies the configuration profile currently linked to startup-config to a profile named slbconfig3:
AX(config)#copy startup-config slbconfig3
The following command compares the configuration profile currently linked to startup-config with configuration profile testcfg1. This example is abbreviated for clarity. The differences between the profiles are shown in this example in bold type.
942 of 950
P e r f o r m a n c e
b y
D e s i g n
P e r f o r m a n c e
b y
943 of 950
944 of 950
P e r f o r m a n c e
b y
D e s i g n
VLAN-to-VLAN Bridging
VLAN-to-VLAN bridging allows an AX device to selectively bridge traffic among multiple VLANs. The AX device selectively forwards packets from one VLAN to another based on the VLAN-to-VLAN bridging configuration on the AX device. This feature allows the traffic flow between VLANs to be tightly controlled through the AX device without the need to reconfigure the hosts in the separate VLANs. VLAN-to-VLAN bridging is useful in cases where reconfiguring the hosts on the network either into the same VLAN, or into different IP subnets, is not desired or is impractical. You can configure a bridge VLAN group to forward one of the following types of traffic:
IP traffic only (the default) This option includes typical traffic
between end hosts, such as ARP requests and responses. This option does not forward multicast packets.
All traffic This option forwards all types of traffic.
Configuration Notes VLAN-to-VLAN bridging is supported on AX devices deployed in transparent mode (Layer 2) or in gateway mode (Layer 3). Each VLAN to be bridged must be configured on the AX device. The normal rules for tagging apply:
If an interface belongs to only one VLAN, the interface can be
untagged.
If the interface belongs to more than one VLAN, the interface must be
tagged. Each VLAN can belong to only a single bridge VLAN group. Each bridge VLAN group can have a maximum of 8 member VLANs. Traffic from any VLAN in the group is bridged to all other VLANs in the group. Up to 64 bridge VLAN groups are supported. If the AX device is deployed in gateway mode, a Virtual Ethernet (VE) interface is required in the bridge VLAN group.
P e r f o r m a n c e
b y
945 of 950
946 of 950
P e r f o r m a n c e
b y
D e s i g n
Group Information and Statistics To display information for a bridge VLAN group, use the following command: show bridge-vlan-group [group-id] CLI Example Transparent Mode The commands in this section configure an AX device deployed in transparent mode to forward IP traffic between VLANs 2 and 3. The following commands configure the VLANs:
AX(config)#vlan 2 AX(config-vlan:2)#tagged ethernet 2 AX(config-vlan:2)#exit AX(config)#vlan 3 AX(config-vlan:3)#tagged ethernet 3 AX(config-vlan:3)#exit
CLI Example Gateway Mode The commands in this section configure an AX device deployed in gateway mode to forward IP traffic between VLANs 2 and 3 on IP subnet 192.168.1.x. The following commands configure the VLANs:
AX(config)#vlan 2 AX(config-vlan:2)#tagged ethernet 2 AX(config-vlan:2)#exit AX(config)#vlan 3 AX(config-vlan:3)#tagged ethernet 3 AX(config-vlan:3)#exit
The following commands configure the bridge VLAN group, which includes a VE:
AX(config)#bridge-vlan-group 1 AX(config-bridge-vlan-group:1)#vlan 2 to 3 AX(config-bridge-vlan-group:1)#router-interface ve 1 AX(config-bridge-vlan-group:1)#exit P e r f o r m a n c e D e s i g n Document No.: D-030-01-00-0006 - Ver. 2.4.3 6/21/2010 b y
947 of 950
948 of 950
P e r f o r m a n c e
b y
D e s i g n
P e r f o r m a n c e
b y
D e s i g n
950
P e r f o r m a n c e
b y
D e s i g n
Corporate Headquarters A10 Networks, Inc. 2309 Bering Dr. San Jose, CA 95131-1125 USA Tel: +1-408-325-8668 (main) Tel: +1-888-822-7210 (support toll-free in USA) Tel: +1-408-325-8676 (support direct dial) Fax: +1-408-325-8666 www.a10networks.com
950