Which kernel are you running? Have you tried upgrading it? You might also consider having arp get entries from a file. A pretty in depth read-up on ARP for Linux is http://linux-ip.net/html/ether-arp.html - if your interested.

Shawn Grover wrote:
At the last meeting I had asked for any tips on dealing with a connectivity
issue I was having.  My Gentoo server and workstation installs would
periodically loose their connection to the internet.  To restore
connectivity, I had to ping the external IP address of my firewall.  It was
suggested to look into icmp and upmp, but other than that I think I stumped
the crowd.

I have found a solution, though I don't think it's the "right" solution as
it doesn't address or identify the root cause of the problem.  It turns out
that when I have lost connectivity, my ARP cache is empty (doing "arp -n" or
"arp -a" at the command prompt displays your cache).  ARP is used to map the
network card's MAC addresses to an IP address, which is required for TCP/IP
over ethernet.  When I have a connection, I have an ARP entry to my
firewall's internal IP address.  So, as a work around, I wrote out the entry
when I had a connection, then did the following command:

arp -s 192.168.0.1 ff:ff:ff:ff:ff:ff

(Where the ff:ff:ff:ff:ff:ff is the MAC address I wrote down).

This adds a permanent entry (well, until the next reboot) into the arp
cache. Once I did this, I didn't loose my internet connection at all.


Now, as I said, this doesn't resolve the core problem - why am I loosing the
arp cache entry?  I've done some digging on this, and it is sometimes caused
by duplicate IP addresses on the same network, or assigning the subnet
broadcast address to a device.  That's not the case on my network though.
So I'm still looking (though not quite as hard anymore).  I thought I'd post
here to let those who tried to help know I found a solution, and to possibly
help anyone who may run into a similar problem (my research indicated
similar issues on other platforms).

Shawn






Reply via email to