一、DNS介紹DNS域名系統(tǒng)是互聯(lián)網(wǎng)關鍵的基礎設施之一,它是一個將域名與IP地址互相映射的全球分布數(shù)據(jù)庫。對于惡意DNS的過濾、檢測惡意網(wǎng)站域名、僵尸網(wǎng)絡和網(wǎng)絡隱秘通道發(fā)現(xiàn)是安全防護設備中必不可少的一種手段。
二、原理RFC 1035規(guī)定了域名每個標簽不超過63字節(jié),域名總長不超過255字節(jié)。可以含有任意8bit值,通常情況下域名標簽由英文字母、數(shù)字和連字符構成。RFC 2181進一步明確了,DNS本身不對域名所含字符內(nèi)容進行限制。一些文獻中驗證了ISC BIND等常用DNS服務器軟件對二進制域名的支持。
盡管在RFC1 123 之中對于DNS軟件支持無法轉(zhuǎn)換為可打印格式的資源記錄,內(nèi)部存儲不能使用文本格式。由于Letter Digit Hyphen規(guī)則的域名含有可打印字符,如此產(chǎn)生了兩種問題,其一為大多數(shù)程序?qū)τ谟蛎奶幚聿捎米址瘮?shù),可能會對于某些特定結(jié)束字符進行處理(例如C語言中對于