Home
Welcome to the Netatalk wiki - Open Source file sharing for the Apple Macintosh since 1990! Here you can find and contribute to collaborative articles covering topics regarding Netatalk features as well as Mac and Apple II file sharing and networking.
What is Netatalk?
Netatalk is a cross-platform open source implementation of AFP (Apple Filing Protocol), the protocol used for file sharing on Apple II, Classic Mac OS, and Mac OS X. At the time of writing, AFP is one of several file sharing protocols with client support in macOS.
The Netatalk software runs on a NIX host machine (Linux distro, BSD distro, Solaris, or macOS) while a Mac client would connect to the file server via the Network drawer / Locations (on macOS) or the Chooser (on Classic Mac OS.)
macOS 15.1 Network Drawer Example
Examples of clients where Netatalk has been tested:
- AppleShare Workstation 1.1 (AFP1.1)
- Apple IIgs GS/OS System 6.0.1 (AFP2.0)
- Apple IIgs GS/OS System 6.0.1 using AFPBridge to connect via TCP/IP (AFP2.0)
- Apple IIgs ProDOS 8 2.0.3 client bundled with the above (AFP2.0)
- Macintosh System 7.1 with the stock AppleShare Client 3.5 (AFP2.1)
- Mac OS 8.1 with the stock AppleShare Client 3.7.4 via both AppleTalk and TCP/IP (AFP2.2)
- Mac OS 9.0.4 with the stock AppleShare Client 3.8.6 via TCP/IP (AFP2.2)
- Mac OS X 10.1 via TCP/IP (AFP3.0)
- Mac OS X 10.4 via TCP/IP (AFP3.2)
- macOS 10.15 via TCP/IP (AFP3.4)
Architecture
Netatalk implements AFP over TCP. The session layer used to carry AFP over TCP is called DSI. The complete stack looks like this:
AFP
|
DSI
|
| (port:548)
|
-+---------------------------+- (kernel boundary)
| Socket |
+------------+--------------+
| TCP | UDP |
+------------+--------------+
| IP v4 or v6 |
+---------------------------+
| Network Interface |
+---------------------------+
When Netatalk is built with AFP over AppleTalk for very old Macs, the complete network stack looks like this on a *BSD system:
AFP AFP
| |
ASP PAP DSI
\ / |
ATP RTMP NBP ZIP AEP | (port:548)
| | | | | |
-+---------------------------------------------------+- (kernel boundary)
| Socket |
+-----------------------+------------+--------------+
| | TCP | UDP |
| DDP +------------+--------------+
| | IP v4 or v6 |
+-----------------------+---------------------------+
| Network Interface |
+---------------------------------------------------+
See the DEVELOPER readme for descriptions of the AppleTalk family of protocols.
External Links
See Netatalk Links
This is a mirror of the Netatalk GitHub Wiki. Please visit the original page if you want to correct an error or contribute new contents.
Last updated 2024-11-20