是否需要使用OSX上的主機在本地驗證DNS?

OSX Mac終端

我的一位客戶將他們的網站重新定位到一個批量託管帳戶。 他們更新了A和CNAME記錄的域的DNS設置,但是很難確定站點是否使用新的託管帳戶(新的IP地址)進行解析。


對DNS進行故障排除時,需要牢記一些注意事項。 了解DNS的工作原理,了解域註冊器的工作原理,然後了解主機如何管理其域條目。


DNS如何運作


在瀏覽器中鍵入域時:


  1. 在Internet中查找域 名稱服務器 查找應將請求發送到的位置。
  2. 如果是網絡域請求(http),則名稱服務器將 將IP地址返回到您的計算機.
  3. 然後,您的計算機將其存儲在本地,稱為 DNS高速緩存.
  4. 該請求被發送到主機,該主機路由該請求 內部 並展示您的網站。


您的域名註冊商的工作方式


關於這一點的說明……並非每個域註冊商實際上都管理您的 DNS。 例如,我有一個客戶通過 Yahoo! 註冊他們的域。 雅虎! 儘管在他們的管理中出現了域,但實際上並不管理域。 他們只是經銷商 Tucows的。 因此,當您在Yahoo!中更改DNS設置時,可能要花幾個小時才能真正更改這些更改。 域名註冊商。


當您的DNS設置確實得到更新時,它們就會在Internet上的一系列服務器中傳播。 在大多數情況下,這實際上只需幾秒鐘即可完成。 這是人們願意付款的原因之一 託管DNS。 託管DNS公司通常既具有冗餘性又具有難以置信的快……通常比您的域註冊商快。


Internet服務器更新後,系統下次發送DNS請求時,將返回託管站點的IP地址。 備註: 請記住,我說的是您的系統下次發出請求時。 如果您以前請求該域,則Internet可能是最新的,但您的本地系統可能正在根據DNS緩存解析舊的IP地址。


您的主機DNS的工作方式


本地系統返回並緩存的IP地址通常不是單個網站唯一的。 主機可能在單個IP地址(通常是服務器或虛擬服務器)上託管數十個甚至數百個網站。 因此,當從IP地址請求您的域時,主機會將您的請求轉發到服務器中的特定文件夾位置,並顯示您的頁面。


如何對DNS進行故障排除


因為這裡有三個系統,所以也有三個系統要進行故障排除! 首先,您只需要檢查本地系統以查看IP地址在系統中指向的位置:


OSX終端Ping


通過打開“終端”窗口並鍵入以下命令,可以輕鬆完成此操作:


ping域.com


或者,您實際上可以執行特定的名稱服務器查找:


nslookup 域名.com


終端nslookup


如果您已經更新了域名註冊機構中的DNS設置,則將要確保清除了DNS緩存,然後再次提出請求。 要在OSX中清除DNS緩存,請執行以下操作:


須藤dnscacheutil -flushcache


終端刷新DNS緩存


您可以重試 or NSLOOKUP 查看域此時是否解析為新的IP地址。


下一步將是查看Internet DNS服務器是否已更新。 保持 DNS資料 為此,您可以通過他們的平台獲得完整的DNS報告,這非常好。 飛輪 他們平台上有一個很棒的DNS檢查器,可以查詢 谷歌, OpenDNS的, 互聯網,並探測網絡以查看您的設置是否已在網絡上正確傳播。


如果您在網絡上看到正確顯示的 IP 地址,但您的站點仍未顯示,您還可以繞過 Internet 的服務器並告訴您的系統將請求直接發送到 IP 地址。 您可以通過更新您的主機文件和刷新您的 DNS 來完成此操作。 為此,請打開終端並鍵入:


sudo nano / etc / hosts


終端Sudo Nano主機


輸入系統密碼,然後按Enter。 這將直接在終端中調出文件進行編輯。 使用箭頭移動光標,並在新行中添加IP地址和域名。


終端主機保存文件


要保存文件,請按 控制-o 在鍵盤上,然後返回以接受文件名。 按退出編輯器 控制x,這將使您返回命令行。 不要忘記刷新緩存。 如果該站點無法正常運行,則可能是您的主機本地存在的問題,您應該與他們聯繫並告知他們。


最後說明...不要忘記將主機文件恢復為原始版本。 您不想在其中留下要自動更新的條目!


通過執行以下步驟,我能夠驗證我的註冊服務商中的DNS條目是最新的,Internet上的DNS條目是最新的,我的Mac的DNS緩存是最新的以及網絡主機的DNS是最新的迄今為止……很好!

你覺得呢?

本網站使用Akismet來減少垃圾郵件。 了解您的評論如何處理.