Windows TIPS
[Network]
  Windows TIPS TOPへ
Windows TIPS全リストへ
内容別分類一覧へ

ネットワーク・プロトコル番号を調査する

デジタルアドバンテージ
2003/10/18
   
TCPやUDPなどのプロトコルで利用するポート番号は、servicesファイルに記述されている。
最新のservicesファイルの内容は、IANAのホームページから取得することができる。
 
解説

 TCP/IPPPPDHCPSIP、telnet、FTPを始めとして、インターネットではさまざまなネットワーク・プロトコルが開発され、利用されている。また、これらのプロトコルは、すでに開発が終了して進化が止まっているわけではなく、時代の要請(セキュリティ機能の強化や機能の向上など)に応じてさらに拡張され続けている。このようなダイナミズムのおかげで、ネットワーク・プロトコルは陳腐化することなく、そして広く普及しているのである。

 だがこのような状況は、ネットワーク技術者にとってはプロトコルへの理解を困難にする要因にもなっている。次々と新しいネットワーク・プロトコルが提唱され、機能が強化され続けているからである。特に、ネットワーク・パケットをキャプチャして解析したりする場面では、いままで使われていなかったようなTCPやUDPのポート番号が使われていたり、古い規格書(RFC)には掲載されていないようなパラメータが使われていたりすることも多くなっている。

 インターネットで使われるネットワーク・プロトコルは、RFC(Request for Comments)という技術文書にまとめられ、公開されていることが多い。そしてプロトコルの機能を拡張したりすると、新しいRFC文書として公開され、古いRFC文書は、「Obsolete(廃棄)」扱いとなる。この場合、同じRFC番号のままで内容が書き換えられるのではなく、古いRFC文書はそのままにして、新しい番号のRFC文書が発行されることになっている(新旧の番号には関連性はない)。新しいRFC文書には旧RFCへのリンクは含まれているが、逆に、古いRFC文書には、(当然のことながら)新しいRFC文書へのリンクは含まれていない。そのため、インターネットのプロトコルについて調査する場合は、常に最新のRFC文書群を入手し、そこからさかのぼって調査するようにしなければならない。

 しかし、TCPUDPで使用するポート番号(servicesファイルに記述されている)や、PPPプロトコル中で利用されるパラメータ番号などは、ネットワーク・プロトコルの技術的な仕様とはあまり関係がないので(例えばTelnetでは、TCPの23番ポートを利用するのが標準的であるが、これが1023番でも12345番でも関係ないということ)、通常のRFCとは独立したドキュメント(データベース)として管理されている。以前は、このような各種の番号などのパラメータ(「Assigned Number」という)は、RFC1700(ASSIGNED NUMBERS)などの文書にまとめられていたが、次々と登場する新プロトコルや機能拡張に対応するため、現在ではこのような方式に改められている。

 ネットワークのパラメータなどに関するデータベース「Protocol Number Assignment Services」は、IANA(Internet Assigned Numbers Authority)によって管理されている(現在ではIANAの業務の一部はICANN(The Internet Corporation for Assigned Names and Numbers)が引き継いでいるが、ポート番号などのデータベースはIANAのWebで参照することができる)。IANAの Webページ に各種プロトコルに関するパラメータのデータベースが置かれているので、これを参照すればよい。

IANAのホームページ
IANA(Internet Assigned Numbers Authority)は、インターネット・プロトコルなどに関する各種の登録、管理業務を行う組織である。各種のトップレベル・ドメインや国コードの割り当てなども担当している。現在では、IANAの業務の一部はICANNが引き継いでいるが、プロトコル番号などのデータベースはこのWebページで参照することができる。
  公式に定義されているプロトコル番号の一覧を取得するにはこれをクリックする。

 IANAでは、トップレベル・ドメインや国コードを始め、インターネットに関する各種の登録管理業務を行っている(現在ではICANNが行っている)。そして、その業務の1つとして、ネットワーク・プロトコル(で使用するパラメータ)などの管理も行っている。

 上記のページで、「Protocol Number Assignment Services」というリンクをクリックすると、各種プロトコルにおける、実装依存のパラメータなどを参照することができる。この中のさらに「Port Numbers」というリンクをクリックすると、現在申請/登録されている、最新のTCPやUDPのポート番号の一覧が得られる。

Port Numbers
TCPやUDPのポート番号と、それを使うネットワーク・プロトコルの名称が得られる。servicesファイルは、この内容のサブセット。

 Windows OSでは、%windir%\system32\drivers\etcフォルダの下に、servicesというファイルが存在するが、そのリストの完全なバージョンがこの「Port Numbers」である。servicesファイルには、主要なサービスしか列挙されていないが、このIANAのページでは、(その時点での)最新のプロトコル番号リストが表示される。ただし、ここに載っていない(申請されていない)ポートを利用する、独自のサービスも世の中には多く存在するので(必ずしも申請する必要はないから)、あくまでも参考として利用していただきたい。End of Article

関連記事(Windows Server Insider)
  連載:詳説TCP/IPプロトコル―第2回Internet StandardsとRFC
     
  関連リンク
  連載:インターネット・プロトコル詳説(番外編)―インターネット・プロトコルをインターネットから探ろう(Master of IP Network)
 
「Windows TIPS」


Windows Server Insider フォーラム 新着記事
@ITメールマガジン 新着情報やスタッフのコラムがメールで届きます(無料)

注目のテーマ

Windows Server Insider 記事ランキング

本日 月間