IPv6黑洞路由技術簡介
與IPv4一樣,IPv6在一些情況下同樣也會產生路由環路的問題,而解決該問題的其中一種方法就是IPv6黑洞路由技術。
一般情況下,如果一臺IPv6路由交換設備接收到一個數據包,而在自己的路由表里沒有查詢到轉發的路由時,該路由器就把數據報丟棄并向數據源發送一個目的地不可達的ICMPv6 消息。當然這是一種正確的行為,但有些情況下就可能不符合人的愿望,比如我們在路由交換設備上配置了一條靜態路由使該路由指向一個接口,當該接口正常時該靜態路由可用,但當該串口DOWN 掉時該靜態路由就會被刪除。這樣,如果再收到一個數據報該數據報需要配置的靜態路由進行轉發則丟棄并給源發送一個目的地不可達消息。接收到ICMPv6 不可達消息的主機,可能修改自己的路由表,而這是不希望的。也有可能就是假如默認路由正好指向該數據包的上游接口,這樣就造成了路由環路問題。這時候我們可以配置一條指向NULL0 接口的備用路由,但把優先級降低,這樣即使接口斷掉,路由交換設備也會繼續使用下條路由進行轉發,轉發的結果就是丟棄數據報,而不會給源發送一個ICMPv6 不可達消息,同時也不會發生路由環路的問題。
如下圖所示,正常的按路由表轉發的IPv6數據轉發。
IPv6數據按路由表正常轉發示意圖
假如在正常轉發過程中VLAN2接口突然down掉,在S2上按照最長匹配原則沒有找到其他路由,而在s2上默認路由的下一跳出接口是VLAN1,這就出現了從VLAN1接口收到的數據又要從VLAN1接口回去的問題,這樣必造成路由環路風暴問題。
IPv6路由環路示意圖
為了避免這種IPv6路由環路的產生,IPv6黑洞路由技術就產生作用了,將這種容易產生路由環路風暴的報文直接通過null0接口丟棄。這里介紹IPv6黑洞路由技術。
IPv6黑洞路由技術避免了路由環路的示意圖