> However, ICMP redirect message might be a good idea. If ICMP redirect
> message went directly to the client host, I think that we would use the
> ICMP redirect message just like http redirects for load balancing. But, as
> far as I know, ICMP redirect message is usually sent to intermediate
> routers. I need check the kernel code how the ICMP redirect message is
> used.
In RFC 1122:
A Redirect message SHOULD be silently discarded if the new gateway address
it specifies is not on the same connected (sub-) net through which the
Redirect arrived [INTRO:2, Appendix A], or if the source of the Redirect
is not the current first-hop gateway for the specified destination (see
Section 3.3.1).
Maybe there's an updated RFC on this, but... basically, this rule will
prevent you from using ICMP Redirects on clients -- they'll probably drop
the redirect, since the host you redirect to most likely won't be on the
same network the clients are on.
You could use this to tell the router sending to the director to redirect
to a real server, but I don't think that will cause the intended effect.
Is there an updated definition for an ICMP Redirect that I'm missing?
--------------
In a separate vein... you might be able to use this to implement
director failover. On the router, route traffic destined for the balanced
IP _through_ one of the director's interfaces. Then, when a backup
director detects that the current primary is down, simply send a redirect
to the router to send said traffic through itself instead.
This might actually be better than the ARP takeover method; I'm not sure
that routers are required to honor (seemingly) random ARP announcements if
they've already got it in their cache, are they? On the other hand, I
think they are required to honor ICMP Redirects from hosts on the same
subnet, yes?
It also has the advantage of not being tied to the ethernet medium --
it'll work over any medium that IP will work over, assuming it works at
all. Small advantage, considering that just about everytone is using
ethernet at this point... but.. *shrug*
Any thoughts?
Kyle Sparger
|