為什麼facebook只有2個IP位址?

為什麼facebook只有2個IP位址?

在為自己的網站設定 DNS 的過程中,我對尋找大公司的 DNS 記錄感到好奇。我選擇了 facebook.com 並使用 dnschecker.org 查看他們的 dns 記錄。忽略 AAAA 記錄,因為大多數人仍然使用 IPv4,我只得到 2 個位址:31.13.71.36 和 157.240.26.35

也許我在這裡缺少一些技術,但每個靜態 IP 在任何給定時間只能分配給單一網路卡。這意味著 Facebook 僅透過兩台(非常快速的)機器來處理其資料中心的所有 IPv4 入口和出口。不可能。

我在這裡缺少什麼?

答案1

當您查詢 DNS 伺服器時,尤其是查詢A記錄之類的內容時,您無法全面了解網站的所有設定。您僅獲得足以滿足您的請求並連接到預期目標的資訊。

它曾經可以進行額外的查詢並獲取完整的列表,但出於安全原因,這已被禁用和棄用很長一段時間。

甚至在安全措施減少可以從 DNS 中抓取的資訊量之前,網站就已經使用動態 DNS 技術來實現負載平衡。基本上,當您的主機查詢 facebook 的 A 記錄時,它會從一大堆未知大小的清單中獲取一個或幾個答案。您的系統可能會快取該結果,因此後續查詢會給出相同的答案,儘管來源 DNS 伺服器可以設定逾時(我檢查時逾時約為 300 秒)。

所以基本上,當您查詢 facebook.com 時,您會從列表中獲得一個隨機答案,並且該答案可能會更改(可能每 300 秒更改一次)。 Facebook 的 DNS 伺服器可以輕鬆地為每個查詢它們的用戶端提供完全不同的答案,甚至可以嘗試偵測您的網路位置來調整答案,以提供網路上靠近您的伺服器。正如另一個答案中所提到的,這正是 CDN 的設計目的。

答案2

因為這些 IP 不屬於伺服器,所以它們指向 Facebook 的 CDN“內容分發網路”

也許其他人可能對他們的設定有所了解,但我的 DNS 伺服器向您報告不同的 IP,所以我敢說有數千個 IP 一直在動態變化。

相關內容