エントリは次のようなフォーマットになっています:
network_id semantics flags family protoname device libraries
エントリを構成するフィールドは次の通りです:
このファイル内のエントリの順序によって、指定されたネットワークタイプに対する RPC ライブラリコードのトランスポートの優先順位が決まります。 例えば、サンプルとしてネットワーク設定ファイルが下のようになっていたとします:
udp6 tpi_clts v inet6 udp - - tcp6 tpi_cots_ord v inet6 tcp - - udp tpi_clts v inet udp - - tcp tpi_cots_ord v inet tcp - - rawip tpi_raw - inet - - - local tpi_cots_ord - loopback - - -
このとき、ネットワークタイプとして udp を使用して RPC ライブラリ関数を呼び出すと (rpc3 参照)、 まず最初に udp6 を試してから udp を試します。
getnetconfig(3) や、その関連の関数はこのファイルを構文解析して次のようなフォーマットの 構造体を返します:
struct netconfig {
char *nc_netid; /* ネットワーク ID */
unsigned long nc_semantics; /* セマンティクス (下記参照) */
unsigned long nc_flag; /* フラグ (下記参照) */
char *nc_protofmly; /* プロトコルファミリ */
char *nc_proto; /* プロトコル名 */
char *nc_device; /* ネットワークデバイスのパス名 (未使用) */
unsigned long nc_nlookups; /* 参照するライブラリの数 (未使用) */
char **nc_lookups; /* ライブラリ名の並び (未使用) */
unsigned long nc_unused[9]; /* 予約 */
};