kazmax - Linux で自宅サーバー

atalk - スペシャルファイル (デバイス)の説明 - Linux コマンド集 一覧表

  1. 名前
  2. 書式
  3. 説明
  4. アドレッシング
  5. 関連項目

名前

atalk - AppleTalk プロトコルファミリー

書式

#include <sys/types.h>
#include <netatalk/at.h>

説明

AppleTalk プロトコルファミリーは、 データグラム配送プロトコル (Datagram Delivery Protocol, DDP) の 上位層のプロトコルの集合で、AppleTalk アドレスフォーマットを使う。 AppleTalk ファミリーは SOCK_STREAM (ADSP), SOCK_DGRAM (DDP), SOCK_RDM (ATP), SOCK_SEQPACKET (ASP) を提供する。 現在のところカーネルには DDP のみが実装されている。 ATP と ASP はユーザーレベルのライブラリで実装されている。 ADSP の実装も計画されている。

アドレッシング

AppleTalk アドレスは 3 バイトの大きさで、 ネットワークバイトオーダーで格納される。 インクルードファイル < netatalk/at.h >で AppleTalk アドレスフォーマットが定義されている。

AppleTalk プロトコルファミリーのソケットは、以下のアドレス構造体を使う。

struct sockaddr_at {
	short		sat_family;
	u_char		sat_port;
	struct at_addr	sat_addr;
	char		sat_zero[ 8 ];
};


ソケットのポートは   bind (2) によって設定できる。 bind のノードは常に、「そのノード」を表す ATADDR_ANYNODE でなければならない。 ネットは ATADDR_ANYNET または ATADDR_LATENET である。 ATADDR_ANYNET はマシンの (最初に設定される)「プライマリ」アドレスに対応する。 ATADDR_LATENET になっていると、送信パケットのアドレスは送信時に決定される。 すなわち、後 (late) で決まる。 ATADDR_LATENET は、各ネットワークインターフェースに対して ひとつずつソケットをオープンすることと等価である。 ソケットのポートと、プライマリアドレスまたは ATADDR_LATENET の一方が   getsockname (2) によって返される。

関連項目