網路裝置配置與管理————17、網路地址轉換NAT

FLy_鵬程萬里發表於2018-05-18

公用和私有IP編址



所有公有Internet 地址都必須在所屬地域的相應 Internet 註冊管理機構 (RIR) 註冊。
與公有IP 地址不同,私有IP 地址是保留的數值塊,任何人均可以使用。

NAT

  • NAT就像大辦公室中的前臺接待員。客戶撥打您辦公室的總機號碼,這是客戶知道的唯一號碼。
  • NAT有很多用途,但最主要的用途是讓網路能使用私有IP 地址以節省IP 地址。NAT將不可路由的私有內部地址轉換成可路由的公有地址。NAT還能在一定程度上增加網路的私密性和安全性,因為它對外部網路隱藏了內部IP 地址。
  • R2執行NAT 過程,將主機的內部私有地址轉換為公有、外部、可路由的地址。

  • 內部本地地址通常不是 RIR或伺服器提供商分配的 IP地址,極有可能是 RFC1918 私有地址。圖中,IP 地址192.168.10.10被分配給內部網路上的主機 PC1
  • 內部全域性地址當內部主機流量流出 NAT路由器時分配給內部主機的有效公有地址。當來自 PC1 的流量發往Web伺服器 209.165.201.1時,路由器 R2必須進行地址轉換。本例中,PC1 的內部全域性地址使用IP 地址 209.165.200.226
  • 外部全域性地址分配給 Internet上主機的可達 IP地址。例如,Web伺服器的可達 IP地址為 209.165.201.1
  • 外部本地地址分配給外部網路上主機的本地 IP 地址。大多數情況下,此地址與外部裝置的外部全域性地址相同。

NAT如何工作


  • 內部主機(192.168.10.10) 希望與外部 Web 伺服器 (209.165.201.1) 通訊。它傳送資料包給配置了 NAT 的網路邊界閘道器 R2。
  • R2 讀取資料包的目的 IP 地址,並檢查資料包是否符合規定的轉換標準

R2 有一個 ACL,它確定內部網路中可進行轉換的有效主機。因此,R2 將內部本地IP 地址轉換成內部全域性IP 地址,本例中為209.165.200.226。它將此本地與全域性地址對映關係儲存在 NAT 表中。


路由器將資料包傳送到目的地。

當 Web 伺服器回應時,資料包回到 R2 的全域性地址(209.165.200.226)。



  • R2 參考 NAT表,發現這是原先轉換的 IP 地址。因此,它將內部全域性地址轉換成內部本地地址,然後將資料包轉發給IP 地址為192.168.10.10 PC1
  • 如果它沒有找到對映關係,資料包將被丟棄。

NAT轉換有兩種型別


  • 動態NAT:使用公有地址池,並以先到先得的原則分配這些地址。當具有私有 IP 地址的主機請求訪問Internet 時,動態 NAT 從地址池中選擇一個未被其它主機佔用的 IP 地址。這就是到目前為止所介紹的對映。
  • 靜態NAT :使用本地地址與全域性地址的一對一對映,這些對映保持不變。靜態 NAT 對於必須具有一致的地址、可從 Internet 訪問的 Web 伺服器或主機特別有用。這些內部主機可能是企業伺服器或網路裝置。

NAT過載


  • NAT過載(有時稱為埠地址轉換或 PAT)將多個私有IP 地址對映到一個或少數幾個公有IP 地址。因為每個私有地址也會用埠號加以跟蹤。
  • 大多數家用路由器就是這樣工作的。

  • NAT 處理各資料包時,它使用埠號(本例中為 1331 1555)來識別發起資料包的客戶端。
  • NAT過載將 SA 變成客戶端的內部全域性IP 地址,同樣會附加埠號。

下一可用埠


NAT過載會嘗試保留源埠號。


但是,如果此源埠已被使用,NAT 過載會從適當的埠組 0-511、512-1023或 1024-65535開始分配第一個可用埠號。當沒有埠可用時,如果配置了一個以上的外部IP 地址,則NAT 過載將會使用下一 IP 地址,再次嘗試分配原先的源埠。

NAT與 NAT 過載之間的區別

  • NAT一般只按公有 IP 地址與私有IP 地址之間的一對一對應關係轉換IP 地址。NAT 過載則會同時修改傳送者的私有 IP 地址和埠號。NAT 過載選擇對公有網路上主機可見的埠號。
  • NAT將傳入的資料包路由給其內部目的地時,將以公有網路上主機給出的傳入源IP 地址為依據。利用NAT 過載,一般只需一個或極少的幾個公有 IP 地址。

使用 NAT的利弊


配置靜態 NAT

  • 靜態 NAT 為內部地址與外部地址的一對一對映。靜態 NAT 允許外部裝置發起與內部裝置的連線。
  • 首先需要定義要轉換的地址,然後在適當的介面上配置NAT。

配置動態 NAT


  • 動態 NAT 則是將私有 IP 地址對映到公有地址。這些公有IP 地址源自NAT 池。
  • 動態 NAT 不是建立到單一 IP 地址的靜態對映,而是使用內部全域性地址池。

配置 NAT過載

為單一公有IP 地址配置NAT 過載


  • 僅有一個公有IP 地址時,過載配置通常把該公有地址分配給連線到ISP 的外部介面。所有內部地址離開該外部介面時,均被轉換為該地址。
  • 使用 interface 關鍵字來標識外部 IP 地址,因此沒有定義NAT 池。利用 overload關鍵字,可以將埠號新增到轉換中。

為公有IP 地址池配置NAT 過載


當 ISP 提供了一個以上公有 IP 地址時,NAT 過載將使用地址池。這種配置與動態、一對一 NAT 配置的主要區別是前者使用了 overload關鍵字。overload關鍵字允許進行埠地址轉換。



埠轉發(有時也稱為隧道)是將網路埠從一個網路節點轉發到另一個網路節點的操作。
這種技術允許外部使用者從外部網路通過啟用NAT 的路由器到達私有 IP 地址(LAN 內部)上的埠。

配置埠轉發


  • 利用埠轉發,Internet 上的使用者能夠使用 WAN 埠地址和相匹配的外部埠號來訪問內部伺服器。
  • 當使用者通過 Internet 傳送這些型別的請求到您的 WAN IP地址時,路由器將這些請求轉發到您的 LAN 上適當的伺服器

檢驗 NAT和 NAT過載


以上是測試的例子。.

  • show ip nat translations命令的輸出顯示NAT分配的詳細情況。在該命令中增加verbose可顯示關於每個轉換的附加資訊,包括建立和使用條目的時間長短。
  • 該命令顯示所有已配置的靜態轉換和所有由流量建立的動態轉換。

  • show ip nat statistics命令顯示以下資訊:活動轉換總數、NAT配置引數、池中的地址數量以及已分配的地址數量。
  • 轉換條目預設超時時間為24 小時,在全域性配置模式下使用ipnattranslation timeouttimeout_ seconds命令可重新配置超時時間。

  • 要在超時之前清除動態條目,請使用clearipnattranslation全域性命令。
  • 可以具體指定刪除哪一轉換,也可以使用clearipnattranslation *全域性命令清除表中的全部轉換,如本例所示。

NAT和 NAT 過載配置的故障排除


  • 步驟 1. 根據配置,清楚地確定應該實現什麼樣的NAT。這可能會揭示出配置問題。
  • 步驟 2. 使用show ipnattranslations命令檢驗轉換表中轉換條目是否正確。
  • 步驟 3. 使用clear 和 debug命令檢驗 NAT 是否如預期一樣工作。檢查動態條目被清除後,是否又被重新建立出來。
  • 步驟 4. 詳細審查資料包傳送情況,確認路由器具有移動資料包所需的正確路由資訊。
              使用debug ipnat命令顯示關於被路由器轉換的每個資料包的資訊,檢驗NAT 功能的運作。

參考:Cisco

相關文章