我希望有人能提供幫助。我正在努力解決這個問題,並希望有一個簡單的方法來解決它。
我正在嘗試獲取本地 DNS 伺服器中所有電腦的清單。出於我的測試目的,它是 Win2008 DNS,但我想嘗試找到適用於任何可能的方法。
本質上我想要相當於nslookup
, 但對於 DNS 中的每台機器。例如。我什至不介意它是否只列出機器名稱。
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 區域的內容。從「外部」來說,這並不容易實現,除非沿著你已經開始的路徑進行強力檢查——這有點像破解密碼。您必須查詢所有可能的名稱,檢查具有模式匹配的通配符等...這非常重要並且非常消耗資源,而且對於警惕的管理員來說也非常明顯(如果您'我不小心)。但我什至不認為黑帽會以這種方式處理它,在 DNS 伺服器前面安裝嗅探器並隨著時間的推移被動收集有用的名稱或只是破壞 DNS 伺服器本身會更容易。
所以我不確定你的目的或用例,但有更簡單/合法的方法。例如,造訪 Microsoft DNS 伺服器以開啟 MMC,連接到 DNS 服務,然後您將看到所有區域以及每個區域中的所有名稱。或者您可以要求管理員從 MMC 控制台匯出所有區域。或者請求能夠定期將區域傳輸拉到您的「測試」伺服器(例如,使用「dig axfr @」或僅設定輔助伺服器)。這些是獲得您想要的東西的更簡單且非侵入性的方法,並假設這是出於合法目的,應該不是什麼大問題。