ENSP nat

举报
hello12345678 发表于 2021/09/25 09:46:59 2021/09/25
【摘要】 转载:https://blog.csdn.net/mochu7777777/article/details/105720518

NAT(Network Address Translation,网络地址转换)

首先了解现在IP地址的使用情况,私有 IP 地址是指内部网络或主机的IP 地址,公有IP 地址是指在因特网上全球唯一的IP 地址。RFC 1918 为私有网络预留出了三个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

NAT技术缓解了当前互联网IPV4地址匮乏的情况

NAT的实现方式有三种,即静态转换Static Nat、动态转换Dynamic Nat和端口多路复用OverLoad。

静态转换是指将内部网络的私有IP地址转换为公有IP地址,IP地址对是一对一的,是一成不变的,某个私有IP地址只转换为某个公有IP地址。借助于静态转换,可以实现外部网络对内部网络中某些特定设备(如服务器)的访问。
动态转换是指将内部网络的私有IP地址转换为公用IP地址时,IP地址是不确定的,是随机的,所有被授权访问上Internet的私有IP地址可随机转换为任何指定的合法IP地址。也就是说,只要指定哪些内部地址可以进行转换,以及用哪些合法地址作为外部地址时,就可以进行动态转换。动态转换可以使用多个合法外部地址集。当ISP提供的合法IP地址略少于网络内部的计算机数量时。可以采用动态转换的方式。

端口多路复用(Port address Translation,PAT) 是指改变外出数据包的源端口并进行端口转换,即端口地址转换(PAT,Port Address Translation).采用端口多路复用方式。内部网络的所有主机均可共享一个合法外部IP地址实现对Internet的访问,从而可以最大限度地节约IP地址资源。同时,又可隐藏网络内部的所有主机,有效避免来自internet的攻击。因此,目前网络中应用最多的就是端口多路复用方式。

ALG(Application Level Gateway),即应用程序级网关技术:传统的NAT技术只对IP层和传输层头部进行转换处理,但是一些应用层协议,在协议数据报文中包含了地址信息。为了使得这些应用也能透明地完成NAT转换,NAT使用一种称作ALG的技术,它能对这些应用程序在通信时所包含的地址信息也进行相应的NAT转换。例如:对于FTP协议的PORT/PASV命令、DNS协议的 “A” 和 “PTR” queries命令和部分ICMP消息类型等都需要相应的ALG来支持。
如果协议数据报文中不包含地址信息,则很容易利用传统的NAT技术来完成透明的地址转换功能,通常我们使用的如下应用就可以直接利用传统的NAT技术:HTTP、TELNET、FINGER、NTP、NFS、ARCHIE、RLOGIN、RSH、RCP等。

在这里插入图片描述

静态转换配置:转换源IP地址(easy ip nat)

首先需要配置好基础的路由,在边缘路由器AR1上配置一个缺省路由

PC1:
IP: 192.168.1.101
Netmask: 255.255.255.0
Gateway: 192.168.1.1

PC2:
IP: 192.168.1.102
Netmask: 255.255.255.0
Gateway: 192.168.1.1

Server2:
IP: 192.168.1.200
Netmask: 255.255.255.0
Gateway: 192.168.1.1

Server3:
IP: 9.9.9.9
Netmask: 255.255.255.0
Gateway: 9.9.9.1

Client1
IP: 8.8.8.8
Netmask: 255.255.255.0
Gateway: 8.8.8.1

AR1配置命令: 
system-view
sysname AR1
interface g0/0/0 
ip address 192.168.1.1 24
interface g0/0/1
ip address 7.7.7.7 24
quit
display ip interface brief

R2配置命令:
system-view
sysname R2
interface e0/0/0
ip address 7.7.7.1 24
interface e0/0/1 
ip address 8.8.8.1 24
interface g0/0/0
ip address 9.9.9.1 24
quit
display ip interface brief

AR1配置缺省路由:
system-view
ip route-static 0.0.0.0 0 7.7.7.1
quit
display ip routing-table

在这里插入图片描述
在这里插入图片描述
配置好路由尝试在企业内网的PC1访问运营商外网的Server: 9.9.9.9
在这里插入图片描述
还是ping不通,我们在R1路由器上的E0/0/0接口上抓包查看对数据包是如何操作的
在这里插入图片描述
发现数据包发送到E0/0/0接口上源地址还是192.168.1.101内网地址,在外网处理肯定直接丢弃
所以接下来需要把这个源地址转换为AR1的外网接口地址,这样在R1的接口地址上才会处理数据包

AR1配置命令:
system-view
acl 2000
rule permit source 192.168.1.0 0.0.0.255
quit
interface g0/0/1
nat outbound 2000

在这里插入图片描述
在这里插入图片描述
源地址全部转换为了AR1外网接口的地址

思考一个问题:当局域网内多台主机访问同一个外网服务器,在AR1路由器的外网接口上都会转为同一个源地址IP,那回包的时候也是同一个目标IP地址,AR1路由器如何区分局域网的各台主机的数据包

在经过AR1的数据包中会添加一个字段flag,用来标识你是来自局域网中的那台主机(这里的flag字段内容就是AR1路由器的端口号)
在数据包经过AR1路由器的时候,路由器会暂时有一个缓存表
使用命令:dsiplay nat session all
在这里插入图片描述
在这缓存表里可以看到是如何区分局域网内部主机的

端口映射

把内网的服务器Server2: 192.168.1.20080端口映射到外网接口7.7.7.780端口上

AR1命令配置:
system-view
interface g0/0/1
nat server protocol tcp global current-interface 80 inside 192.169.1.200 80

内网服务器添加资源,并启动
在这里插入图片描述
访问内网服务器
在这里插入图片描述

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。