我國的路由器技術發展非常迅速,同時市場需求也很高,可能好多人還不了解路由器技術中的擴散技術,沒有關系,看完本文你肯定有不少收獲,希望本文能教會你更多東西。GFW的重要工作方式之一是在網絡層的針對IP的封鎖。事實上,GFW采用的是一種比傳統的訪問控制列表(Access Control List,ACL)高效得多的控制訪問方式——路由擴散技術。分析這種新的技術之前先看看傳統的技術,並介紹幾個概念。
訪問控制列表(ACL)
ACL可以工作在網絡的二層(鏈路層)或是三層(網絡層),以工作在三層的ACL為例,基本原理如下:想在某個路由器技術上用ACL控制(比如說是切 斷)對某個IP地址的訪問,那麼只要把這個IP地址通過配置加入到ACL中,並且針對這個IP地址規定一個控制動作,比如說最簡單的丟棄。當有報文經過這個路由器技術的時候,在轉發報文之前首先對ACL進行匹配,若這個報文的目的IP地址存在於ACL中,那麼根據之前ACL中針對該IP地址定義的控制動作進行 操作,比如丟棄掉這個報文。這樣通過ACL就可以切斷對於這個IP的訪問。ACL同樣也可以針對報文的源地址進行控制。如果ACL工作在二層的話,那麼 ACL控制的對象就從三層的IP地址變成二層的MAC地址。從ACL的工作原理可以看出來,ACL是在正常報文轉發的流程中插入了一個匹配ACL的操作, 這肯定會影響到報文轉發的效率,如果需要控制的IP地址比較多,則ACL列表會更長,匹配ACL的時間也更長,那麼報文的轉發效率會更低,這對於一些骨干 路由器來講是不可忍受的。
動態路由協議
說路由重分發之前先簡單介紹下動態路由協議。正常情況下路由器技術上各種路由協議如OSPF、IS-IS、BGP等,各自計算並維護自己的路由表,所有 的協議生成的路由條目最終匯總到一個路由管理模塊。對於某一個目的IP地址,各種路由協議都可以計算出一條路由。但是具體報文轉發的時候使用哪個協議計算 出來的路由,則由路由管理模塊根據一定的算法和原則進行選擇,最終選擇出來一條路由,作為實際使用的路由條目。
靜態路由
相對於由動態路由協議計算出來的動態路由條目,還有一種路由不是由路由協議計算出來的,而是由管理員手工配置下去的,這就是所謂的靜態路由。這種路由條目優先級最高,存在靜態路由的情況下路由管理模塊會優先選擇靜態路由,而不是路由協議計算出來的動態路由。
路由重分發
剛才說到正常情況下各個路由協議是只維護自己的路由。但是在某些情況下比如有兩個AS(自治系統),AS內使用的都是OSPF協議,而AS之間的 OSPF不能互通,那麼兩個AS之間的路由也就無法互通。為了讓兩個AS之間互通,那麼要在兩個AS之間運行一個域間路由協議BGP,通過配置,使得兩個 AS內由OSPF計算出來的路由,能通過BGP在兩者之間重分發。BGP會把兩個AS內部的路由互相通告給對方AS,兩個AS就實現了路由互通。這種情況 就是通過BGP協議重分發OSPF協議的路由條目。
另外一種情況,管理員在某個路由器上配置了一條靜態路由,但是這條靜態路由只能在這台路由器技術上起作用。如果也想讓它在其他的路由器上起作用,最笨的 辦法是在每個路由器技術上都手動配置一條靜態路由,這很麻煩。更好的方式是讓OSPF或是IS-IS等動態路由協議來重分發這條靜態路由,這樣通過動態路由協 議就把這條靜態路由重分發到了其他路由器上,省去了逐個路由器技術手工配置的麻煩。
GFW路由擴散技術的工作原理
前面說了是“歪用”,正常的情況下靜態路由是由管理員根據網絡拓撲或是基於其他目的而給出的一條路由,這條路由最起碼要是正確的,可以引導路由器技術把報文轉發到正確的目的地。而GFW的路由擴散技術中使用的靜態路由其實是一條錯誤的路由,而且是有意配置錯誤的。其目的就是為了把本來是發往某個IP地址的報文統統引導到一個“黑洞服務器”上,而不是把它們轉發到正確目的地。這個黑洞服務器上可以什麼也不做,這樣報文就被無聲無息地丟掉了。更多地,可以在服務器上對這些報文進行分析和統計,獲取更多的信息,甚至可以做一個虛假的回應。
評價
有了這種新的方法,以前配置在ACL裡的每條IP地址就可以轉換成一條故意配置錯誤的靜態路由信息。這條靜態路由信息會把相應的IP報文引導到黑洞 服務器上,通過動態路由協議的路由重分發功能,這些錯誤的路由信息可以發布到整個網絡。這樣對於路由器技術來講現在只是在根據這條路由條目做一個常規報文轉發 動作,無需再進行ACL匹配,與以前的老方法相比,大大提高了報文的轉發效率。而路由器技術的這個常規轉發動作,卻是把報文轉發到了黑洞路由器技術上,這樣既提高 了效率,又達到了控制報文之目的,手段更為高明。這種技術在正常的網絡運營當中是不會采用的,錯誤的路由信息會擾亂網絡。正常的網絡運營和管控體系的需求差別很大,管控體系需要屏蔽的IP地址會越 來越多。正常的網絡運營中的ACL條目一般是固定的,變動不大、數量少,不會對轉發造成太大的影響。而這種技術直接頻繁修改骨干路由表,一旦出現問題,將 會造成骨干網絡故障。
所以說GFW是歪用了路由擴散技術,正常情況下沒有那個運營商會把一條錯誤的路由信息到處擴散,這完全是歪腦筋。或者相對於正常的網絡運營來 說,GFW對路由擴散技術的應用是一種小聰明的做法。正常的路由協議功能被濫用至此,而且非常之實用與高效,?朝在這方面真是人才濟濟。