華為路由器常用接口用法概述
目前華為路由器的市場需求還是非常高的,其品牌效應很強勢。這里我們主要介紹華為路由器中常用的虛接口,包括介紹NULL接口的用法等方面。通常,在華為路由器中執行show running命令查看配置時,會發現配置中存在各種類型的接口,例如ethernet、ATM、Serial、POS等等,這些接口都是與實際的物理接口是一一對應的(如果存在子接口,則可能會使多個接口名稱對應同一個物理接口)。但在華為路由器中還存在著另外一類完全不同的接口類型,例如:loopback、null、tunnel、virtual-template 等等。
loopback接口的用法
此類接口是應用最為廣泛的一種虛接口,幾乎在每臺華為路由器上都會使用。常見于如下用途。作為一臺華為路由器的管理地址,系統管理員完成網絡規劃之后,為了方便管理,會為每一臺華為路由器創建一個loopback 接口,并在該接口上單獨指定一個IP 地址作為管理地址,管理員會使用該地址對路由器遠程登錄(telnet),該地址實際上起到了類似設備名稱一類的功能。
但是通常每臺華為路由器上存在眾多接口和地址,為何不從當中隨便挑選一個呢?原因如下:由于telnet命令使用TCP報文,會存在如下情況:路由器的某一個接口由于故障down 掉了,但是其他的接口卻仍舊可以telnet,也就是說,到達這臺華為路由器的TCP連接依舊存在。所以選擇的telnet地址必須是永遠也不會down掉的,而虛接口恰好滿足此類要求。由于此類接口沒有與對端互聯互通的需求,所以為了節約地址資源,loopback 接口的地址通常指定為32 位掩碼。
使用該接口地址作為動態路由協議OSPF、BGP的router id。動態路由協議OSPF、BGP在運行過程中需要為該協議指定一個Router id,作為此華為路由器的唯一標識,并要求在整個自治系統內唯一。由于router id是一個32位的無符號整數,這一點與IP地址十分相像。而且IP地址是不會出現重復現象的,所以通常將華為路由器的router id指定為與該設備上的某個接口的地址相同。由于loopback接口的IP地址通常被視為華為路由器的標識,所以也就成了router id的***選擇。
NULL接口的用法
通常任何接口都會分配一個IP地址,但是NULL接口卻是一個例外,你無法在NULL接口上配置IP地址,華為路由器會提示配置非法。一個沒有IP地址的接口能夠做什么用呢?此類接口單獨使用沒有意義,但是如果將配置的靜態路由下一跳指向NULL接口,則會有很大的用處用來取悅BGP,BGP路由協議向外發布路由的一種方法是使用命令:network ip-address [mask mask]
但是此命令正確生效有一個前提:在路由表中必須存在一條與ip-address mask 完全相同的路由。由于BGP發布路由時都是經過聚合之后的,這樣的華為路由器表中并沒有,所以要使用命令:ip route ip-address mask null0。
配置這樣一條假靜態路由來“取悅”BGP。RTC到RTD之間的鏈路由于故障中斷了,所以在RTD上將不存在去10.1.3.0/24的指向RTC的路由。此時,如果RTA下的一個用戶發送報文,目的地址為10.1.3.1,則,RTA將此報文發送到RTD,由于RTD上已不存在去10.1.3.0/24的路由,所以選擇缺省路由,將報文發送給RTE,RTE查詢路由表后發現該條路由匹配10.1.0.0/16,于是又將該報文發送給RTD。同理,RTD會再次將報文發給RTE,此時,在RTD和RTE上就會產生路由自環。解決上述問題的***方案就是,在RTD上配置一條黑洞路由:ip route 10.1.0.0 255.255.0.0 NULL 0,這樣,如果再發生上述情況時,RTD就會查找路由表,并將報文發送到NULL0接口(實際上就是丟棄此報文),從而避免環路的產生。