[svlug] TRYING TO CONNECT MAC AND LINUX ON PRIVATE NETWORK 192.168.1.0

Aaron Evans ahe72 at bellsouth.net
Thu Nov 1 16:17:01 PST 2001


 PROBLEM WITH NETWORKING REDHAT LINUX 7 WITH MACINTOSH POWERBOOK OS9. LINUX
USE NETGEAR FA311
NETWORK CARDS. CANNOT GET THE COMPUTERS TO DETECT EACH OTHER. BOTH COMPUTERS
HAVE SET IP ADDRESSES
MANUALLY.

 I am setting up a network with a Linux machine and a macintosh.  have set
it up on 192.168.1.0 private networks. I set the IP address manually to
192.168.1.2 in the TCP-IP
control panel on the mac. On the linux box i have installed 2 netgear FA311
cards. I had to install the driver natsemi.o kernel module in order to
detect the cards. Then i was able to use ifconfig to give eth0 the
192.168.1.1 address. The route for the 192.168.1.0 network goes out of eth0.
  Ok all of this is fine and dandy and should just hook up. I have put this
mac on a network with a red hat linux computer before, but never with
netgear fa311 cards. I performed some troubleshooting using ping and tcpdump
to determine what the packets are doing. I know they are
doing something, i can see the ports of the netgear switch lighting up when
i ping.

  DO you know anythiung about tcpdump, arp, ping? if so, here is what i know
so far using this:
  i ran tcpdump -n -t -e ((-t)no timestamp,(-n)no DNS, (-e)show ethernet
headers) so that i could see what the packets do when i try to ping the mac
from the linux. 
   The first thing that happens is the linux broadcasts out a ARP request
looking for the computer that has the 192.168.1.2 ip address:

   TCPDUMP OUTPUT 1:
        eth0 > 0:0:0:0:0:0 0:a0:cc:78:30:59 arp 42: arp who-has 192.168.1.2
tell 192.168.1.1
 note: the hardware address of the linux card eth0 is  0:a0:cc:78:30:59

     the linux computer is given no response from the mac. Looking closely
at the above tcpdump output it seemed like the source/destination hardware
addresses are reversed. from what i've seen on tcpdump the first entry is
source, the second destination. assuming this the source would be
0:0:0:0:0:0 (or broadcast) and the destination would be 0:a0:cc:78:30:59
(the linux computer). this is backwards. maybe my version of tcpdump is
backwards seems wierd.

     SO,, the next thing i do is manually give the ethernet address of the
macintosh computer to my linux computer using the "arp" command:
    arp -s 192.168.1.2 00:30:65:B5:B7:FE
  note:  the hardware address of the macintosh is 00:30:65:B5:B7:FE

and thhis adds the hardware address mapping to the ARP cache.
Now, i try to ping the macintosh computer while tcpdump runs to see what
happens:

    TCPDUMP OUTPUT 2:
        eth0 > 0:0:0:0:0:0 0:a0:cc:78:30:59 arp 42: ip 98: 192.168.1.1 >
192.168.1.2: icmp: echo request
 note: the hardware address of the linux card eth0 is  0:a0:cc:78:30:59

   There is nothing here that says anything about the destination ethernet
address being that of the macintosh (00:30:65:B5:B7:FE). Also the
source/destination still seems to be backwards, but even if it wasn't would
ping send out the icmp packet to the broadcast??


    SO, the next thing i try is to access the macintosh's web server from my
linux computer. still using tcpdump, i recieve thihs info when trying to
connect to the mac web server:

   TCPDUMP OUTPUT 3:
        eth0 > 0:0:0:0:0:0 0:a0:cc:78:30:59 arp 42: ip 74: 192.168.1.1.1035
> 192.168.1.2.www: S 196469905:1964699055(0) win 32120 <mss
1460,sackOK,timestamp 5840826 0,nop,wscale0> (DF)

 note: the hardware address of the linux card eth0 is  0:a0:cc:78:30:59

Here we see the linux trying to initiate a connection with the macintosh
using the SYN bit (the S). still there is no information about the macintosh
hardware address and the source/destination hardware address's seem
reversed. even if the source/dest were correct from above, why would the
destination be the broadcast, it should be the macintosh hardware address?!

    I don't know if any of this makes any sense to you. I have set up red
hat llinux before and never really had to configure much except ifconfig,
route. Maybe the card is somehow sending packets wrong? argggggggggg.

   It just seemed so trivial for me to connect a mac with a linux on a
private network at first thought. 






More information about the svlug mailing list