Domain-Name-System
如何在連接到一個 IP 的 DNS 中查找所有主機名?
如果我在一台機器上配置了多個主機(la apache 的 VirtualHosts),我如何查找 IP 並找到所有配置為訪問它的域?
例如,我有幾個 Web 和電子郵件域連接到我的伺服器。如何找到指向它的所有域?
甚至可能嗎?
我擁有所有域的 DNS A 條目,而且我知道一些朋友的域指向我的伺服器。我想看看我不認識的人是否也指向那裡。(或者如果有人將他們的域重新指向其他地方,我可以從我的伺服器中刪除他們的“舊”網站。)
不是真的,不。這就是正向和反向 DNS 查找之間的區別。
正向查找是標準名稱->IP 查找。所以,你必須提前知道所有的名字。
您想要的是進行 IP-> 名稱查找,但以某種方式將您在 Apache 配置和 DNS 中應用的所有名稱作為 A 記錄(或 CNAMES 或其他)。
您可能會發現,進行反向查找(例如 dig @nameserver $ip -x)將返回擁有該網路塊的人(可能是您的 ISP)提供給該 IP 的主機名。它可能有一個類似 45-23-45-231.big-isp.com 的名稱,這對您來說意義不大。至關重要的是,只有一個反向記錄,但可能有許多正向記錄。
我想這歸結為一個問題——反向區域如何知道正向區域中的任何記錄?在大多數設置中,前向區域可供客戶進行更改,但反向區域由網路塊的所有者維護。這兩個系統無需了解彼此的任何資訊即可執行。