プライベートな場所(おそらくデータベースの場所、または他のユーザーにSSH接続を試行させたくないコンピューターのIPアドレス)を指すサブドメインを作成したいと想定して、何かという名前のDNSレコードを追加しますこのような:
private-AGhR9xJPF4.example.com
これは、サブドマンへの正確なURIを知っている人を除くすべての人に「隠される」でしょうか?または、特定のドメインのすべての登録済みサブドメインを「一覧表示」する方法はありますか?
この特定の目的のためのクエリはありませんが、いくつかの間接的な方法があります。
AXFR
)。ほとんどのサーバーオペレーターは、特定のIPアドレスへのゾーン転送をロックダウンして、関係のない当事者がのぞき見を防ぐ。NSEC
要求を使用して ゾーンをウォーク できます。 NSEC3
は、ゾーンウォーキングをより計算集約型にするために実装されました。また、任意のサブドメインが存在するかどうかを誰かに知らせるトリックもあります。
example.com. IN A 198.51.100.1
www.sub.example.com. IN A 198.51.100.2
上記の例では、www
はsub
内にあります。 sub.example.com IN A
のクエリはANSWERセクションを返しませんが、結果コードはNXDOMAINではなくNOERRORになり、ツリーのさらに下のレコードの存在を裏切っています。 (それらのレコードが何と名付けられているかではありません)
いいえ。クライアントからデータを確実に非表示にする唯一の方法は、最初からデータを取得できないようにすることです。口コミやパケットを観察することによって、DNSレコードの存在がそれらにアクセスできるすべての人に分散するとします。
ルーティング可能なDNSクライアントからレコードを隠そうとしている場合は、You're Doing It Wrong™です。データがそれを必要とする環境にのみ公開されていることを確認してください。 (つまり、プライベートIPにプライベートにルーティングされたドメインを使用します)そのような部門を設定していても、IPアドレスの知識はとにかく広まると仮定します。
セキュリティが重視されるのは、誰かがIPアドレスを取得したときに何が起こるかということです。
IPアドレスの秘密が夢のパイプである理由のリストは、さらに拡張される可能性があることを知っています。 IPスキャン、ソーシャルエンジニアリング...リストは無限大であり、主にこの質問のDNSプロトコルの側面に焦点を当てています。結局のところ、すべて同じ傘に分類されます:誰かがあなたのIPアドレスを取得しようとしています。
場合によります。
Andrew Bの答えは、たとえば、会社のMXレコードやパブリックWebサイトもホストするパブリックDNSゾーンにサブドメインを登録するときに当てはまります。
ほとんどの企業には内部DNSサーバーがあり、内部(secret)ホストのホスト名を登録することはできません。
推奨される方法は、内部使用のために専用ドメインを登録するか、または内部使用のためにプライマリドメインにサブドメインを作成することです。
ただし、技術的には、ドメインの内部ビューを作成してプライマリドメインも使用します。DNSクライアントのオリジンに応じて、DNSゾーンの代替バージョンが表示されます。
さらにから Andrew anwser
AXFR
要求は、次のいずれかのコマンドで実行できます。
Dig @8.8.8.8 mydomain.com. AXFR
nslookup -query=AXFR mydomain.com 8.8.8.8
Host -l mydomain.com
辞書を使用して他のDNSレコードを推測するブルートフォーススクリプト(WS-DNS-BFXなど)もあります。