DNS沉洞是什么
DNS 沉洞(DNS sinkhole),又名沉洞服務器、網絡沉洞或者黑洞 DNS指 DNS 服務器給出錯誤信息,從而防止訪問特定域名。
一臺沉洞服務器并不意味著一定是一臺大型 DNS 服務器,其只需要存儲于域名解析鏈中即可。
網絡級禁止
沉洞服務器是被配置為對于沉洞列表內域名分發不可路由地址的標準 DNS 服務器,這樣所有使用此服務器作為 DNS 的主機將會無法訪問真實的網站。DNS 服務器所在的層級越高,被阻擋的主機就會越多。使用跨越整個互聯網的 TLD 沉洞技術可以使得一些大型的僵尸網絡無法使用。DNS 沉洞技術在檢測并阻擋有害流量、自動程序以及不需要的流量方面十分有用。
主機級禁止
存儲于 Windows、Unix 和 Linux 等平臺上的 hosts 文件可優先于 DNS 服務器進行解析,此技術同樣可用于限制訪問網站。
應用
沉洞技術既可以是建設性的,比如牽制 WannaCry 病毒的蔓延;也可以像 DoS 攻擊中對 DNS 服務器進行攻擊一樣具有摧枯拉朽的威力。
它的其中一種應用方式是用于防止僵尸網絡,具體為限制僵尸網絡用于協調的 DNS 域名。基于 hosts 的方法則常用于屏蔽廣告服務器與突破網絡封鎖。
域名
域名(英語:Domain Name),簡稱域名、網域,是由一串用點分隔的名字組成的 Internet 上某一臺計算機或計算機組的名稱,用于在數據傳輸時標識計算機的電子方位(有時也指地理位置)。
網域名稱系統(DNS,Domain Name System,有時也簡稱為域名)是因特網的一項核心服務,它作為可以將域名和 IP 地址相互映射的一個分布式數據庫,能夠使人更方便的訪問互聯網,而不用去記住能夠被機器直接讀取的 IP 地址數串。
例如,www.wikipedia.org 是一個域名,和 IP 地址 208.80.152.2 相對應。DNS 就像是一個自動的電話號碼簿,我們可以直接撥打 wikipedia 的名字來代替電話號碼(IP 地址)。我們直接調用網站的名字以后,DNS 就會將便于人類使用的名字(如 www.wikipedia.org)轉化成便于機器識別的 IP 地址(如 208.80.152.2)。
域名系統
域名系統(英文:DomainNameSystem,縮寫:DNS)是互聯網的一項服務。它作為將域名和 IP 地址相互映射的一個分布式數據庫,能夠使人更方便地訪問互聯網。DNS 使用 TCP 和 UDP 端口 53。當前,對于每一級域名長度的限制是 63 個字符,域名總長度則不能超過 253 個字符。
開始時,域名的字符僅限于 ASCII 字符的一個子集。2008 年,ICANN 通過一項決議,允許使用其它語言作為互聯網頂級域名的字符。使用基于 Punycode 碼的 IDNA 系統,可以將 Unicode 字符串映射為有效的 DNS 字符集。因此,諸如“x.中國”、“x.臺灣”的域名可以在地址欄直接輸入并訪問,而不需要安裝插件。但是,由于英語的廣泛使用,使用其他語言字符作為域名會產生多種問題,例如難以輸入,難以在國際推廣等。
DNS 通過允許一個名稱服務器把他的一部分名稱服務(眾所周知的 zone)“委托”給子服務器而實現了一種層次結構的名稱空間。此外,DNS 還提供了一些額外的信息,例如系統別名、聯系信息以及哪一個主機正在充當系統組或域的郵件樞紐。
任何一個使用 IP 的計算機網絡可以使用 DNS 來實現他自己的私有名稱系統。盡管如此,當提到在公共的 InternetDNS 系統上實現的域名時,術語“域名”是最常使用的。
這是基于 504 個全球范圍的“根域名服務器”(分成 13 組,分別編號為 A 至 M)。從這 504 個根服務器開始,余下的 Internet DNS 名字空間被委托給其他的 DNS 服務器,這些服務器提供 DNS 名稱空間中的特定部分。