Re: Patch for route.c

Richard B. Johnson (
Tue, 8 Apr 1997 09:00:19 -0400 (EDT)

On 8 Apr 1997, Michael O'Reilly wrote:

> "Richard B. Johnson" <> writes:
> > Just a note. If you do NOT have two or more different network paths into
> > or out of your machine (like two Ethernet cards, etc), you do NOT want
> > to run `gated`. For some strange reason, it runs by default on Sun machines.
> > There is no way that a machine with a single connection to a network can
> > provide a "route" to something on the same wire. To provide such a
> > "route" results in a large amount of extra traffic because the packets are
> > duplicated.
> This is nonsense. We run gated on many machines with a single

This is _NOT_ nonsense! If you are running gated in the manner, you
are contributing to LAN congestion by duplicating packets.

> And what if that single wire is a transit link? this ethernet is
> joining two large networks, and there's a server on that ethernet?
> then it needs routes for all the subnets in each network.

A machine on __any__ single __physical__ network link needs only two routes.
Note the emphasis on "any" and "physical".

(1) A route to its local network or subnet.
(2) A route to all other places.

If it's configured any differently, there will be duplicate packets on
the same physical link. This does not mean that it won't work. It just
means that it isn't working correctly.

Note (2) above. On a massive network, this is typically the router that
connects to other subnets and/or to the internet. Since gated doesn't
have a clue (and can't be told) what physical links you have connected
to that router, you had better not let it guess. Even that router should
have static routes.

When you run a PPP link, you set up a temporary route. When the PPP link
is disconnected, you tear down that route.

> > Since `traceroute` only uses IP addresses, not Ethernet hardware addresses,
> > everything looks fine with traceroute because the IP addresses don't
> > change during the duplicate routing. You need to use a Network Analyzer,
> > or Sun's snoop to see what is happening. You will see the same packets
> > duplicated with different hardware addresses.
> This is nonsense. Traceroute will show you the ip number of each
> hop. If the packet isn't being routed through a machine, it won't show
> on traceroute, but if it IS routed (i.e. because gated is incorrectly
> configured), then it WILL show on the traceroute.

This is _NOT_ nonsense! Traceroute will see the routing that occurred
in spite of the fact that another machine will take these same packets,
duplicate them on the same wire, and send them to the same destination
address. The destination address will then get the duplicate packets
which it will throw away in the (overburdened) network code.

Dick Johnson
Richard B. Johnson
Project Engineer
Analogic Corporation
Voice : (508) 977-3000 ext. 3754
Fax : (508) 532-6097
Modem : (508) 977-6870
Ftp :
Email :,
Penguin : Linux version 2.1.32 on an i586 machine (66.15 BogoMips).
Warning : I read unsolicited mail for $350.00 per hour. Supply billing address.