網絡地址轉換(NAT)

地址轉換出現的背景

IANA(The Internet Assigned Numbers Authority,互聯網數字分配機構)向超大型企業/組織分配A類網絡地址,一次一段。向中型企業或教育機構分配B類網絡地址,一次一段。這樣一種分配策略使得IP地址浪費很嚴重,很多被分配出去的地址沒有真實被利用,地址消耗很快。以至於二十世紀90年代初,網絡專家們意識到,這樣大手大腳下去,IPv4地址很快就要耗光了。於是,人們開始考慮IPv4的替代方案,同時採取一系列的措施來減緩IPv4地址的消耗。正是在這樣一個背景之下,本期的主角閃亮登場,它就是網絡地址轉換——NAT

NAT的工作原理

NATNetwork Address Translation,網絡地址轉換),就是替換IP報文頭部的地址信息。NAT通常部署在一個組織的網絡出口位置,通過將內部網絡IP地址替換爲出口的IP地址提供公網可達性和上層協議的連接能力。

NAT實現方式

  • 靜態轉換(Static Translation)
  • 動態轉換(Dynamic Translation)
  • 端口多路複用(Port Address Translation, PAT)

NAT的術語與轉換表

NAT包含的4類地址

網絡地址轉換(NAT)

  • 內部局部地址(源IP:192.168.1.3)
  • 外部局部地址(目的IP:202.120.10.2)
  • 內部全局地址(源IP:202.169.10.1)
  • 外部全局地址(目的IP:202.120.10.2)

NAT的轉換條目

  • 簡單轉換條目
  • 擴展轉換條目

NAT實現方法的工作過程

  • 靜態轉換和動態轉換

網絡地址轉換(NAT)

  • PAT

網絡地址轉換(NAT)

NAT的特性

NAT的優點

  • 節省公有合法IP地址
  • 處理地址重疊
  • 增強靈活性
  • 安全性

NAT的缺點

  • 延遲增大
  • 配置和維護的複雜性
  • 不支持某些應用,可以通過靜態NAT映射來避免

NAT配置步驟

  • 接口IP地址配置
  • 使用訪問控制列表定義哪些內部主機能做NAT
  • 決定採用什麼共有地址,靜態或地址池
Router(config)#ip nat pool pool-name star-ip end-ip {netmask netmask | prefix-length prefix-length} [type rotary]
  • 指定地址轉換映射
Router(config)#ip nat inside source static local-ip [extendable]
Router(config)#ip nat inside source list access-list-number pool pool-name [overload]
  • 在內部和外部端口上啓用NAT

靜態NAT配置

  • 將內網地址192.168.100.2、192.168. 100.3靜態轉換爲合法的外部地址61.159.62.131、61.159.62.132,以便訪問外部網絡或被外部網絡訪問

網絡地址轉換(NAT)

  • 設置外部端口的IP地址:
Router(config)#interface FastEthernet 0/0
Router(config-if)#ip address 61.159.62.130 255.255.255.248
Router(config-if)#no shut
  • 設置內部端口的IP地址:
Router(config)#interface FastEthernet 1/0
Router(config-if)#ip address 192.168.100.1 255.255.255.0
Router(config-if)#no shut
  • 建立靜態地址轉換:
Router(config)#ip nat inside source static 192.168.100.2 61.159.62.130
Router(config)#ip nat inside source static 192.168.100.3 61.159.62.131
  • 在內部和外部端口上啓用NAT:
Router(config )#interface FastEthernet 0/0
Router(config-if)#ip nat outside
Router(config)#interface FastEthernet 1/0
Router(config-if)#ip nat inside
  • 配置默認路由:
Router(config)#ip route 0.0.0.0 0.0.0.0 61.159.62.129

NAT端口映射

  • 建立NAT端口映射關係
Router(config)#ip nat inside source static protocol local-ip UDP/TCP-port global-ip UDP/TCP-port [extendable]
  • 配置實例
Router(config)#ip nat inside source static tcp 192.168.100.2 80 61.159.62.131 8080 extendable

網絡地址轉換(NAT)

動態NAT配置

  • 將內部地址192.168.100.2~192.168.100.254轉換爲合法地址61.1 59.62.131~61.159.62.190,以便訪問Internet

網絡地址轉換(NAT)

  • 設置外部端口的IP地址:
Router(config)#interface FastEthernet 0/0
Router(config-if)#ip address 61.159.62.130 255.255.255.192 
Router(config-if)#no shut
  • 設置內部端口的IP地址:
Router(config)#interface FastEthernet 1/0
Router(config-if)#ip address 192.168.100.1 255.255.255.0
Router(config-if)#no shut
  • 定義訪問控制列表
Router(config)#access-list 1 permit 192.168.100.0 0.0.0.255  //此處子網掩碼反寫
  • 定義合法IP地址池
Router(config)#ip nat poo[test061.159.62.131 61.159.62.190 netmask 255.255.255.192 //正常書寫掩碼
  • 實現網絡地址轉換
Router(config)#ip nat inside source list 1 pool test0
  • 在內部和外部端口上啓用NAT,以及配置默認路由
    • 與靜態NAT配置相同

PAT配置

  • 將內部網絡地址10.1.1.1~10.1.1.254轉換爲合法的地址61.159.62.131/29,以便訪問Internet

網絡地址轉換(NAT)

  • 設置外部端口的IP地址:
Router(config)#interface FastEthernet 0/0
Router(config-if)#ip address 61.159.62.130 255.255.255.192
Router(config-if)#no shu
  • 設置內部端口的IP地址:
Router(config)#interface FastEthernet 1/0
Router(config-if)#ip address 10.1.1.1 255.255.255.0
Router(config-if)#no shu
  • 定義訪問控制列表:
Router(config)#access-list 1 permit 10.1.1.0 0.0.0.255
  • 定義合法IP地址池:
Router(config)#ip nat pool onlyone 61.159.62.131 61.159.62.131 netmask 255.255.255.248
  • 實現網絡地址轉換:
Router(config )#ip nat inside source list 1 pool onlyone overload  //進行端口複用
  • 在內部和外部端口.上啓用NAT,以及配置默認路由
    • 與靜態NAT配置相同

複用路由器外部接口地址

網絡地址轉換(NAT)

  • 定義內部訪問列表
Router(config)#access-list 1 permit 10.1.1.0 0.0.0.255
  • 定義合法的IP地址池

    • 由於直接使用外部接口地址,所以不再定義IP地址池
  • 設置複用動態IP地址轉換
Router(config)#ip nat inside source list 1 interface FastEthernet 0/0 overload
  • 在內部和外部端口.上啓用NAT,以及配置默認路由
    • 與靜態NAT配置相同
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章