如下網絡拓撲圖,交換機0所在的網段為192.168.1.0/24,交換機1所在網段為192.168.2.0/24,且各自有2台主機:
假設PC0(192.168.1.10/32)要跟PC4(192.168.2.11/32)通信,如何實現?
中間就需要一個路由器的東西。我們知道,PC0發出的數據包的目的地址是跨網段的,也就是需要出網關。網關是數據包出所在網段的出口。網關地址一般是所在網段的前一兩個地址,且網關一般都集成在路由器中,稱為下一跳。而第一跳的路由地址又被稱為默認網關。
子網中的每一台主機都需要配置好默認網關,即下一跳:PC0的默認網關為192.168.1.1/32、PC4的默認網關為192.168.2.1/32。這樣子PC0要發給PC4的數據包會先抵達路由器的192.168.1.1/32地址的網卡,路由器拿到該數據包后,將其從192.168.2.1/32的網卡發送出去。也就是說,路由器在中間負責中轉數據包。
PC0(192.168.1.10/32)與PC4(192.168.2.11/32)通信過程中的IP與MAC變化:
- PC0發送數據包給PC4時,數據包先由PC0發給路由器,再由路由器發送給PC4
數據包由PC0發給路由器時,目的IP為PC4的IP(192.168.2.11/32)目的MAC為路由器的192.168.1.1/32網卡的MAC,源IP為PC0的IP(192.168.1.10/32),源MAC為PC0的MAC
數據包由路由器發送給PC4時,目的IP為PC4的IP(192.168.2.11/32)目的MAC為PC4的MAC地址,源IP為PC0的IP(192.168.1.10/32),源MAC為路由器的192.168.2.1/32網卡的MAC
- PC4發送數據包給PC0時,數據包先由PC4發給路由器,再由路由器發送給PC0
數據包由PC4發送給路由器時,目的IP為PC0的IP(192.168.1.10/32)目的MAC為路由器的192.168.2.1/32網卡的MAC,源IP為PC4的IP(192.168.2.11/32),源MAC為PC4的MAC地址
數據包有路由器發送給PC0時,目的IP為PC0的IP(192.168.1.10/32)目的MAC為PC0的MAC,源IP為PC4的IP(192.168.2.11/32),源MAC為路由器的192.168.1.1/32網卡的MAC
從上面可以看出,在單向通信過程中源IP和目的IP的地址是不變的,而MAC地址是不斷變化的。
在如上拓撲圖中,PC0還是要發數據包給PC4,當數據包抵達路由器1時,路由器1並不知道通往PC4的路徑,於是需要在路由器1上的路由表上添加路由規則,使其知道應該將數據包發往192.168.2.0/24網段的地址,需要走往哪一個路由器,這里是路由器2。其他路由器同理,直至到目的主機PC4。
網絡暢通的條件是有去有回,所以當數據包從PC4返回PC0時,沿途的所有路由器都需要數據包的轉法路徑,也就是配置好返回的路由,使其知道數據包發往192.168.1.0/24網段的地址需要走往哪一個路由器。
人為添加的路由稱之為靜態路由,但當路由器連接的網段太多時不方便配置靜態路由,可以讓路由器自行學習得到數據包的下一個中轉地址,稱之為動態路由。
————————————————
版權聲明:本文為CSDN博主「mybright_」的原創文章
原文鏈接:https://blog.csdn.net/qq_29344757/article/details/82830912