Provided by: manpages-ja_0.5.0.0.20161015+dfsg-1_all
名前
services - インターネット ネットワークサービス リスト
説明
services は、人が分かりやすい形のインターネットサービスの名前と、 それらのサービスに割り当 てられたポート番号や プロトコル種別の対応関係が書かれているテキストファイルである。 ネット ワーク上で動作するプログラムはすべて、 そのサービスに対応するポート番号 (とプロトコル) を 得るために、 このファイルを調べる必要がある。 C ライブラリ関数である getservent(3), getservbyname(3), getservbyport(3), setservent(3), endservent(3) を利用することで、プログ ラムはこのファイルを調べることができる。 ポート番号は、IANA (Internet Assigned Numbers Authority) によって 割り当てられており、現在 はポート番号を割り当てる際に TCP と UDP の両方のプロトコルを割り当てることになっている。 そのため、ほとんどのサービスに対して、 たとえ TCP だけのサービスの場合であっても、対応する 項目が二つあることになる。 1024 より小さいポート番号 (いわゆる "low numbered" ポート) は 管理者 (root) 権限によっての み使用することができる (bind(2), tcp(7), udp(7) 参照)。 これは、これらのポートに接続する クライアントに対して、 そのポートで動いているサービスが標準的な実装であり、 その計算機の ユーザーが動かしている 不正なサービスではないことを保証するためである。 IANA に明記されて いるよく使用されるポート番号は、 通常このような管理者だけが使用できる範囲に配置される。 services ファイルにあるサービスに対する項目があっても、必ずしもそのサービスが現 在その計算 機で動いている訳ではない。利用可能なインターネットサービスの設定に ついては inetd.conf(5) に記述されている。ただし、すべてのサービスが inetd(8) によって起動されるわけではないの で、 inetd.conf(5) には書かれていないサービスもあることに注意する必要がある。 特に、ネット ニュース (NNTP) や メール (SMTP) のサーバーは、システム起動時の スクリプトから起動されるこ とが多い。 services ファイルの場所は、 <netdb.h> 中の _PATH_SERVICES によって定義されている。 この値 は通常 /etc/services に設定されている。 1 行につき 1 サービスが記述されており、以下の形式である。 service-name port/protocol [aliases ...] 各項目は以下の通り。 service-name サービスを表す分かりやすい名前であり、検索の際にも使用される。 大文字と小文字は 区別される。 クライアントプログラムは service-name にちなんで名付けられることが 多い。 port サービスに対して使用されるポート番号。10 進数で指定する。 protocol 使用されるプロトコルの種類。この欄は、 protocols(5) ファイルの中の項目と一致し ている必要がある。 通常使用される値は、 tcp と udp である。 aliases サービスに対する別名のリスト (区切はスペースまたはタブ) で、この欄は 必要になら ば書くことができる。 また、別名は大文字と小文字は区別される。 それぞれの欄の区切りには、スペースまたはタブが使用される。 コメントはシャープ (#) で始まり、その行の終わりまでがコメントとみなされる。 空行は飛ばされ る。 行の始めのスペースは無視されないので、 service-name は、行頭から書かなければならない。 service-names は、スペースとタブ以外の印字可能な文字なら何でもよいが、しかしながら 互換性 の問題を少なくするような文字を選択すべきである。 例えば、a-z 、0-9 、ハイフォン (-) を使用 するのが無難と思われる。 指定された形式に合わない行はあってはならない (現在は、そのような行は getservent(3), getservbyname(3), getservbyport(3) によって無視される。しかし、その場合の挙動は信頼できな い)。 このファイルは Yellow Pages/NIS や BIND/Hesiod のようなネットワーク上の名前サービスを用い て、ネットワークを通じて配布される可能性もある。 services ファイルの見本を以下に示す。 netstat 15/tcp qotd 17/tcp quote msp 18/tcp # message send protocol msp 18/udp # message send protocol chargen 19/tcp ttytst source chargen 19/udp ttytst source ftp 21/tcp # 22 - unassigned telnet 23/tcp
ファイル
/etc/services インターネット ネットワークサービスのリスト <netdb.h> _PATH_SERVICES の定義
関連項目
listen(2), endservent(3), getservbyname(3), getservbyport(3), getservent(3), setservent(3), inetd.conf(5), protocols(5), inetd(8) ポート番号の割り当てを定めている RFC (最新版は RFC 1700、別名 STD0002)
この文書について
この man ページは Linux man-pages プロジェクトのリリース 3.79 の一部 である。プロジェクト の説明とバグ報告に関する情報は http://www.kernel.org/doc/man-pages/ に書かれている。