Subject: Re: [netatalk-admins] AppleTalk-IP with Linux ipddp

From: "Ephraim Franzzup" <[email-masked]>
Date: Tue, 27 Apr 1999 11:17:38 PDT

>>I am trying to set up AppleTalk-IP Decapsulation on a 
>>SuSE 6.0 Linux machine, which has kernel 2.2.5-ac6 with ipddp,
>>netatalk 1.4b2+asun2.0a18.2 and MacGate 1.14 installed.
>
>What are you using for the physical stuff? the COPS card?

No, let me explain that again. :-)

My Linux box is doing AppleTalk and TCP/IP on Ethernet.

My AsanteTalk bridge is connected to the Ethernet on the one side and 
a LocalTalk network on the other side, it bridges AppleTalk packets 
between the Ethernet and the LocalTalk networks. However, the 
AsanteTalk has no awareness of IP.

My Duo is on the LocalTalk network. It can talk AppleTalk with the 
Linux box because the AsanteTalk bridge is bridging it to the 
Ethernet.

Due to the fact that the only type of network packet that exists on 
LocalTalk is an AppleTalk packet, the Duo cannot speak native IP to 
the Linux box.

However, back in the distant mists of time when LocalTalk was the norm 
for Macs, a protocol was introduced, called IPDDP or IP over DDP, that 
encapsulates IP packets inside AppleTalk packets. To use this, you set 
the Mac's TCP/IP stack to use the transport layer called "AppleTalk 
(MacIP)" rather than "Ethernet". You also need a server that handles 
the encapsulation/decapsulation, Apple's "MacIP" software used to do 
this but is now mostly obsolete as it does not run on Open Transport.

These days, the Linux kernel supports the ipddp protocol, and the 
MacGate package by Jay Schulist is supposed to handle what is called 
"AppleTalk IP Decapsulation", i.e. allowing an AppleTalk-based client 
such as my Duo to use IP over the IPDDP transport layer.

Unfortunately, I can't get it to work, probably because I don't 
understand it well enough.

>You could look at linux kernel documentation or ask macgate's author.

That's the problem, the kernel docs are very terse and written for 
people more knowledgeable than me. I also sent mail to the author, but 
have received no answer, perhaps he has other things on his mind. :-)

>The afpd working may just be due to the netatalk spitting out 
>appletalk stuff. IE, does afpd with -noddp work in the current 
>setup?

No, I meant to indicate that the Duo can talk AppleTalk with the Linux 
kernel, because it can see the afpd.

The Duo has no IP at this stage, because it can't even negotiate (over 
AppleTalk) a connection to the MacGate ipddp gateway - probably 
because I set it up wrong.

So, I am basically just really eager to find some more documentation 
on the subject, or even just on the subject of how the idppd 
encapsulation/decapsulation works in general, and how the MacIP-style 
client-server negotiation works in particular.

Thanks anyway,
Chris Ferebee
cf at ferebee dot net

______________________________________________________
Get Your Private, Free Email at http://www.hotmail.com

---

From: Mike Holling <[email-masked]>
Date: Tue, 27 Apr 1999 11:50:41 -0700 (PDT)

> understand it well enough.

Don't know about Linux, but I have a similar setup here.  I'm using an
SE/30 to bridge LocalTalk and EtherTalk, and a program called "macipgw" to
do MacIP en/decapsulation.  Now my old SE's on localtalk can
telnet out to the Internet.  "macipgw" runs on FreeBSD, and was easy to
set up.

- Mike

---

From: Sak Wathanasin <[email-masked]>
Date: Wed, 28 Apr 1999 00:29:28 +0100

In reply to Ephraim Franzzup's message of the 27/04/99 at 11:17 -0700,

> understand it well enough.

I have a similar setup here only I use a Webster Multigate to do the IP-in-DDP
en/de-capsulation for my PB170 (like your DUo, it's LocalTalk only), and before
I had the Webster MG, I also set up someting similar using IPNetRouter on a
Mac. What I had to do there was to create a 2nd logical i/f over the ethernet
i/f so that I could route pkts back to the IPDDP side. You may have to do
something similar on your Linux box: split your network into 2 (or more
subnets) and put the Duo on one, and the Linux box on both (using IP aliasing)
and set up a static route between the two sub-nets. Am I making sense? Anyway
e-mail me if you want more info, as it's off-topic for this list.

Sak Wathanasin
Network Analysis Limited
178 Wainbody Ave South, Coventry CV3 6BX, UK

Internet: [email-masked]
Phone: (+44) 1203 419996                    Fax: (+44) 1203 690690

---

From: Stefan Bethke <[email-masked]>
Date: Wed, 28 Apr 1999 13:22:49 +0200

> telnet out to the Internet.  "macipgw" runs on FreeBSD, and was easy to

..but only works on *BSD, not Linux.

MacIP (or, as it is sometimes called, IPDDP or KIP) works basically by
ecapsulating the IP paket in a DDP packet of type 22.  Additionally, there
is some ARP-type operation to determine the AppleTalk address for some IP
address. It works by looking up the NBP entry for "192.168.0.1:IPADDRESS"
or ":IPGATEWAY".

Additionally, a gateway can offer dynamic address assignment. This is
implemented trough three simple ATP requests on the same socket.

I don't know about Linux' functionality, so I can't comment on your
specific problem.

Stefan

--
Mühlendamm 12           |  Voice +49-40-256848, +49-177-3504009
D-22089 Hamburg         |  e-mail: [email-masked]
Germany                 |          [email-masked]