Running a routing protocol on a unix box doesn't mean you're using it as a router.
Roeland> Oh? ... routing, is routing.
The distinction is between a device having knowledge of routing tables and forwarding packets -- in fact in most instances where I am doing something like this I have "net.inet.ip.forwarding = 0".
picture something like this: | +-----------------+-------------------+ | | | net-x net-y net-z | | | rtr-a rtr-b rtr-c | | | +-----------------+-------------------+ | hst-m where host m is running some routing protocol and talking to a, b, and c. host m is clearly not routing packets, but it does have a very clear notion of how to get to networks x, y, and z. this means it doesn't have to rely on (nor should it, for problems previously stated) icmp redirects to determine the "proper" gateway. it also doesn't have to have multiple default routes: something that doesn't always work very well at the host level. it also knows from speaking to these routers that it can get to each network through the other routers, even though the "cost" will be higher. this means that if one of its gateway routers (a, b, or c) goes down, it can still find the three networks that it wants. running something like bgp (for example) between the host and the routers also gives it a clearer mechanism for determining if the router is down, as opposed to saying "gee...he seems awful quiet". -- |-----< "CODE WARRIOR" >-----| codewarrior@daemon.org * "ah! i see you have the internet twofsonet@graffiti.com (Andrew Brown) that goes *ping*!" andrew@crossbar.com * "information is power -- share the wealth."