In a hot-standby configuration, the active ServerIron “owned” the source NAT IP address, responding to ARP requests and performing source NAT with the configured source IP address. When failover occurred, the standby ServerIron, also configured with the same source NAT IP address, took over these duties. However, the source NAT sessions were not synchronized between the peers.
In Symmetric SLB configurations, ownership of the source IP address is based on the port range. The peer controlling the upper port range for the source IP address is the owner of the address and responds to ARP requests. If the owner of the source IP address fails, the peer takes over ownership of the source IP address. When this feature is enabled, the two ServerIrons report and receive the ownership of the source IP address using a variation of the SSLB protocol. When the ports used for source NAT for a given source IP address are divided in this way, it allows the same source IP address to be configured on both peers in all supported high-availability configurations, including active-standby and active-active SSLB.
Figure 6.13 illustrates a sample active-active SSLB configuration that uses shared source IP addresses.
ServerIron-A(config)# ip address 10.10.1.1 255.255.0.0ServerIron-A(config)# ip default-gateway 10.10.1.254
ServerIron-A(config)# server port 80
ServerIron-A(config-port-http)# session-sync
ServerIron-A(config-port-http)# tcp
ServerIron-A(config-port-http)# exit
ServerIron-A(config)# server port 21
ServerIron-A(config-port-ftp)# session-sync
ServerIron-A(config-port-ftp)# exit
ServerIron-A(config)# server port 23
ServerIron-A(config-port-telnet)# session-sync
ServerIron-A(config-port-telnet)# exit
ServerIron-A(config)# server source-nat-ip 10.10.1.10 255.255.0.0 0.0.0.0 port-ra 1
ServerIron-A(config)# server source-nat-ip 10.10.1.11 255.255.0.0 0.0.0.0 port-ra 1
ServerIron-A(config)# server source-nat-ip 10.10.1.12 255.255.0.0 0.0.0.0 port-ra 1
ServerIron-A(config)# server router-ports ethernet 3/1
ServerIron-A(config)#server real rs1 10.10.1.30
ServerIron-A(config-rs-rs1)# port http
ServerIron-A(config-rs-rs1)# port http url "HEAD /"
ServerIron-A(config-rs-rs1)# port ftp
ServerIron-A(config-rs-rs1)# port rtsp
ServerIron-A(config-rs-rs1)# port telnet
ServerIron-A(config-rs-rs1)# exit
ServerIron-A(config)# server real rs2 10.10.1.31
ServerIron-A(config-rs-rs2)# port http
ServerIron-A(config-rs-rs2)# port http url "HEAD /"
ServerIron-A(config-rs-rs2)# port ftp
ServerIron-A(config-rs-rs2)# port rtsp
ServerIron-A(config-rs-rs2)# port telnet
ServerIron-A(config-rs-rs2)# exit
ServerIron-A(config)# server real rs3 10.10.2.30
ServerIron-A(config-rs-rs3)# port http
ServerIron-A(config-rs-rs3)# port http url "HEAD /"
ServerIron-A(config-rs-rs3)# port ftp
ServerIron-A(config-rs-rs3)# port telnet
ServerIron-A(config-rs-rs3)# exit
ServerIron-A(config)# server real rs4 10.10.2.31
ServerIron-A(config-rs-rs4)# port http
ServerIron-A(config-rs-rs4)# port http url "HEAD /"
ServerIron-A(config-rs-rs4)# port ftp
ServerIron-A(config-rs-rs4)# port telnet
ServerIron-A(config-rs-rs4)# exit
ServerIron-A(config)# server virtual-name-or-ip test 10.10.1.100
ServerIron-A(config-vs-test)# sym-priority 200
ServerIron-A(config-vs-test)# sym-active
ServerIron-A(config-vs-test)# port http
ServerIron-A(config-vs-test)# port ftp
ServerIron-A(config-vs-test)# port telnet
ServerIron-A(config-vs-test)# bind http rs1 http rs2 http rs3 http rs4 http
ServerIron-A(config-vs-test)# bind ftp rs1 ftp rs2 ftp rs3 ftp rs4 ftp
ServerIron-A(config-vs-test)# bind telnet rs1 telnet rs2 telnet rs3 telnet rs4 telnet
ServerIron-A(config-vs-test)# exit
ServerIron-B(config)# ip address 10.10.1.2 255.255.0.0ServerIron-B(config)# ip default-gateway 10.10.1.254
ServerIron-B(config)# server port 80
ServerIron-B(config-port-http)# session-sync
ServerIron-B(config-port-http)# tcp
ServerIron-B(config-port-http)# exit
ServerIron-B(config)#server port 21
ServerIron-B(config-port-ftp)#session-sync
ServerIron-B(config-port-ftp)#exit
ServerIron-B(config)# server port 23
ServerIron-B(config-port-telnet)# session-sync
ServerIron-B(config-port-telnet)# exit
ServerIron-B(config)# server source-nat-ip 10.10.1.10 255.255.0.0 0.0.0.0 port-ra 2
ServerIron-B(config)# server source-nat-ip 10.10.1.11 255.255.0.0 0.0.0.0 port-ra 2
ServerIron-B(config)# server source-nat-ip 10.10.1.12 255.255.0.0 0.0.0.0 port-ra 2
ServerIron-B(config)# server real rs1 10.10.1.30ServerIron-B(config-rs-rs1)# port http
ServerIron-B(config-rs-rs1)# port http url "HEAD /"
ServerIron-B(config-rs-rs1)# port ftp
ServerIron-B(config-rs-rs1)# port rtsp
ServerIron-B(config-rs-rs1)# port telnet
ServerIron-B(config-rs-rs1)# exit
ServerIron-B(config)# server real rs2 10.10.1.31
ServerIron-B(config-rs-rs2)# port http
ServerIron-B(config-rs-rs2)# port http url "HEAD /"
ServerIron-B(config-rs-rs2)# port ftp
ServerIron-B(config-rs-rs2)# port rtsp
ServerIron-B(config-rs-rs2)# port telnet
ServerIron-B(config-rs-rs2)# exit
ServerIron-B(config)# server real rs3 10.10.2.30
ServerIron-B(config-rs-rs3)# port http
ServerIron-B(config-rs-rs3)# port http url "HEAD /"
ServerIron-B(config-rs-rs3)# port ftp
ServerIron-B(config-rs-rs3)# port telnet
ServerIron-B(config-rs-rs3)# exit
ServerIron-B(config)# server real rs4 10.10.2.31
ServerIron-B(config-rs-rs4)# port http
ServerIron-B(config-rs-rs4)# port http url "HEAD /"
ServerIron-B(config-rs-rs4)# port ftp
ServerIron-B(config-rs-rs4)# port telnet
ServerIron-B(config-rs-rs4)# exit
ServerIron-B(config)# server virtual-name-or-ip test 10.10.1.100
ServerIron-B(config-vs-test)# sym-priority 100
ServerIron-B(config-vs-test)# sym-active
ServerIron-B(config-vs-test)# port http
ServerIron-B(config-vs-test)# port ftp
ServerIron-B(config-vs-test)# port telnet
ServerIron-B(config-vs-test)# bind http rs1 http rs2 http rs3 http rs4 http
ServerIron-B(config-vs-test)# bind ftp rs1 ftp rs2 ftp rs3 ftp rs4 ftp
ServerIron-B(config-vs-test)# bind telnet rs1 telnet rs2 telnet rs3 telnet rs4 telnet
ServerIron-B(config-vs-test)# exit
Use these commands with the server vip-group command to guarantee simultaneous VIP failover in the event VRRP-E fails over to a Backup router.