誰在擅自佔用 1.1.1.1?又是誰在 DDoS 它?

誰在擅自佔用 1.1.1.1?又是誰在 DDoS 它?

上一篇關於 Cloudflare DNS 的文章中提到,錯誤使用 1.1.1.1 會導致問題。評論里,也有知友表示不明白 Cloudflare 監控和分析「垃圾」信息。還有不少人質疑,Cloudflare 在承諾不記錄信息的情況下,又怎麼能夠分析「垃圾」信息。希望這篇文章,能夠回答這些問題。

在上線服務後不久,Cloudflare 發布了一篇博客 Fixing reachability to 1.1.1.1, GLOBALLY!,具體的解釋了在他們上線 1.1.1.1 DNS 服務之前都發現了哪些問題,以及為此做出的努力。藉此,我們可以繼續深入了解在 1.1.1.1 這個普通又不普通的 IP 地址身上,究竟發生過什麼。

無法使用服務?

有知友評論說自己設置了 1.1.1.1 作為 DNS 伺服器地址卻無法使用。這很可能是因為網路服務提供商(Internet Service Provider,簡稱 ISP)進行了錯誤的設置。這裡解釋一下 ISP 的範疇:聯通、電信這樣的全國性 ISP 自不必說;對於使用教育網的學生們,自己的學校就是 ISP;我在家設置了路由器為全家人提供了 Wi-Fi 接入,我也可以算是家人的 ISP。這些 ISP 之間形成了層級的結構,任何一層的錯誤設置,都可能導致無法使用這一 DNS 服務。

Cloudflare 將 ISP 的錯誤分為了三類:

  1. Built-in 1.1.1.1: ISP 的路由器佔用了 1.1.1.1 作為內網地址。這導致解析請求無法到達真正的 1.1.1.1 DNS 伺服器;
  2. Blackholing 1.1.1.1: ISP 將其網路中的某個節點設置了 1.1.1.1 為靜態 IP,這同樣會導致數據包無法離開其網路到達外部的 1.1.1.1 伺服器;
  3. Filtering 1.1.1.1: ISP 設置了規律規則,將發向或發自 1.1.1.1 的數據包丟棄。

其中前兩類是最常見的,尤其是第一類。Cloudflare 點名了北美最大的網路服務提供商 AT&T,其為廣大家庭用戶提供的路由器就錯誤地使用了 1.1.1.0/29(這是一個地址塊,包含一定範圍內的連續 IP 地址,現在只要知道其中包含了 1.1.1.1)用於內網通訊。由於需要硬體升級固件才能徹底解決,AT&T 只得給出一個臨時方案,就是使用 Cloudflare 的備用 IP 1.0.0.1。

除此之外,在酒店、咖啡廳等公共場所,人們通過無線網路接入點來上網。不幸的是,著名網路設備廠商思科 Cisco,在其生產的無線控制器上擅自佔用(原文用詞 squatting)了 1.1.1.1 這個地址。那麼,在所有使用這樣設備的場所,人們都無法正常連接到 Cloudflare 的伺服器了。

Cloudflare 還在持續和 ISP 以及相關設備的製造方聯繫,以期在全球範圍內消除這類錯誤。如果發現自己正在使用的網路有上述情況,不妨向 ISP 提提意見,要求「整改」。

「垃圾」信息!

第一節中解釋的錯誤通常只是影響到局部網路中用戶的使用,並不會向 1.1.1.1 的伺服器上發送 DDoS 級別的「垃圾」信息。那麼這些「垃圾」又是從何而來的呢?

上一篇文章中曾提到, Cloudflare 從 APNIC 手中獲得了 1.1.1.1 的使用權。事實上,他們獲得的是兩個地址塊 1.0.0.0/24 和 1.1.1.0/24(又一次出現了地址塊,之後可以寫篇文章好好講講)。也就是說 Cloudflare 可以使用 1.1.1.0 到 1.1.1.255 以及 1.0.0.0 到 1.0.0.255 這 512 個 IP 地址,也可以持續監控每個地址接收到的數據。2018 年 3 月份,Cloudflare 在這些地址上檢測到大約 10Gbps 的流量。這些數據大多指向 80(http), 443 (https) 等常用埠。從數據的格式上也可以分析出,這些數據來自於代理連接,以及DHCP/BOOTP,還有iperf,syslog 等工具。

這些 IP 地址還會受到 DDoS 攻擊的牽連。黑客的殭屍網路(botnet)可能有著這樣的程序邏輯:先啟動肉雞,向一個諸如 1.1.1.1 這樣的地址發動攻擊,一段時間後,再轉向真正的目標。Cloudflare 常常能觀察到持續幾分鐘的對於某個 IP 的攻擊,流量可達 5Gbps。

題圖就是一天內一個 IP 地址網路流量的變化圖。可以看到,其呈現明顯的階躍函數(step function)的特性,每一次流量的躍升都對應著一次 DDoS 攻擊的開始,突降則是 DDoS 的結束。

總結

在寫這篇文章的過程中,我才發現自己在上一篇中確實有些概念沒有理解透徹。還好都通過本文得以說明。

一些在中國大陸地區的知友,會關心自己能不能使用這項 DNS 服務,以及是不是能做到解析快速這個最主要的需求。據我了解,1.1.1.1 和 1.0.0.1 並沒有被科學。無法使用的話,很可能就是第一節里解釋的 ISP 的問題。有知友報告在廣東用的很爽,我推測是連接到了 Cloudflare 位於澳門的節點,自然是飛快。如果未來 Cloudflare 能夠在大陸部署 DNS 伺服器節點的話,其可用性將會得到極大的保障。

在第二節中,Cloudflare所分析的「垃圾」流量與普通用戶的 DNS 請求完全無關,所以不必擔心隱私問題。事實上,Cloudflare 為了確保隱私所做的工作還有很多,有可能的話我可以再寫一篇文章來深入探討一下。

This work is licensed under a Creative Commons Attribution 4.0 International License.

推薦閱讀:

TCP協議三次握手、揮手實現原理
探究 tcp 協議中的三次握手與四次揮手
負載均衡伺服器nginx詳細安裝教程及網路部署
IP Tools:到底該用哪一個?
計算機網路:點對點通信

TAG:IP地址 | 計算機網路 | DDoS |