デバイスのIPアドレスがわかっても、そのデバイスが提供するサービスがどのポートにあるのかが常にわかるとは限りません。 DNS-SD レコードは、サービス情報をより構造化された形式で表現できます。
基本的な考え方
DNS-SD は、サービス インスタンスに PTR、SRV、TXT などの DNS レコードの組み合わせを使用します。 SRV は宛先名とポートを指定しますが、TXT は追加の属性を伝えることができます。このアプローチは、ローカル検出シナリオと管理された DNS インフラストラクチャの両方で使用できます。
アプリケーション手順
- 見つかったサービス タイプ、インスタンス名、およびソース プロトコルを別のフィールドに保持します。
- SRV ターゲットと報告されたポートのアドレス解決を確認します。
- TXT フィールドをデバイス アサーションとして保存します。これを資格情報やパスワードとして解釈しないでください。
実践例
印刷サービスは、非標準のポートを報告する場合があります。一般的なプリンタ ポートのみを試行するチェックではこれが見逃されますが、サービスのアナウンスでは正しいターゲットが示される可能性があります。ただし、実際の印刷アクセスは別途テストする必要があります。
結果を正しく解釈する
アナウンスを受信しても、サービスが適切に動作していることは保証されない。スリープ状態のデバイス、古いキャッシュ、アクセス ルールは接続に影響を与える可能性があります。インベントリ内で発表済みステータスと接続確認済みステータスを分離すると、よりわかりやすい結果が得られます。
出典と参考資料
プロトコルまたはコマンドの詳細: RFC 6763。手順とシナリオ例は IPScans の編集者の説明です。