lkml.org 
[lkml]   [1999]   [Feb]   [18]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectARP - hardtype 6 on ether device - [kernelpatch]
Hello!

Last week I posted the following to the linux-kernel list:

>We have a switched ethernet/token ring network environment based on
>cabletron switch hardware (SmartSwitch 6000 and SmartSwitch 9000).

>The problem:
>I can't reach a Workstation or Server in the switched
>token ring segment with a linux box in the ethernet segement
>(i. e. ping, telnet etc.). If I manually add the mac-address of
>the destination in the token ring to the local arp cache of the
>linux box in the ethernet, all communication works fine.

>With some work on sniffering the network and some help of cabletron
>technical support I find out the following:

>The linux box sends the arp request packet with hardware type 1 but
>the switch replies the packet with hardware type 6 in the arp
packet....
--- snip ---

I got some replies which are all saying that it isn't the work of the PC

to accept the arp replies with hard type 6 on the ethernet. Sounds ok
to me.

I contacted cabletron again; they provided a firmware upgrade for
the switches to me. The release note of the new firmware says that
it will send to arp replies to the ethernet (one with hard type 6
(IEEE802)
and another with hard type 1 (ethernet)) to support TCP/IP
stacks which are not rfc1042 comlpiant, too. I installed the
firmware - result it doesen't work much better than the old version.
I can't see the two arp replies with tcpdump or such.

Again, I did some work on sniffering. I asked myself why are the
other UNIX machines (AIX, DEC UNIX) are having no problems.
And at least why are also WinNT and Win95 working with this
cabletron-switch behaviour.

Ok, for short tcpdump shows me, that the other machines are
accepting both, arp replies with hard type 6 and hard type 1
on ethernet.


09:00:54.108838 eth0 > 0:0:0:0:0:0 0:a0:24:4d:b2:b1 arp 42:
arp who-has 10.1.2.179 tell 10.1.190.10 (0:a0:24:4d:b2:b1)
0001 0800 0604 0001 00a0 244d b2b1 0b01
be0a 0000 0000 0000 0b01 02b3
09:00:54.110537 eth0 < 0:0:6f:d5:4a:ac 0:0:0:0:0:1 arp 60:
arp reply 10.1.2.179 is-at 0:0:6f:d5:4a:ac
(0:a0:24:4d:b2:b1) hardware #6
0006 0800 0604 0002 0000 6fd5 4aac 0b01
02b3 00a0 244d b2b1 0b01 be0a 0000 0000
0000 0000 0000 0000 0000 0000 0000

the arp reply is discarded by the linux kernel but accepted by
the other UNIX machines.

After that, I looked to the linux-kernel source and patched
something in /linux/net/ipv4/arp.c to make the kernel accept
both arp types on ethernet. All our networking with the linux
boxes is working right now.

Any suggestions on this?
It would be kind if there is somebody who can take a
look at it.

The patch for kernel 2.2.1 and a small readme is attached
below.

Thanks,
-Volker-

[unhandled content-type:application/x-gzip][unhandled content-type:application/x-gzip]
\
 
 \ /
  Last update: 2005-03-22 13:50    [W:0.156 / U:0.052 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site