天天看點

HCIA 靜态路由

一、前言

前面我們了解了交換機原理,知道交換機網絡是通過ARP協定廣播來知曉各裝置的MAC位址,這個過程中交換機生成了MAC位址表,當PC的資料需要發給目标時,交換機依據MAC位址表來進行轉發。

接着了解了路由器原理,知道路由器的每一個端口就像一台獨立的PC一樣,有獨立的IP和MAC位址。路由器的端口可以隔離廣播域,避免因為網絡太大導緻廣播風暴,同時路由器的端口可以像PC一樣接收資料,同時依據路由表來查詢目标IP所屬的廣播域并轉發到相應的端口,以此完成不同廣播域的資料傳輸。是以PC需要配置“預設網關”,當目标IP不屬于目前子網(廣播域)時就将資料發給網關(也就是路由器的端口)。需要注意的是,PC要将資料發給路由器依然需要借助ARP協定來擷取其MAC位址。

二、直連路由

考慮下面的網絡結構,當我們将裝置的IP都配置好後,會發現PC1可以直接與PC2通信,你可以在PC1 ping一下PC2的IP。

HCIA 靜态路由

這裡提一下路由器端口的IP配置:

G0/0/0 端口的配置:

1)system-view #進入系統視圖

2)interface GigabitEthernet 0/0/0 #進入0号端口

3)ip address 172.16.1.254 24 #配置IP

4)quit #傳回系統視圖

G0/0/01 端口的配置:

5)system-view #進入系統視圖

6)interface GigabitEthernet 0/0/1 #進入1号端口

7)ip address 172.16.2.254 24 #配置IP

8)quit #傳回系統視圖

我們可以看一下路由器AR1的路由表(display ip routing-table):

HCIA 靜态路由

由于上述兩個直連路由的存在,是以PC1與PC2可以直接通信。

三、靜态路由

考慮下圖所示的網絡結構,我們按圖中标記将IP都配置好。

HCIA 靜态路由

由于有直連路由的存在,當我們在PC1上ping 172.16.1.254以及172.16.2.1都是可以通的,但是ping 172.16.2.2就不通了。

HCIA 靜态路由

在前面直連路由的部分,如果172.16.2.2是普通PC的話是可以ping通的。為何換成路由器就不行了呢?我們在路由器AR2的G0/0/0端口(IP=172.16.2.2)抓包看下是怎麼回事。

HCIA 靜态路由

如上圖所示,我們可以看到AR2的G0/0/0端口确實有收到源IP=172.16.1.11目标IP=172.16.2.2的ICMP封包,但是沒有響應的封包。是以由于直連路由的存在,AR1是知道172.16.2.2這個IP可以通過其G0/0/0端口到達,而且資料也确實送達,但因為某種原因AR2并沒有響應這個封包。

答案其實就是AR2沒有到172.16.1.0這個網段的路由,是以遇到超出其“IP範圍”的封包它無法做出響應,就像PC如果沒有配置預設路由,當目标IP不是其自身網段時,PC機也是不做處理。我們檢視下AR2的路由表,确實沒有到172.16.1.0的路由。

HCIA 靜态路由

那為什麼PC機在這種情況又可以處理呢,答案前面也說了,因為PC機配置了“預設網關”,當出現超出其能力的IP時PC機可以直接将包扔給網關,而網關上恰巧就有了到172.16.1.0的路由(直連的)。

是以現在我們給AR2加個路由就可以了。

ip route-static 172.16.1.0 24 172.16.2.1

加靜态路由的格式是:ip route-static [目标網段] [下一條]

一定要注意的是下一跳配的是對面路由器對應端口的IP,而不是本機出端口的IP。再看下路由表:

HCIA 靜态路由

這時候你再ping 172.16.2.2就能ping通拉,但是到172.16.3.254以及172.16.3.11依舊還是不通。

HCIA 靜态路由

答案是AR1還沒有到172.16.3.0的路由呢,是以我們給它加一下。

ip route-static 172.16.3.0 24 172.16.2.2

這時候你會發現PC1與PC2可以互相ping通了。

四、回顧

本篇我們順着路由器原理講了下“直連路由”,接着講了靜态路由在路由器網絡中的簡單應用以及路由器端口的IP配置,同時也解答了一個奇怪的現象,那就是直連路由中PC為何可以響應ICMP封包而直連的路由器端口卻不可以(因為路由器沒有預設網關,必須有路由才行)。