netatalk.io

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

macOS 15.1 Network Drawer Example

Examples of clients where Netatalk has been tested:

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


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-12-02