linux 網絡地址轉換NAT

網絡地址轉換NAT
linux 網絡地址轉換NAT
NAT的作用:
增加IPv4的地址數量,解決私網地址不能上網的問題。

NAT的概念:
通過將內部網絡的私網IP地址翻譯成全球唯一的公網IP地址。

原理

原理:
linux 網絡地址轉換NAT
就是將內部本地轉換爲內部全局的地址,即將私網地址轉換爲公網地址去上網。

NAT術語:
內部本地(局部) 在內部網絡中分配給主機使用的私有ip地址
內部全局 該地址通常是從全球統一可尋址的地址空間中分配的,一般由互聯網服務同上(ISP)提供
外部全局 外部網絡上的主機分配的ip地址。該地址也是從全球統一可尋址的地址空間中分配的
外部本地(局部) 外部主機表現在內部網絡的ip地址
簡單轉換條目 將一個ip地址映射到另一個ip地址的轉換條目
擴展轉換條目 映射ip地址和端口到另一對ip地址和端口的條目

NAT的優點:
1、節省公網地址
2、增強靈活性、安全性
3、處理重疊的地址

缺點:
1、延遲增大
2、配置和維護的複雜性
3、不支持某些應用

NAT的實現方式:(分類)
1、靜態轉換(Static translation)靜態NAT
2、動態轉換(Dynamic translation)動態NAT
3、端口地址轉換(Port Address Translation,PAT)

一、靜態轉換
將內部網絡的私有ip地址轉換爲公用合法的ip地址,ip地址的對應關係是一對一的,而且是不變的。

主要用在內部網絡中有對外提供服務的服務器

缺點:需要獨佔寶貴的合法ip地址。
如果某個合法ip地址已經被NAT靜態地址轉換定義,即該合法ip地址當前沒有被使用,也不能被用作其它的地址轉換。

linux 網絡地址轉換NAT

二、動態NAT
將內部網絡的私有地址轉換爲公網地址進行一對一的轉換。但是,是從公網地址池中選擇一個未使用的地址對內部私有地址進行轉換。

優點:隨機的
缺點:不節約、不固定的。

linux 網絡地址轉換NAT

三、端口地址轉換
也被稱爲複用地址轉換(PAT)
也是一種動態的地址轉換。

工作過程:路由器改變外出數據包的源ip地址和源端口,並進行端口轉換,即採用端口多路複用方式,通過這種轉換,可以使多個內部私有ip地址同時與同一個公網ip地址進行轉換並對外部網絡進行訪問。

一個公網地址對應多個私網地址。

優點:
1、節約公網ip地址
2、隱藏內部的所有主機,避免******。

理想狀況下,一個單一的IP地址可以使用的端口數爲4000個。

四、NAT配置
1、靜態NAT配置步驟:
(1)先設置外部端口的ip地址
(2)再設置內部端口的ip地址
(3)在全局配置模式下:
ip nat inside source static 內部本地ip地址 內部全局ip地址 [extended]
注:extended(可選)表示允許同一個內部局部地址映射到多個內部全局地址。

例子:ip nat inside source static 192.168.100.2 61.159.62.130
將內部局部地址192.168.100.2轉換爲內部全局地址61.159.62.130
ip nat inside source static 192.168.10.10 202.10.168.130
(4)在內部和外部端口上啓用NAT
將端口設置爲內部端口或者外部端口
int f0/0
ip nat outside ##將當前端口設置爲外部端口
exit
int f1/1
ip nat inside ##將當前端口設置爲內部端口
exit
(4)配置路由。

2、NAT端口映射
(1)先給所有的端口設置ip地址
(2)在全局配置模式下配置端口映射,配置命令如下:
ip nat inside source static tcp/udp 私網地址 端口號 公網地址 端口
意義:將TCP或UDP協議中私網地址需要轉換的端口轉換成公網地址的端口號。

例子:ip nat inside source static tcp 192.168.10.10 80 192.168.20.20 8080
將Web服務器192.168.10.10的80端口轉換成192.168.20.20的8080端口。

注:NAT端口映射還可以將不同服務器的不同服務(端口)映射到同一公網地址的不同端口,給人的感覺就是通過同一個地址訪問了所有的服務器。

3、動態NAT
(1)先設置路由的所有端口的ip地址
(2)在全局配置模式下,定義內部網絡中允許訪問外部網絡的ACL
(3)在全局配置模式下,定義合法ip地址池
配置命令如下:
ip nat pool 地址池名稱 起始地址 終止地址 netmask 子網掩碼 type rotary
(4)實現網地址轉換,配置命令如下:
ip nat inside source list ACL列表號 pool 地址池名稱 overload(反覆用)
意義:將ACL列表中的地址轉換爲地址池名稱中定義的地址
例子:
ip nat inside source list 1 pool test0
將ACL1中的局部地址轉換爲test0地址池定義的全局地址
注:如果有多個地址池的話,也可以一一添加,以增加合法地址池的數量範圍。
ip nat inside source list 1 pool test1
ip nat inside source list 1 pool test2
以此類推。
(5)在內部和外部端口上啓用NAT
(6)配置路由

4、PAT
(1)使用外部全局地址
①先配置所有端口的ip地址
②配置內部訪問列表
③定義合法的ip地址池,命令如下:
ip nat pool 地址池名稱 起始地址 終止地址 network 子網掩碼
④設置複用動態ip地址轉換:
ip nat inside source list ACL列表號 pool 地址池名稱 [overload]
⑤在內部和外部端口上啓用NAT
⑥配置路由

(2)複用路由器外部接口地址
①先配置所有端口
②定義內部訪問列表
③設置複用動態ip地址轉換,命令如下:
ip nat inside source list ACL1 interface 端口編號 overload
意義:以端口複用方式,將ACL1中的私有地址轉化爲路由器外部接口的合法ip地址。
④在外部和內部端口上啓用NAT
⑤配置默認路由。

show ip nat translations [verbose] 查看NAT轉換條目,verbose顯示更多信息,包括一個動態條目的保存時間
show ip nat statistics 查看NAT的統計信息
debug ip nat 跟蹤NAT的操作,顯示出每個轉換的數據包。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章