提到黑洞路由就要提一下null0接口。
null0口是個永不down的口,一般用於管理,詳見null0的詞條
admin建立一個路由條目,將接到的某個源地址轉向null0接口,這樣對系統負載影響非常小。
如果同樣的功能用ACL(地址訪問控制列表)實現,則流量增大時CPU利用率會明顯增加。
所以,設定黑洞路由一直是解決固定DOS攻擊的最好辦法。
相當於洪水來臨時,在洪水途經的路上附近挖一個不見底的巨大深坑,然後將洪水引入其中。
黑洞路由最大的好處是充分利用了路由器的包轉發能力,對系統負載影響非常小。
在路由器中配置路由黑洞完全是出於安全因素,設有黑洞的路由會默默地拋棄掉數據包而不指明原因。
一個黑洞路由器是指一個不支持PMTU且被配置為不傳送“Destination Unreachable--目的不可達”回應訊息的路由器。
可以這樣看:
如果一個路由器不支持PMTU並且配置為不傳送ICMP Destination Unreachable訊息數據包,那么源主機可能傳送一個永遠得不到路由的大數據包。因為路由器沒有給源主機發回應訊息,主機不能確定PMTU就是問題的所在。但如果源主機端啟用了PMTU,則源主機在重試幾次大的MTU之後,如果還收不到路由器的應答,那源主機自動將PMTU設定為576bytes.
在Windows 2000下PMTU啟用設定是---HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters
EnablePMTUBHDetect REG_DWORD 0(默認禁用)或1(啟用)
在Windows XP下也可以試一下。
(NOTE:PMTU--Path Maximum Transfer Unit是指當一個要傳送的數據包的大小與當前路徑中的最小的MTU值一樣)