tft每日頭條

 > 圖文

 > nat和路由模式區别

nat和路由模式區别

圖文 更新时间:2024-08-26 15:13:52
NAT模式NAT模式概述

NAT是“Network Address Translation”的縮寫,中文意思是“網絡地址轉換”,它允許一個整體機構以一個公用IP(Internet Protocol)地址出現在Internet上。顧名思義,它是一種把内部私有網絡地址(IP地址)翻譯成合法網絡IP地址的技術。

為什麼要這樣幹呢?因為IP數據段由于字節數目一定,所以資源是有限的,如果為每一個設備分配一個IP地址,那麼極其消耗IP資源,所以NAT起到的作用是,對外隻暴露一個IP地址,當有内部連接要通訊的時候,通過NAT将内網IP轉換成對外的IP,充當了網關的作用。

NAT在外部公網(internet)上正常使用可以使多台計算機共享Internet連接。通過這種方法,申請一個合法IP地址,就把整個局域網中的計算機通過NAT接入到了Internet中。這時NAT屏蔽了内部網絡,所有内部網計算機對于公共網絡來說是不可見的,而内部網計算機用戶通常不會意識到NAT的存在。這裡提到的内部地址,是指在内部網絡中分配給節點的私有IP地址,這個地址隻能在内部網絡中使用,不能被路由(一種網絡技術,可以實現不同路徑轉發)。

路由:

以太網交換機工作在第二層(數據鍊路層),用于在同一網絡内部轉發以太網幀。但是,當源和目的IP地址位于不同網絡時,以太網幀必須發送給路由器。路由器負責在不同網絡間傳輸報文,通過路由表來決定最佳轉發路徑。當主機将報文發送至不同IP地址時,由于主機無法直接與本地網絡以外的設備通信,報文被轉發至默認網關。默認網關就是數據流從本地網絡路由至遠端設備的目的地。它通常用來連接本地網與公共網。

IP地址中專門保留了三個區域作為私有地址,其地址範圍如下:

  10.0.0.0/810.0.0.010.255.255.255  172.16.0.0/12172.16.0.0172.31.255.255  192.168.0.0/16192.168.0.0192.168.255.255

NAT将這些無法在互聯網上使用的保留IP地址翻譯成可以在互聯網上使用的合法IP地址。而全局地址是指合法的IP地址,它是由NIC(網絡信息中心)或者ISP(網絡服務提供商,比如常說的中國移動、中國電信)分配的地址,對外代表一個或多個内部局部地址,是全球統一的可尋址的地址。

NAT模式圖示

nat和路由模式區别(NAT模式路由模式橋接模式的區别)1

NAT技術類型

  NAT有三種類型:靜态NAT(Static NAT)動态地址NAT(Pooled NAT)網絡地址端口轉換NAPT(Port-Level NAT)

  其中靜态NAT設置起來最為簡單和最容易實現的一種,内部網絡中的每個主機都被永久映射成外部網絡中的某個合法的地址。而動态地址NAT則是在外部網絡中定義了一系列的合法地址,采用動态分配的方法映射到内部網絡。NAPT則是把内部地址映射到外部網絡的一個IP地址的不同端口上。根據不同的需要,三種NAT方案各有利弊。

動态地址NAT隻是轉換IP地址,它為每一個内部的IP地址分配一個臨時的外部IP地址,主要應用于撥号,對于頻繁的遠程聯接也可以采用動态NAT。當遠程用戶聯接上之後,動态地址NAT就會分配給他一個IP地址,用戶斷開時,這個IP地址就會被釋放而留待以後使用。

網絡地址端口轉換NAPT(Network Address Port Translation)是人們比較熟悉的一種轉換方式。NAPT普遍應用于接入設備中,它可以将中小型的網絡隐藏在一個合法的IP地址後面。NAPT與動态地址NAT不同,它将内部連接映射到外部網絡中的一個單獨的IP地址上,同時在該地址上加上一個由NAT設備選定的TCP端口号。

在Internet中使用NAPT時,所有不同的信息流看起來好像來源于同一個IP地址。這個優點在小型辦公室内非常實用,通過從ISP處申請的一個IP地址,将多個連接通過NAPT接入Internet。實際上,許多SOHO遠程訪問設備支持基于PPP的動态IP地址。這樣,ISP甚至不需要支持NAPT,就可以做到多個内部IP地址共用一個外部IP地址上Internet,雖然這樣會導緻信道的一定擁塞,但考慮到節省的ISP上網費用和易管理的特點,用NAPT還是很值得的。

NAT模式總結

我們知道家用路由器一般都是NAT模式,内網用戶默認都是192.168.1.x網段,而路由器充當默認網關的角色,所有内網發出的包都将經過路由器,路由器在公網有唯一的IP,所有的包經過路由器修改其源IP都改為了公網IP了,并且會随機映射一個對外端口。當應答回到路由器時,路由器會根據此前的映射關系,将目标IP和PORT改為原先發送請求的内網用戶的IP和PORT,這樣對于内網用戶來說是感知不到路由器的存在的,大家共用路由器的對外IP訪問外網。當然,因為大家都在内網同一個網段(路由器基于DHCP分配),所以内網用戶互相通訊也沒有問題。

DHCP:

DHCP(動态主機配置協議)是一個局域網的網絡協議。指的是由服務器控制一段IP地址範圍,客戶機登錄服務器時就可以自動獲得服務器分配的IP地址和子網掩碼。

當NAT用在虛拟機領域的時候,原理是類似的。隻不過一台PC上的若幹虛拟機相當于若幹内網用戶,而宿主機PC充當路由器的角色,虛拟機會在PC上虛拟化一個網絡環境:也就是每個虛拟機通過一個無形的網線連接到了無形的路由器上,僅此而已。每個虛拟機實例會通過PC上的虛拟路由器獲取DHCP分配的局域網IP,但是這隻是本機虛拟出來的局域網,并不是物理局域網。那麼,現在虛拟機想訪問外網,隻需要配置默認網關為PC上虛拟路由器,那麼數據包經過虛拟路由器的時候,會将源IP修改為PC的物理網卡的物理局域網IP,發送給物理路由器,之後的事情和之前描述的一樣。

上面的虛拟路由器其實是宿主機上一張虛拟的網卡,而虛拟機則将默認網關指向了這張網卡,從而有機會進行IP篡改。

如果你理解了上面這段描述,那麼我們可以分析出這樣的結論:

  1. 1個PC上的若幹虛拟機之間,可以互相通訊,中介就是虛拟路由器。
  2. 虛拟機可以訪問外網,也可以訪問物理局域網,但是無法訪問其他PC上的虛拟機。
  3. 外人(物理局域網其他PC)無法直接訪問虛拟機,這和物理路由器外網的用戶無法直接訪問内網用戶一個道理。(反向進入内網需要DNAT)
  4. 虛拟機可以訪問宿主機的物理IP,流程是先經過宿主NAT修改源IP和源PORT,通過物理網卡發出到局域網絡中,又被物理網卡接收處理。
  5. 宿主機無法訪問虛拟機,這是因為宿主機的物理網卡和内網其他網卡的角色一樣,對于虛拟路由器來說都是”外人”,不可能進入到虛拟局域網的内網用戶。
橋接模式橋接模式簡單說明

橋接模式下,VMWare虛拟出來的操作系統就像是局域網中的一立的主機,它可以訪問網内任何一台機器。 在橋接模式下,你需要手工為虛拟系統配置IP地址、子網掩碼,而且還要和宿主機器處于同一網段,這樣虛拟系統才能和宿主機器進行通信。同時,由 于這個虛拟系統是局域網中的一個獨立的主機系統,那麼就可以手工配置它的TCP/IP配置信息,以實現通過局域網的網關或路由器訪問互聯網。

使用橋接模式的虛拟系統和宿主機器的關系,就像連接在同一個Hub上的兩台電腦。想讓它們相互通訊,你就需要為虛拟系統配置IP地址和子網掩碼,否則就無法通信。

橋接模式圖示

nat和路由模式區别(NAT模式路由模式橋接模式的區别)2

圖示一

nat和路由模式區别(NAT模式路由模式橋接模式的區别)3

圖示二

橋接模式總結

橋接和NAT可以說是大不相同,在圖中的br0相當于虛拟交換機,物理網卡eth0和虛拟機網卡vnet0都通過虛拟的網線連接到br0上,這樣eth0vnet0之間可以互相交換數據。

我們把br0叫做橋,其實在宿主機上也是一張虛拟的網卡,作為虛拟交換機角色,而傳統交換機本身就是按mac目标地址的将數據轉發到正确的網線出口上,并不會做什麼事情。

配置虛拟機采用橋接模式并指定br0後,數據從虛拟機的網卡vnet0發出到br0br0會将數據轉發給另一端的eth0,源mac是虛拟機的随機MAC地址,源IP是虛拟機的IP地址,橋并沒有做中間修改,數據僅僅通過eth0網卡直接發到鍊路上,eth0隻是充當一個發送的物理介質。

當應答回來的時候,物理網卡eth0會在混雜模式捕獲包并交給br0處理,如果目标mac地址等于eth0或者vnet0,則進一步處理。如果是eth0的包那麼直接宿主機處理,如果是vnet0的包則轉發給虛拟機處理,整個過程無需對包做出修改,因為br0僅僅是一個交換機,而eth0vnet0是連在上面的2個網卡而已。

更加簡單的去理解的話,br0是一個交換機,eth0是連在br0交換機上某個插槽的另外一台特殊交換機(它在混雜模式工作,監聽的是來自物理交換機發來的各類包),而vnet0是連在br0交換機上的一台普通服務器。

根據上述描述,可以得知:

  1. 無論是虛拟機還是物理機,大家都在一個網段裡,都指向同一個默認網關(物理路由器)。
  2. 虛拟機通過橋,可以向物理路由器申請dhcp,分配得到局域網IP。
  3. 挂在橋上的虛拟機,可以直接被局域網其他用戶訪問,因為eth0混雜模式 橋可以轉發到虛拟機。
  4. 混雜模式的網卡隻是一個物理介質,它監聽所有的包,隻留下自己關注的包(比如目的mac地址是eth0h或者vnet0的包),也可以發送任意的包,無論包的源mac地址到底是不是物理網卡自身的(vnet0的假mac地址)

可見,橋接更加适合于虛拟機對外提供服務,因為它是可以被外部訪問到的,和一個正常的局域網用戶沒有什麼區别。

很多網絡的結構圖喜歡把一個局域網的用戶關聯到一條線上,體現出大家都在一個鍊路上的感覺,其實這是很大的誤導,真實的局域網用戶都是接在一個交換機上面的,交換機知道每個插槽上有哪些mac地址,一般來說一個插槽就一個mac地址,但是對于我們說的橋接就可能是多個,另外也可能是接了另外一個交換機,也就是交換機可以級聯,仍舊是一個局域網

HOST-ONLY模式

host-only模式,也叫主機模式,在某些特殊的網絡調試環境中,要求将真實環境和虛拟環境隔離開,這時就可采用Host-only模式,在Host-only模式中,所有的虛拟系統是可以相互通信的,但虛拟系統和真實的網絡是被隔離開的可以利用Windows XP裡面自帶的Internet連接共享(實際上是一個簡單的路由NAT)來讓虛拟機 通過主機真實的網卡進行外網的訪問虛拟系統的TCP/IP配置信息(如IP地址網關地址DNS服務器等),都是由VMnet1(Host-only)虛拟 網絡的DHCP服務器來動态分配。

HOST-ONLY模式圖示

nat和路由模式區别(NAT模式路由模式橋接模式的區别)4

HOST-ONLY總結

HOST-ONLY模式其實就是NAT模式去除了虛拟NAT設備,然後使用VMware Network Adapter VMnet1虛拟網卡連接VMnet1虛拟交換機來與虛拟機通信的,Host-Only模式将虛拟機與外網隔開,使得虛拟機成為一個獨立的系統,隻與主機相互通訊。

,

更多精彩资讯请关注tft每日頭條,我们将持续为您更新最新资讯!

查看全部

相关圖文资讯推荐

热门圖文资讯推荐

网友关注

Copyright 2023-2024 - www.tftnews.com All Rights Reserved