日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

世界那么大我要出网关

發(fā)布時間:2024/1/18 编程问答 37 豆豆
生活随笔 收集整理的這篇文章主要介紹了 世界那么大我要出网关 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

古有關(guān)圣爺過五關(guān)斬六將,今有小小網(wǎng)絡(luò)包過網(wǎng)關(guān)闖世界。今天帥天給大家剖析一下,從局域網(wǎng)發(fā)出的網(wǎng)絡(luò)包是如何跋山涉水到達(dá)外面的世界的。

如何到達(dá)網(wǎng)關(guān)

在任何一臺機(jī)器上,當(dāng)要訪問另一個 IP 地址的時候,都會先判斷,這個目標(biāo) IP地址,和當(dāng)前機(jī)器的 IP 地址,是否在同一個網(wǎng)段。怎么判斷同一個網(wǎng)段呢?需要 CIDR 和子網(wǎng)掩碼。(關(guān)于 CIDR 和 子網(wǎng)
掩碼的知識請看帥天之前寫的文章)

如果是同一個網(wǎng)段,那就不需要通過網(wǎng)關(guān),直接在局域網(wǎng)內(nèi)部通信,將源地址和目標(biāo)地址放入 IP 頭中,然后通過 ARP 獲得 MAC 地址,將源 MAC 和目的 MAC 放入 MAC 頭中,發(fā)出去就可以了。

如果不是同一網(wǎng)段,比如訪問淘寶,這就需要發(fā)往默認(rèn)網(wǎng)關(guān) Gateway。Gateway 的地址一定是和源 IP 地址是一個網(wǎng)段的。一般都是第一個,例如192.168.1.0/24 這個網(wǎng)段,Gateway 往往會是 192.168.1.1/24。

如何發(fā)往默認(rèn)網(wǎng)關(guān)呢?因為網(wǎng)關(guān)和源 IP 肯定是同一個網(wǎng)段的,將源地址和目標(biāo) IP 地址放入 IP 頭中,通過 ARP 獲得網(wǎng)關(guān)的 MAC 地址,將源 MAC 和網(wǎng)關(guān)的 MAC 放入 MAC頭 中,發(fā)送出去。這和局域網(wǎng)內(nèi)部通信方式一樣。網(wǎng)關(guān)所在的端口,例如 192.168.1.1/24 將網(wǎng)絡(luò)包收進(jìn)來,然后接下來怎么做,就完全看網(wǎng)關(guān)的了。

網(wǎng)關(guān)如何轉(zhuǎn)發(fā)

網(wǎng)關(guān)轉(zhuǎn)發(fā) IP 包的過程中,可能會對網(wǎng)絡(luò)包中的 IP 頭 和 MAC 頭進(jìn)行修改。具體是如何操作的呢?請看下面兩個例子。

第一個例子,IP 頭始終保持不變。

在整個過程中,IP 頭里面的地址都是不變的。IP 地址在三個局域網(wǎng)都可見,在三個局域網(wǎng)之間的網(wǎng)段都不會沖突。在三個網(wǎng)段之間傳輸包,IP 頭不改變。

如下圖所示:

服務(wù)器 A 要訪問服務(wù)器 B。首先,服務(wù)器 A 會思考,192.168.4.101和我不是一個網(wǎng)段的,因而需要先發(fā)給網(wǎng)關(guān)。那網(wǎng)關(guān)是誰呢?已經(jīng)靜態(tài)配置好了,網(wǎng)關(guān)是 192.168.1.1。網(wǎng)關(guān)的 MAC 地址是多少呢?發(fā)
送 ARP 獲取網(wǎng)關(guān)的 MAC 地址,然后發(fā)送包。包的內(nèi)容是這樣的:

  • 源 MAC:服務(wù)器 A 的 MAC
  • 目標(biāo) MAC:192.168.1.1 這個網(wǎng)口的 MAC

  • 源 IP:192.168.1.101

  • 目標(biāo) IP:192.168.4.101

包到達(dá) 192.168.1.1這個網(wǎng)口,發(fā)現(xiàn) MAC 一致,將包收進(jìn)來,開始思考往哪里轉(zhuǎn)發(fā)。

在路由器 A 中配置了靜態(tài)路由之后,要想訪問 192.168.4.0/24,要從192.168.56.1 這個口出去,下一跳為 192.168.56.2。

于是,路由器 A 思考的時候,匹配上了這條路由,要從 192.168.56.1 這個口發(fā)出去,發(fā)給 192.168.56.2,那 192.168.56.2 的 MAC 地址是多少呢?路由器 A 發(fā)送 ARP 獲取 192.168.56.2 的 MAC 地址
,然后發(fā)送包。包的內(nèi)容是這樣的:

  • 源 MAC:192.168.56.1的 MAC 地址

  • 目標(biāo) MAC:192.168.56.2的 MAC 地址

  • 源 IP:192.168.1.101

  • 目標(biāo) IP:192.168.4.101

包到達(dá) 192.168.56.2 這個網(wǎng)口,發(fā)現(xiàn) MAC 一致,將包收進(jìn)來,開始思考往哪里轉(zhuǎn)發(fā)。

在路由器 B 中配置了靜態(tài)路由,要想訪問 192.168.4.0/24,要從 192.168.4.1 這個口出去,沒有下一跳了。因為我右手這個網(wǎng)卡,就是這個網(wǎng)段的,我是最后一跳了。

于是,路由器 B 思考的時候,匹配上了這條路由,要從 192.168.4.1 這個口發(fā)出去,發(fā)給 192.168.4.101。那 192.168.4.101 的 MAC 地址是多少呢?路由器 B 發(fā)送 ARP 獲取 192.168.4.101 的 MAC 地
址,然后發(fā)送包。包的內(nèi)容是這樣的:

  • 源 MAC:192.168.4.1 的 MAC 地址

  • 目標(biāo) MAC:192.168.4.101 的 MAC 地址

  • 源 IP:192.168.1.101

  • 目標(biāo) IP:192.168.4.101

包到達(dá)服務(wù)器 B,MAC 地址匹配,將包收進(jìn)來。

通過這個過程可以看出,每到一個新的局域網(wǎng),MAC 都是要變的,但是 IP 地址都不變。在 IP 頭里面,不會保存任何網(wǎng)關(guān)的 IP 地址。

第二個例子,IP 頭會變。

看下圖,服務(wù)器 A 想訪問服務(wù)器 B,但是細(xì)心的同學(xué)可能已經(jīng)發(fā)現(xiàn)和上面的例子不同之處在于,服務(wù)器 A 的地址和 服務(wù)器 B 的 地址是相同的(不同局域網(wǎng)內(nèi))。

怎么解決這個問題呢?既然局域網(wǎng)之間沒有商量過,各管各的 IP 分配,那到國際上,就需要使用另外的地址。打個比方,就像出國,僅僅使用國內(nèi)的身份證是不行的,必須得使用護(hù)照。

首先,目標(biāo)服務(wù)器 B 在國際上要有一個國際的身份,我們給它一個192.168.56.2。在網(wǎng)關(guān) B 上,我們記下來,國際身份 192.168.56.2 對應(yīng)國內(nèi)身份 192.168.1.101。凡是要訪問 192.168.56.2,都轉(zhuǎn)成 192.168.1.101。

于是,源服務(wù)器 A 要訪問目標(biāo)服務(wù)器 B,要指定的目標(biāo)地址為 192.168.56.2。這是它的國際身份。服務(wù)器 A 想,192.168.56.2 和我不是一個網(wǎng)段的,因而需要發(fā)給網(wǎng)關(guān),網(wǎng)關(guān)是誰?已經(jīng)靜態(tài)配置好了,
網(wǎng)關(guān)是 192.168.1.1,網(wǎng)關(guān)的MAC 地址是多少?發(fā)送 ARP 獲取網(wǎng)關(guān)的 MAC 地址,然后發(fā)送包。包的內(nèi)容是這樣的:

  • 源 MAC:服務(wù)器 A 的 MAC

  • 目標(biāo) MAC:192.168.1.1 這個網(wǎng)口的 MAC

  • 源 IP:192.168.1.101

  • 目標(biāo) IP:192.168.56.2

包到達(dá) 192.168.1.1 這個網(wǎng)口,發(fā)現(xiàn) MAC 一致,將包收進(jìn)來,開始思考往哪里轉(zhuǎn)發(fā)。

在路由器A中配置了靜態(tài)路由:要想訪問 192.168.56.2/24,要從192.168.56.1 這個口出去,沒有下一跳了,因為我右手這個網(wǎng)卡,就是這個網(wǎng)段的,我是最后一跳了。

于是,路由器 A 思考的時候,匹配上了這條路由,要從 192.168.56.1 這個口發(fā)出去,發(fā)給 192.168.56.2。那 192.168.56.2 的 MAC 地址是多少呢?路由器 A 發(fā)送 ARP 獲取 192.168.56.2 的 MAC 地址

總結(jié)

以上是生活随笔為你收集整理的世界那么大我要出网关的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。