The fully documented spec can be found in section 3.8 of this document: https://datatracker.ietf.org/doc/html/draft-ietf-appleip-MacIP-02
All replies from the server include space for 8 IP addresses, even the error responses (which tacks on the error message to the end of the packet). This is based on observation of a Shiva Fastpath 5 running K-STAR and Apple's IP Gateway software. The version of macipgw distributed with Netatalk has been corrected to reflect this as well and Wireshark has been updated to support decoding MacIP service packets.
The only difference between an ASSIGN response and SERVER response is the first IP address has a value for ASSIGN. For SERVER and ERROR responses the first IP address is all zeros. The client only uses the name server and broadcast address fields. The rest can be set to anything, but Apple IP Gateway sets the 5th address to the subnet mask.
There was no definition for the ATP user bytes, but Apple IP Gateway appears to have put a version number in the first two bytes, which macipgw copied. The Fastpath's K-STAR software puts a 0x08 in the last user byte.
The fully documented spec can be found in section 3.8 of this document: https://datatracker.ietf.org/doc/html/draft-ietf-appleip-MacIP-02
All replies from the server include space for 8 IP addresses, even the error responses (which tacks on the error message to the end of the packet). This is based on observation of a Shiva Fastpath 5 running K-STAR and Apple's IP Gateway software. The version of macipgw distributed with Netatalk has been corrected to reflect this as well and Wireshark has been updated to support decoding MacIP service packets.
The only difference between an ASSIGN response and SERVER response is the first IP address has a value for ASSIGN. For SERVER and ERROR responses the first IP address is all zeros. The client only uses the name server and broadcast address fields. The rest can be set to anything, but Apple IP Gateway sets the 5th address to the subnet mask.
There was no definition for the ATP user bytes, but Apple IP Gateway appears to have put a version number in the first two bytes, which macipgw copied. The Fastpath's K-STAR software puts a 0x08 in the last user byte.