L3 Switch上建立靜態路由Static Route
什麼情況下要使用靜態路由Static Route
之前的文章,不論有多少個網段,都放在同一台L3 Switch上,只要執行”ip routing”指令,路由就會自己跑起來,這種情境有點像是內部循環,但實際情況總不會這麼單純,例如:
- 辦公室有多個分點,如台北辦公室、台中辦事處
- 辦公室與資料中心
- 資料中心與雲端環境(如:AWS、Azure or GCP)
- …
由以上舉例可見,當跨多個區域網路(LAN)時,我們需要告訴網路封包目的IP的路徑,此時,靜態路由就是最簡單的解決方案,尤其是在跨區域網路的端點,藉由Summary Route的設計方式,更是常見的路由設定手法。
除了上述的情境,設計資料中心網路時,通常都會對應L2、L3、L4、L7不同層會有不同的設備,有的設備會是Inline串接,有的會Parallel旁接,為了因應複雜的架構,也常會使用靜態路由的方式強制網路封包按照我們想要的路徑去走,例如,有的網段可以不過防火牆、有的網段要使用Load Balancer服務…等,都可以隨心所欲的去”打路由”。
本文模擬環境
這次,我們一樣使用Packet Tracer來模擬,在畫布上,放上兩台L3 Switch,並分別連接一台PC與一台Server,示意辦公室與資料中心兩個區域網路。
兩台交換器與兩台終端設備的設定如下:
Switch 0
- VLAN 10
- 網段:10.0.0.0/24
- 介面IP:10.0.0.1/255.255.255.0
- 實體Port:Gig0/1 (Access mode)
- VLAN 101
- 網段:10.1.0.0/24
- 介面IP:10.1.0.254/255.255.255.0
- 實體Port:Fa0/1 (Access mode)
Switch 1
- VLAN 10
- 網段:10.0.0.0/24
- 介面IP:10.0.0.2/255.255.255.0
- 實體Port:Gig0/1 (Access mode)
- VLAN 201
- 網段:10.2.0.0/24
- 介面IP:10.2.0.254/255.255.255.0
- 實體Port:Fa0/1 (Access mode)
PC 0
- IP:10.1.0.1
- Mask:255.255.255.0
- Gateway:10.1.0.254
Server 0
- IP:10.2.0.1
- Mask:255.255.255.0
- Gateway:10.2.0.254
在此不就VLAN與網段切分做指令的分享,需要指令參考的讀者可以參考之前的文章”使用Cisco Packet Tracer模擬真實網路“。
靜態路由Static Route的原理與概念
以本文的案例,若封包要從PC0 10.1.0.1出發到目的地Server0 10.2.0.1,路經應該是從VLAN 101 –> VLAN 10 –> VLAN 201,藉由VLAN 10從Switch0跨越到Switch1,別忘了,有去有回,當Server0收到封包要回覆PC0時,封包的路徑要從原路回去:VLAN 201 –> VLAN 10 –> VLAN 101。
若我們改以介面IP來表示,從PC0到Server0:
10.1.0.1 –> 10.1.0.254 –> 10.0.0.1 –> 10.0.0.2 –> 10.2.0.254 –> 10.2.0.1
從Server0回到PC0:
10.2.0.1 –> 10.2.0.254 –> 10.0.0.2 –> 10.0.0.1 –> 10.1.0.254 –> 10.1.0.1
從這樣的邏輯可以發現,靜態路由其實就是告訴網路封包下一個網路節點在哪,就像導航一樣,一段一段串接著,讓用路人可以順著路線走到目的地。
設定靜態路由
步驟1:在Switch0設定靜態路由,10.2.0.0/16網段全部藉由VLAN 10送往Switch1。
Switch>en
Switch#configure t
Switch(config)#ip route 10.2.0.0 255.255.0.0 vlan 10
Switch(config)#exit
Switch#exit
Switch>
步驟2:在Switch1設定靜態路由,10.1.0.0/16網段全部藉由VLAN 10送往Switch0。
Switch>en
Switch#configure t
Switch(config)#ip route 10.1.0.0 255.255.0.0 vlan 10
Switch(config)#exit
Switch#exit
Switch>
以上,就全部設定完畢了!非常簡單!
步驟1告訴要前往10.2.0.0/16網段的封包走VLAN 10通道,步驟2告訴要前往10.1.0.0/16的封包也走VLAN 10通道,因為VLAN 10串接兩台交換器,所以能夠透通。
驗證靜態路由
藉由TRACERT這個指令來測試方才所設定的靜態路由是不是正確,在PC0使用TRACERT方式對Server0發出路由測試,並列出經過的每一個節點,指令範例如下:
$ tracert 10.2.0.1
實際執行結果如下:
上圖可以發現,封包藉由每一個網路節點,一關一關送往目的地,TRACERT指令也會列出節點間的傳輸時間,不過因為是模擬環境,所以都是瞬間到達,實際情況,多少都還是需要個幾ms的!
相關資訊
~ END ~