ICMP Redirect : A Common Issue for SLB

    ICMP redirect message is a technique to minimum the routing table of a host. The topology is a general example for ICMP redirect and it can be generated and sent by Router A when the host in network A sends packets to network C.

   The situations are:

  1. A host in network A sends packets to network C. The default gateway of the host is router A and network C is a remote network, so the host forwards the packet destined for network C to its default router router A.
  2. Router A checks its routing table and finds that the next hop for the route to the network C is router B.
  3. An ICMP redirect message is sent to the host informing it that router B is the better route for sending packets to network C.
  4. Router A then forwards packets to router B.
  5. The host adds a route to its routing table for network C IP address with  IP address of router B as the gateway. Subsequent packets from the host to network C are forwarded to router B instead of A. (For Windows platform, this routing table is added for 10 minutes.)

    There is one more situation which triggers router A to send an ICMP redirect message to the host; The link between network B and router A is down.

 

Drawing1

    The purpose of this note is for Alteon implementation. Many people like to implement Alteon with one-arm server load balance (SLB) as the topology below because it avoids re-cabling and minimums network down time. But, due to the ICMP redirect behavior, this makes SLB operate abnormally.

alteon   

    The only one way to solve this "issue" is creating a proxy IP and binding it to the port connecting to the switch. This is a easy and simple tip to do but comes with one disadvantage. Servers can only see accesses with only one source IP address (proxy IP address) unless we enable x-forward feature on Alteon. 

0 comments: