Skip to content
Daniel Markstedt edited this page Nov 23, 2024 · 41 revisions

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 Network Drawer screenshot

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 also Netatalk Links

Clone this wiki locally