誰かが助けてくれることを願っています。私はこれを解決するのに苦労しており、簡単な方法があることを願っています。
ローカル DNS サーバーのすべてのマシンのリストを取得しようとしています。テストの目的では Win2008 DNS を使用していますが、可能であればどのマシンでも機能する方法を見つけたいと思っています。
基本的に、DNS 内のすべてのマシンに対して と同等のものが必要ですnslookup
。たとえば、マシン名だけがリストされていてもかまいません。
192.168.0.1 Desktop1.domain.local
192.168.0.2 Server2.ad.domain.local
192.168.0.3 Server3.sub.domain.local
ソリューションが Windows でも Linux でも構いません。
私は Ubuntu で Dig を使用しようとしていますが、実際には私が考えていたような動作をするように設計されていないのではないかと思い始めています。
dig +nocmd +domina.local any +multiline +noall +answer
私の基本的な論理では、次のようなものを望んでいます
nslookup -all
または
nslookup *
答え1
つまり、DNS ゾーンの内容を列挙したいということです。これは、開始したパスをたどるブルート フォース チェックを除いて、「外部」から簡単には実行できません。パスワードをクラックするようなものです。考えられるすべての名前を照会し、パターン マッチでワイルドカードをチェックするなど、簡単ではなく、リソースを大量に消費し、用心深い管理者には非常に目立ちます (注意しないと DoS 攻撃のように見えます)。しかし、ブラック ハットがこの方法でアプローチするとは思えません。DNS サーバーの前にスニファーをインストールして、時間の経過とともに有用な名前を受動的に収集するか、DNS サーバー自体を侵害する方が簡単です。
あなたの目的や使用例はわかりませんが、もっと簡単で合法的な方法があります。たとえば、Microsoft DNS サーバーにアクセスして MMC を開き、DNS サービスに接続すると、すべてのゾーンと各ゾーン内のすべての名前が表示されます。または、管理者に MMC コンソールからすべてのゾーンのエクスポートを依頼することもできます。または、ゾーン転送を「テスト」サーバーに定期的にプルできるように要求することもできます (たとえば、「dig axfr @」を使用するか、セカンダリを設定するだけです)。これらは、必要なものを取得するためのはるかに簡単で非侵入的な方法であり、これが正当な目的であると仮定すると、大きな問題にはなりません。