next up previous contents
Next: 2.8.2 /etc/inetd.conf Up: 2.8 サービス Previous: 2.8 サービス

2.8.1 /etc/services

サービス名とそこで使われるポート番号、プロトコル(tcp/udp)との 対応関係を記述したファイルが /etc/services です。このファイルは 単なるサービス名のデータベースで、それ自体では何の働きもありませ んが、netstat コマンドや次の inetd などで参照されます。 (つまり、番号の代わりにこの表にある名前で表示するときに使われる だけで、何らかのサービスを走らせることとは無関係です。)

ポート番号は、0番から1023番までが Well Known Ports と呼ばれ、 Unixでは root権限以外ではプロセスをこのポートに割り当てる事は 出来ません。一方、絶対ではありませんが、IANAの割り当て規則では 1024番から49151番までは Registered Ports (既登録ポート)と呼ばれ、 様々なサービスが登録されています。最後に、49152番から65535番 までがプライベートなサービスや動的な通信ポートに利用されます。 (ちなみに、1024番はReserveになっています。これは恐らく1024が境界 で Well Known Ports と混乱する可能性を考慮したものだと思われ ます。)

以下は /etc/services の一部です。
ftp-data         20/tcp    #File Transfer [Default Data]
ftp-data         20/udp    #File Transfer [Default Data]
ftp              21/tcp    #File Transfer [Control]
ftp              21/udp    #File Transfer [Control]
ssh              22/tcp    #Secure Shell Login
ssh              22/udp    #Secure Shell Login
telnet           23/tcp
telnet           23/udp
#                24/tcp    any private mail system
#                24/udp    any private mail system
smtp             25/tcp    mail         #Simple Mail Transfer
smtp             25/udp    mail         #Simple Mail Transfer

第一フィールドがサービス名で、第二フィールドがポート番号/プロトコル 、第三フィールド以降は別名になっています。 なお、/etc/services はあくまでもポート番号と名前の対応を行うだけの ものですので、サービスの有無や動作には一切関係がありません。



Noriyo Kanayama