Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 2 Nov 98 12:07:54 PST
From:      "D. Alex Neilson" <neilson@www.nugate.com>
To:        "Nick A. Fikouras" <nick@dcs.shef.ac.uk>
Cc:        "freebsd-questions@FreeBSD.ORG" <freebsd-questions@FreeBSD.ORG>, Alex Neilson <neilson@nugate.com>
Subject:   Re: Static Route, need help (was: Re: Static Route (Correction))
Message-ID:  <CMM.0.90.4.910037274.neilson@www.nugate.com>
In-Reply-To: Your message of Mon, 02 Nov 1998 12:07:22 %2B0000

next in thread | raw e-mail | index | archive | help
	The main problem is that whenever a static route to a host is
	created, for no apparent reason, an ARP entry is created for the
	particular host indicating as its MAC address the address of the
	interface that was passed as argumen in the 'route add -host'
	command (!).

	What makes things even worse is that static links seem to create
	permanent arp entries. You can verify that by doing arp -a. In my
	case I had two machines that could not exchange traffic due to the
	folly arp table. All traffic transmitted by a node was destined at
	the link layer for itself!!!!.  I checked with a network analyser.

Oh yes!  "tcpdump -e", shows this quite clearly: MAC source _and_
destination address the same!

	The way I've overcome this is, I've created I a file with all the
	proper arp entries and I load it up manually after booting has
	completed (check arp manual page for this). I know this not the
	most scientific way of doing it, if anybody has any suggestions
	I'm willing to change.

I first tried replacing the bad arp entry with "arp -S" to no
avail (it even nukes the route) .  After much aggrevation, I
made mini and micro network routes with netmasks like 0xfffffff8
or as small as 0xfffffffe (the latter actually seems to work,
though I have't extensively tested it yet).

I had previously played with "arp -f <file>" to no avail,
but since you reported success, I tried again and was also
"successful": first a 

	myhost# route add -host 192.168.60.60 -interface vx0

to get

  Destination        Gateway            Flags     Refs     Use   Netif
  192.168.60.60     0:60:8:4:4:ed      UHLS        0        0      vx0

then a 
	myhost# arp -f arp.entries

	/* file arp.entries is just "192.168.60.60 08:00:20:73:87:89 pub\n" */

to get

  Destination        Gateway            Flags     Refs   Use  Netif
  192.168.60.60     0:60:8:4:4:ed      UHLS        0      0     vx0
  192.168.60.60/32  8:0:20:73:87:89    ULS2c       0      0    vx0

and we have arp entries

  myhost# arp -a
  myhost.domain.com (192.168.60.60) at 0:60:8:4:4:ed permanent
  myhost.domain.com (192.168.60.60) at 8:0:20:73:87:89 permanent published

and then just "arp -d myhost" and the first arp entry goes away, leaving
the desired second one, and things work the way we want.

Were you able to avoid the deletion step?


Alex Neilson

To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-questions" in the body of the message



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CMM.0.90.4.910037274.neilson>