Windows drivers \ etc \ servicesファイルの目的は何ですか?


8

通常、C:\ Windows \ System32 \ drivers \ etcに「サービス」ファイルがあり、実行中のサービスと使用するポートがリストされています。

しかし、ここで「サービス」という言葉はどういう意味ですか?「services.msc」を実行すると表示される「Windowsサービス」ではありません。このような2つのリストは集計されません。

そして、この「サービス」ファイルの内容は古くなっている可能性があります-誰もそれを更新することはできません。プログラムは、何らかの合意があれば、「サービス」ファイルを更新しなくても、一部のポートを介して通信できます。また、一部のプログラムが実行されていない場合、一部のポートが使用されていない場合、「Windowsサービスファイル」も更新されません。

それで、このファイルは何のためのものですか?

どこにでもドキュメントを見つけることができますか?たぶん、人気のあるファイル名のために、インターネットで検索しましたが、ほとんどのリンクは「Windowsサービス」に関するものです...この「Windowsサービスファイル」ではありません...

編集:

「サービス」ファイルは古くなっている可能性があるため、もう1つ質問があります。アクティブな「サービス」をすべて一覧表示する方法はありますか?

回答:


7

このファイルは、Microsoftによって作成されたサービスに使用するポートと、Windows APIを使用するファイルやサービス名をポートに変換するファイルを伝えます。これらのサービス名はIETFによって定義されています。

次に、ポートを変更して別のSMTPサーバー用のスペースを確保する手順の例を示します。

そして、ここにサービス名に関する詳細な説明があります:

servicename [in]

IPv4またはIPv6に接続するホストのサービス名または宛先ポートを含むNULLで終了する文字列。

サービス名は、ポート番号の文字列エイリアスです。たとえば、「http」は、インターネット技術標準化委員会(IETF)がHTTPプロトコル用のWebサーバーによって使用されるデフォルトのポートとして定義されているポート80のエイリアスです。ポート番号が指定されていない場合のservicenameパラメーターの可能な値は、次のファイルにリストされています。 %WINDIR%\system32\drivers\etc\services

MSDN-Winsock-WSAConnectByName関数


2
具体的には、servicesファイルは、[getservbyname](http://msdn.microsoft.com/en-us/library/windows/desktop/ms738538(v=vs.85).aspx)サービス名をソケット番号に変換するAPIをサポートしています。
Richard

@リチャード:たぶん、それは言及していませんservices
Tamara Wijsman 2012年

これはWindowsソケットのコンセプトですか?申し訳ありませんが、ここでは詳しくありません... WindowsソケットはHTTP、TCP / IP、FTPよりも低いプロトコルであるため、Windowsソケットレベルで行われた定義により、HTTP、TCP / IP、またはFTPレベルでの動作を調整できますか?
athos 2012年

@athos:いいえ、プロトコルはありません。Windowsサービスは、単に最初のサービス名(例えば。変換http(例えばサービスポートへ)80のためhttp)、その後、関連するプロトコル(TCP / IP)にそのサービスポートを提供しています。
Tamara Wijsman 2012年

4
補足:このファイルの名前、使用法、および形式は、ファイルが存在するUnixからのものです/etc/services。マイクロソフトは、独自のネットワーキングプロトコルであるNetbeuiを、ますます重要になってきているオープンソースのTCP / IPプロトコルで置き換え始めたときに、これを採用しました。kuro5hin.org/story/2001/6/19/05641/7357を
RedGrittyBrick
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.