NAT(网络地址转换协议)

NAT工作原理和功能

原理:

通过地址转换实现私有网络和公有网络之间的相互访问。其工作过程如下图所示,当数据包从内网发往外网时,NAT会将数据包的源IP由私网地址转换成公网地址;当响应的数据包要从公网返回到内网时,NAT会将数据包的目的IP由公网地址转换成私网地址。

功能:
1.宽带分享:这是NAT主机的最大功能。
2.安全防护:NAT之内的PC联机到Internet上面时,他所显示的IP是NAT主机的公网IP,所以Client端的PC就具有一定程度的安全了,外界在进行 portscan(端口扫描)的时候,就侦测不到源Client端的PC 。
不仅能解决了IP地址不足的问题,而且还能够有效地避免来自网络外部的入侵,隐藏并保护网络内部的计算机。

NAT的实现方法

一、静态NAT

静态NAT实现私网地址和公网地址的一对一转换。有多少个私网地址就需要配置多少个公网地址。静态NAT不能节约公网地址,但可以起到隐藏内部网络的作用。
内部网络向外部网络发送报文时,静态NAT将报文的源IP地址替换为对应的公网地址;外部网络向内部网络发送响应报文时,静态NAT将报文的目的地址替换为相应的私网地址。

静态NAT的配置方法:

实验拓扑图如下:

 server1配置如下:

PC1配置如下:

PC2的配置如下:

方法一:全局模式下设置静态NAT

[R1]nat static global 8.8.8.8 inside 192.168.10.10
[R1]int g0/0/1                                                        ###外网口
[R1-GigabitEthernet0/0/1]nat static enable         ###在网口上启动nat static enable 功能

 ​​​

R1配置如下:

[R1]int g0/0/0
[R1-GigabitEthernet0/0/0]ip add 192.168.10.1 24
[R1-GigabitEthernet0/0/0]int g0/0/1
[R1-GigabitEthernet0/0/1]ip add 12.0.0.1 24
[R1-GigabitEthernet0/0/1]q

[R1]nat static global 8.8.8.8 inside 192.168.10.10      //指定一个公网地址并映射到内网地址192.168.10.10上

此时对g0/0/0进行抓包,如图所示,原IP地址依旧是192.168.10.10,目的IP地址依旧为12.0.0.12;

对g0/0/1进行抓包,如图所示,原IP地址由私网IP地址192.168.10.10变为了公网地址8.8.8.8

方法二:直接在接口上声明nat static

[R1]int g0/0/1
[R1-GigabitEthernet0/0/1]nat static global 9.9.9.9 inside 192.168.10.20
[R1-GigabitEthernet0/0/1]

对R1配置结果如下:

此时对内网进行抓包,原IP地址和目的IP地址都没有变;再对外网进行抓包,此时原IP地址变为公网IP地址9.9.9.9,目的IP地址为12.0.0.12

二、动态NAT

原理:

私网IP和公网IP是一对一的关系,需要先自定义一个公网IP地址池,私网IP在地址转换时会轮询地址池中的每个公网IP。

ACL访问控制表介绍

作用:过滤经过接口的数据包,根据规则要么允许/放通 数据包,要么拒绝/丢弃 数据包ACL的工作原则:可以在一个路由器接口的一个方向配置一个ACL;一个ACL可以配置多条规则;
规则匹配时是从上往下依次匹配,匹配到即停止,华为设备默认的规则为放通所有数据包。

例如:
规则一:放通  源地址为 192.168.10.0/24  网段的地址
规则二:拒绝  目的地址为 12.0.0.0/24  网段的地址
规则三:拒绝  源地址为 10.0.0.0/8 网段的地址
默认放通所有

华为ACL的类型:
基本ACL(ID范围为2000~2999):只匹配源IP
高级ACL(ID范围为3000~3999):可以根据 协议类型 源IP 目的IP 源端口 目的端口 匹配
二层ACL(ID范围为4000~4999):可以根据 源MAC 目的MAC 二层协议

相关命令配置操作:

[R1]acl 2000    //创建一个基本ACL

[R1-acl-basic-2000]rule permit source 192.168.10.10 0   //允许放通192.168.10.10这台主机,最后一个0为反掩码。

[R1-acl-basic-2000]rule deny source 192.168.10.0 0.0.0.255 //拒绝所有来自192.168.10.0这个网段发来的数据,0.0.0.255为反掩码。

结果如下:

将ACL定义在接口上:

[R1]int g0/0/0

[R1-GigabitEthernet0/0/0]traffic-filter inbound acl 2000  //将ACL2000定义在g0/0/0入口上(inbound表示入口,outbound表示出口)

此时PC1能够ping通服务器,PC2ping不通服务器,因为ACL设定允许192.168.10.10通过,而192.168.10.0网段上的其他主机信息全部丢弃。

PAT端口多路复用

PAT又称为NAPT(Network Address Port Translation),它实现一个公网地址和多个私网地址之间的映射,因此可以节约公网地址。PAT的基本原理是将不同私网地址的报文的源IP地址转换为同一公网地址,但他们被转换为该地址的不同端口号,因而仍然能够共享同一地址。

PAT有以下作用:
1.改变数据包的ip地址和端口号;
2.能够大量节约公网IP地址。

PAT的类型有以下:
1.动态PAT:包括NAPT和Easy IP
2.静态PAT:包括NAT Server

NAPT:

多个私网IP地址对应固定外网IP地址(比如200.1.1.10),配置方法与动态NAT类似

操作步骤如下:

1、配置外部网口和内部网口的IP地址
2、定义合法IP地址池
[R1]nat address-group 1 200.1.1.10 200.1.1.10        ###使用一个固定IP

3、定义访问控制列表
[R1]acl 2000            ###允许源地址为192.168.30.0/24网段的数据通过
[R1-acl-adv-2000]rule permit source 192.168.30.0 0.0.0.255

4、在外网口上设置IP地址转换
[R1-acl-basic-2000]int g0/0/1        ###外网口
[R1-GigabitEthernet0/0/1]nat outbound 2000 address-group 1

实验操作(参考以上静态NAT拓扑图):

[R1]nat address-group 2 100.100.100.100 100.100.100.100  //定义一个地址池

[R1-GigabitEthernet0/0/1]nat outbound 2000 address-group 2  //通过端口转换实现

此时对内网进行抓包,原IP地址和目的IP地址都没有改变;对外网进行抓包,原IP地址变为100.100.100.100

easyip:

私网IP和公网IP是多对一的关系,直接使用NAT设备的外网接口的公网IP,所有私网IP在地址转换时只会转换为NAT设备的外网接口的公网IP

操作如下:


[R1]acl 2000
[R1-acl-basic-2000]rule permit source 192.168.10.0 0.0.0.255
[R1-acl-basic-2000]dis this

[R1-acl-basic-2000]q
[R1]int g0/0/1
[R1-GigabitEthernet0/0/1]nat outbound 2000
[R1-GigabitEthernet0/0/1]q

NAT Server:

私网IP和公网IP是多对一的关系,一个公网IP和不同的端口可以转换成的私网IP和端口。
先修改从公网发送到内网的数据包的目的IP地址,Nat Server会将数据包的目的IP由公网地址转换成私网地址。再修改从内网返回到外网的响应数据包的源IP地址,Nat Server会将数据包的源IP由私网地址转换成公网地址。
 

[R1]int g0/0/1
[R1-GigabitEthernet0/0/1]nat server protocol tcp global 9.9.9.9 www inside 192.168.10.100 www  //在连接公网的接口上将私网服务器地址和公网地址做一对NAT映射绑定

[R1-GigabitEthernet0/0/1]nat server protocol tcp global current-interface 8080 inside 10.1.1.1 www      //在连接公网的接口上将私网服务器地址和外网接口做一对NAT映射绑定
[R1-GigabitEthernet0/0/1]nat server protocol tcp global current-interface 2121 inside 10.1.1.2 ftp  //端口为21可以直接使用关键字“ftp”代替

  • 29
    点赞
  • 30
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值