小林不是俊
小林不是俊
Published on 2025-01-23 / 2 Visits
0
0

NAT

# 1.掌握NAT技术
```bash
NAT网络地址转换(Network Address Translation)是一种在网络设备(如路由器或防火墙)上部署的技术,用于将私有地址转换为公有地址,从而实现内部网络与外部网络的通信。NAT技术不仅缓解了IPv4地址短缺的问题,还提高了网络的安全性。
```

# 2.静态NATs
![alt text](file:///c%3A/Users/%E6%9E%97%E5%8B%87/Pictures/Screenshots/%E5%B1%8F%E5%B9%95%E6%88%AA%E5%9B%BE%202025-01-23%20170550.png)
![alt text](file:///c%3A/Users/%E6%9E%97%E5%8B%87/Pictures/Screenshots/%E5%B1%8F%E5%B9%95%E6%88%AA%E5%9B%BE%202025-01-23%20171344.png)
![alt text](file:///c%3A/Users/%E6%9E%97%E5%8B%87/Pictures/Screenshots/%E5%B1%8F%E5%B9%95%E6%88%AA%E5%9B%BE%202025-01-23%20170736.png)
![alt text](file:///d%3A/%E6%A1%8C%E9%9D%A2/%E5%BE%AE%E4%BF%A1%E5%9B%BE%E7%89%87_20250123171553.jpg)
```bash
静态NAT是一种一对一的地址映射方式,每个私有地址都有一个固定的公有地址对应。

静态NAT的特点如下:
固定映射:每个私有地址与一个固定的公有地址对应,不会发生变化。
双向访问:支持内外网的双向访问,外部网络可以通过公有地址访问内部网络的私有地址
地址浪费:由于每个私有地址都需要一个公有地址,即使内网主机长时间离线或不发送数据,对应的公有地址也会被占用
```
## 2.1主要配置命令
```bash
1 配置静态地址转换。 
ip nat inside source static <内部本地IP地址><内部全局IP地址> 
2 指定NAT 的内部接口 
ip nat inside 
3 指定NAT的外部接口 
ip nat outside
```
```bash
1 按照拓扑图给计算机和服务器配置IP

2 Router0配置
给各接口配置IP
Router(config)#int g0/0
Router(config-if)#ip add 222.0.2.1 255.255.255.0
Router(config-if)#no shutdown 
Router(config-if)#exit
Router(config)#int s0/0/0
Router(config-if)#ip add 222.0.1.2 255.255.255.0
Router(config-if)#no shutdown 

Router(config-if)#clock rate 64000  //配置时钟速率

Router(config-if)#exit
Router(config)#ip route 192.168.1.0 255.255.255.0 222.0.1.1  //所有目的地址不在本地网络中的数据包都要通过222.0.1.1 这个网关发送到外部网络

Router1配置
给各接口配置IP
Router(config)#int s0/0/0
Router(config-if)#ip add 222.0.1.1 255.255.255.0
Router(config-if)#no shutdown 
Router(config-if)#exit
Router(config)#int g0/0
Router(config-if)#ip add 192.168.1.1 255.255.255.0
Router(config-if)#no shutdown 
Router(config-if)#exit

Router(config)#ip route 222.0.2.0 255.255.255.0 222.0.1.2  //所有目的地址不在本地网络中的数据包都要通过222.0.1.2 这个网关发送到外部网络

Router(config)#ip nat inside source static 192.168.1.2 222.0.1.3  //配置静态地址转换

定义内外部接口
Router(config)#int s0/0/0
Router(config-if)#ip nat outside 
Router(config-if)#exit
Router(config)#int g0/0
Router(config-if)#ip nat inside
Router(config-if)#exit
Router(config)#end

Router#show ip nat translations   //查看当前设备上NAT(网络地址转换)的转换表信息
```

# 3.动态NAT
![alt text](file:///c%3A/Users/%E6%9E%97%E5%8B%87/Pictures/Screenshots/%E5%B1%8F%E5%B9%95%E6%88%AA%E5%9B%BE%202025-01-23%20154742.png)
![alt text](file:///c%3A/Users/%E6%9E%97%E5%8B%87/Pictures/Screenshots/%E5%B1%8F%E5%B9%95%E6%88%AA%E5%9B%BE%202025-01-23%20154943.png)
![alt text](file:///c%3A/Users/%E6%9E%97%E5%8B%87/Pictures/Screenshots/%E5%B1%8F%E5%B9%95%E6%88%AA%E5%9B%BE%202025-01-23%20162854.png)
![alt text](file:///c%3A/Users/%E6%9E%97%E5%8B%87/Pictures/Screenshots/%E5%B1%8F%E5%B9%95%E6%88%AA%E5%9B%BE%202025-01-23%20155034.png)
```bash
动态NAT通过创建地址池来避免地址浪费。当内部主机访问外部网络时,从地址池中临时分配一个未使用的公有地址,并在不再使用时回收该地址。

动态NAT的特点如下:
地址池:所有可用的公有地址组成地址池,动态分配给内部主机
临时映射:当内部主机访问外部网络时,临时分配一个公有地址,并在不再使用时回收
单向访问:动态NAT无法实现内外网的双向访问,因为映射表是动态变化的
```
## 3.1主要配置命令
```bash
1 创建地址池。 
ip nat pool<地址池名称><起始IP地址><结束IP地址> netmask<子网掩码> 
2 配置动态地址转换。 
ip nat inside source list <访问控制列表>pool<地址池名称>
```
```bash
1 按照拓扑图给计算机和服务器配置IP

2 Router0配置:
给各接口配置IP
Router(config)#int g0/0
Router(config-if)#ip add 192.168.1.1 255.255.255.0
Router(config-if)#n shutdown 
Router(config-if)#exit
Router(config)#int g0/1
Router(config-if)#ip add 192.168.2.1 255.255.255.0
Router(config-if)#no shutdown 
Router(config-if)#exit
Router(config)#int s0/0/0
Router(config-if)#ip add 200.1.1.1 255.255.255.252
Router(config-if)#no shutdown 
Router(config-if)#exit

Router(config)#ip route 0.0.0.0 0.0.0.0 200.1.1.2  //所有目的地址不在本地网络中的数据包都要通过200.1.1.2这个网关发送到外部网络。

定义内部接口和外部接口
Router(config)#int g0/0
Router(config-if)#ip nat inside 
Router(config-if)#exit
Router(config)#int g0/1
Router(config-if)#ip nat inside
Router(config-if)#exit
Router(config)#int s0/0/0
Router(config-if)#ip nat outside 
Router(config-if)#exit

Router(config)#ip nat pool to_internet 200.1.1.1 200.1.1.1 netmask 255.255.255.252  //创建地址池
Router(config)#access-list 1 permit 192.168.1.0 0.0.0.255    //创建了编号为1的标准ACL,允许源IP地址属于 192.168.1.0/24 网段的流量通过
Router(config)#access-list 1 permit 192.168.2.0 0.0.0.255    //创建了编号为1的标准ACL,允许源IP地址属于 192.168.2.0/24 网段的流量通过
Router(config)#ip nat inside source list 1 pool to_internet overload   //实现指定内部网段的设备借助地址池中的公网IP访问外部网络
Router(config)#end
Router#show ip nat translations    //查看当前设备上NAT(网络地址转换)的转换表信息

Router1配置:
给各接口配置IP
Router(config)#int s0/0/0
Router(config-if)#ip add 200.1.1.2 255.255.255.252
Router(config-if)#no shutdown 
Router(config-if)#exit
Router(config)#int g0/0
Router(config-if)#ip add 210.1.1.1 255.255.255.0 
Router(config-if)#no shutdown 
Router(config-if)#exit












Comment