背景
外网IP(公网地址、Internet地址)
- A类:1.0.0.1~126.255.255.254
- B类:128.0.0.1~191.255.255.254
- C类:192.0.0.1~223.255.255.254
内网IP(私网地址、局域网地址)
- A类:10.0.0.0~10.255.255.255
- B类:172.16.0.0~172.31.255.255
- C类:192.168.0.0~192.168.255.255
矛盾点
- 既要缓解IPv4地址不够用的现状,又要解决内网IP无法在外网使用的问题;
概述
- 网络地址转换NAT(Network Address Translation)是将IP数据报文头中的IP地址转换为另一个IP地址的过程。
作用
- 缓解IPv4地址枯竭现象,解决内网和外网IP转换问题。
- 有效避免来自外网的攻击,可以很大程度上提高网络安全性。
- 控制内网主机访问外网,同时也可以控制外网主机访问内网。
地址
- 内部局域地址:发送方内网地址
- 内部全局地址:发送方公网地址
- 外部全局地址:接收方公网地址
- 外部局域地址:接收方内网地址
NAT转换方式
静态转换
-
IP地址转换,一对一转换,形成永久转换关系(绑定);
-
优点:
- 可以实现双向访问(可以实现内访外,也可实现外访内);
-
缺点:
- 无法节省IP地址,无法缓解IPv4地址枯竭现象;
动态转换
-
IP地址转换,多对多转换,形成临时性的转化关系;
-
优点:
- 相较静态转换,外网IP重用率更高;
- 外网无法定位内网具体主机,内网遭受攻击的可能性降低;
-
缺点:
- 当内网IP比外网IP多时,无法实现内网主机同时访问外网主机,在一定程度上,无法实现外网IP节省;
端口多路复用
-
IP地址和端口转换,多对一(多对多),形成临时转换关系;
-
优点:
- 可以节省外网IP地址,缓解IPv4地址枯竭现象;
- 可以实现内部访外控制;
-
典型案例:
- 实现源地址转换(SNAT):内网主机访问外网主机的地址过程(内网IP转为外网IP);
端口映射
-
将内网IP和端口映射到外网IP和端口。
-
优点:
- 可以节省外网IP地址,缓解IPv4地址枯竭现象;
- 可以实现外访内的访问控制;
-
典型案例:
- 目的地址转换(DNAT):外网主机访问内网主机的地址转换过程(外网IP和端口转换为内网IP和端口);
华为NAT实现
静态转换
- 查看静态nat信息:
dis nat static
AR1:
sysint g0/0/0ip add 192.168.10.254 24int g0/0/1ip add 22.33.44.55 24qint g0/0/1nat static global 22.33.44.56 inside 192.168.10.1nat static global 22.33.44.57 inside 192.168.10.2nat static global 22.33.44.58 inside 192.168.10.3
动态转换
- 查看端口多路复用信息:
dis nat outbound
AR1:
sysint g0/0/0ip add 192.168.10.254 24int g0/0/1ip add 22.33.44.55 24q#确定要转换的内网主机acl 2000rule permitq#确定可用的外网IP范围,指定起始IP和结束IPnat address-group 1 22.33.44.56 22.33.44.57#将nat配置应用到物理接口int g0/0/1nat outbound 2000 address-group 1 no-pat
端口多路复用
-
查看端口多路复用信息:
dis nat outbound -
NAPT
- 需要单独的NAT转换的外网IP(一个作为接口IP,一个作为NAT转换IP);
AR1:
sysint g0/0/0ip add 192.168.10.254 24int g0/0/1ip add 22.33.44.55 24q#确定要转换的内网主机acl 2000rule permitq#确定可用的外网IP范围,指定起始IP和结束IPnat address-group 1 22.33.44.56 22.33.44.57#将nat配置应用到物理接口int g0/0/1nat outbound 2000 address-group 1
Easy-IP(使用较多)
- 可以直接使用接口的外网IP作为NAT转换的外网IP(只需要一个外网IP);
AR1:
sysint g0/0/0ip add 192.168.10.254 24int g0/0/1ip add 22.33.44.55 24qacl 2000rule permitqint g0/0/1nat outbound 2000
端口映射
- 查看端口映射信息:
dis nat server
AR1:sysint g0/0/0ip add 192.168.10.254 24int g0/0/1ip add 22.33.44.55 24qint g0/0/1nat server protocol tcp global current-interface 8080 inside 192.168.10.2 80