美文网首页
CCNP之NAT中四种地址详细解析

CCNP之NAT中四种地址详细解析

作者: 请叫我学霸 | 来源:发表于2016-01-17 23:35 被阅读1334次

     NAT技术本身并不难理解,其主要的作用是私网地址和公网地址的转换。但是,在NAT的学习过程中,很容易把NAT的四个地址混淆,并且不知道他们运用的场合。本文就四个地址以及运用的场合进行详细分析。这是一个令多人困惑的问题,如果看了这篇文章,你顿时觉得醍醐灌顶,那还不赶紧打赏。

1:NAT产生原因

   众所周知,如果希望自己的电脑可以上网,必须要到运营商(ISP)申请一个账号,这个账号就是你电脑连接上网的公网IP,是全球唯一的。(请注意:事实上,这个公网IP地址是运营商租给你的,当用户不租的时候,ISP会将此IP地址收回,并租给其他用户)。只有申请到了公网IP才可以连接到Internet.但是,IP地址只有32位,全球那么多电脑要上网,并且只能一台主机一个公网IP,显然,IP地址是不够的。对此,从长远的角度,提出了IPV6的解决方案。但是,在IPV4到IPV6的过度期间,必须存在一种技术解决地址短缺的问题,于是出现了NAT技术。

2:NAT作用

NAT完成私有地址和公有地址的转换。

3:NAT应用场合

NAT技术最常用的两种场景是:

第一种:内部网络用户使用私网地址上网

第二种:用户通过公共网络访问内部网络中的设备(例如:服务器)

4:NAT四种地址以及区别

内部本地地址:转换之前内部源地址的地址

内部全局地址:转换之后内部主机的地址

外部本地地址:转换之前目标主机的地址

外部全局地址:转换之后外部目标主机的地址

5:NAT两种适用场合的实验模拟

5.1NAT常用的第一种场合:当内部网络用户通过私用网络上网

请注意本实验中用路由器来模拟PC和Sever

实验配置如下:

PC1的配置为:

PC1#conf t

PC1#no ip routing

PC1#ip default-gateway 192.168.0.1

PC1#int f0/0

PC1#no shu

PC1#ip add 192.168.0.10 255.255.255.0

PC1#no shu

PC1#exit

Sever的配置为:

Sever#conf t

Sever #no ip routing

Sever #ip default-gateway 192.168.0.1

Sever #int f0/0

Sever #no shu

Sever #ip add 192.168.0.20 255.255.255.0

Sever #no shu

Sever #exit

对R1的配置为:

R1(config)#int f0/0

R1(config-if)#no shu

R1(config-if)#ip add 192.168.0.1 255.255.255.0///这里IP地址与PC,Sever的网关地址相同

R1(config-if)#ip nat inside

R1(config-if)#exit

R1(config)#int s1/0

R1(config-if)#no shu

R1(config-if)#ip add 200.10.10.1 255.255.255.0

R1(config-if)#ip nat outside

R1(config-if)#no shu

R1(config-if)#exit

R1(config)#ip nat inside source static 192.168.0.10 200.10.10.30

R1(config)#router ospf 1

R1(config-router)#network 200.10.10.0 0.0.0.255 a

R1(config-router)#network 200.10.10.0 0.0.0.255 area 0

对R2的配置为:

R2#conf t

R2(config)#int s1/0

R2(config-if)#no shu

R2(config-if)#ip add 200.10.10.2 255.255.255.0

R2(config-if)#exit

R2(config)#int e0/1

R2(config-if)#no shu

R2(config-if)#ip add 100.20.20.1 255.255.255.0

R2(config)#router ospf 1

R2(config-router)#network 200.10.10.0 0.0.0.255 area 0

R2(config-router)#network 100.20.20.0 0.0.0.255 area 0

R2(config-router)#exit

对PC2的配置

PC2#conf t

PC2(config)#no ip routing

PC2(config)#ip default-gateway 100.20.20.1

PC2(config)#int e0/0

PC2(config-if)#no shu

PC2(config-if)#ip add 100.20.20.2 255.255.255.0

PC2(config-if)#exit

在上述配置过程中,有一条重点命令:

(1)R1(config)#ip nat inside source static 192.168.0.10200.10.10.30

请注意:

(1)在这里,通过静态配置,我只对PC1的地址进行了转换,Server地址没有转换。

(2)将PC1的私网地址转化为公网地址的时候,地址为200.10.10.30

 这里也可以转化为R1的出接口s1/0的地址200.10.10.1,但是会存在当外网访问200.10.10.1的  时候就变成全部访问PC1了。

对实验结果进行分析:

PC1#ping 100.20.20.1

由此看出PC1可以成功的访问外网。

Server#ping 100.20.20.1

由此看出,由于没有对Sever进行地址转换的配置,所以Sever不能访问外网。

如果在R1的上述配置基础上,加如下配置:

R1(config)#ip nat inside source static 192.168.0.20 200.10.10.40

此时验证实验结果:

Server#ping 100.20.20.1

发现Server可以正常访问外网。

在PC1ping200.10.10.2的过程中,查看地址转换过程:

R1#

*Mar1 00:49:42.603: NAT*: s=100.20.20.2, d=200.10.10.30->192.168.0.10[41]

*Mar1 00:49:42.899: NAT*: s=192.168.0.10->200.10.10.30, d=100.20.20.2[42]

    由此可以看出,数据包从内网发向外部网络的过程,源地址为192.168.0.10的数据包,在经过具有NAT功能的路由器之后,源地址转换后200.10.10.30;在此过程中目的地址一直保持不变。

R1(config)#do show ip nat tran

此时PC2pingPC1,

由上图实验结果可以看出,当PC2pingPC1的时候,无法ping通。

(这里请思考原因,在后续会有解释)

总结:

(1)由于本实验主要是讲解本地地址和局部地址的区别,所以在NAT配置过程中采用的是最简单的静态配置,当然你也可以采用动态NAT的方式对地址进行转换。

(2)当内网设备访问外网设备的时候,进行的是内部本地地址和内部全局地址的转换

在本实验中,内部本地地址为192.168.0.10和192.168.0.20

内部全局地址为200.10.10.30和200.10.10.40

NAT在此种运行场合中,仅进行的是内部本地地址和北部全局地址的转换。

5.2 NAT常用的第二种场合:外网设备访问内网采用私有地址的设备

     当一个处于公共网网络的设备(上图中PC2)想访问一个企业内部的设备(例如:上图中的服务器)的时候,此服务器采用的私有地址(192.168.0.20),由于企业网内部安全的需要,不允许此公网地址(PC2的地址为100.20.20.2)出现在私有内部网络,那么就需要将此公网地址(100.20.20.2)转化为私有地址。那么,这里公网地址PC2的地址(100.20.20.2)就是外部全局地址,PC2经过NAT转换后的私有地址(本实验中是192.168.0.30)就是外部本地地址。

实验拓扑跟上图一样:


实验的配置在上面配置的基础上,在R1上添加如下配置命令:

R1(config)#ip nat outside source static 100.20.20.2 192.168.0.30///

上面这句命令的意思是:将外部全局地址100.20.20.2转化为私有地址192.168.0.30

此时,PC2pingServer发现还是不通。

但是

R1(config)#do show ip nat tran

Pro  Insideglobal        Inside local           Outside local           Outside global

                                                                     192.168.0.30   100.20.20.2

    200.10.10.30        192.168.0.10------

      200.10.10.40      192.168.0.20------

发现外部全局地址100.20.20.2已经由NAT路由器转换为外部本地地址192.168.0.30.

也就是说NAT已经发挥作用,那么为什么还是无法ping通呢?

   外部全局地址100.20.20.2成功的转化为外网局部地址192.168.0.30后,内网本地地址192.168.0.20回应192.168.0.30时,发现内部网络没有192.168.0.30这个地址,也就无法ping通。所以,我认为需要为NAT路由器R1指定一条通过S1/0到达192.168.0.30的路由。添加静态路由如下:

R1(config)#ip route 192.168.0.30 255.255.255.255 s1/0

但是发现指定路由之后,还是无法ping通。(请各位大牛看看,这里 怎么修改才能ping通)

6:总结

    关于NAT技术的四种地址的区别已经通过上述常用的两种场合进行详细解析,至于在第二种场合中PC2无法ping通server,请大牛们提供些建议。

相关文章

  • CCNP之NAT中四种地址详细解析

    NAT技术本身并不难理解,其主要的作用是私网地址和公网地址的转换。但是,在NAT的学习过程中,很容易把NAT的...

  • VirtualBox 虚拟机的网络接入模式

    VirtualBox的提供了四种网络接入模式,它们分别是:1、NAT 网络地址转换模式(NAT,Network A...

  • VirtualBox虚拟机互通并共享主机IP

    现在自己总结如下: 一、VirtualBox的提供了四种网络接入模式 1、NAT 网络地址转换模式(NAT,Net...

  • linux 命令iptables -t nat

    iptables -t nat -vnL是什么命令?用详细方式列出 nat 表所有链的所有规则,只显示 IP 地址...

  • CCNP Security FIREWALL 642-618 O

    下载地址:CCNP Security FIREWALL 642-618 Official Cert Guide [...

  • [CCNA图文笔记]-31-NAT协议实例详解

    0×1.NAT概述简单的来说,NAT是将私有IP地址通过边界路由转换成外网IP地址,在边界路由的NAT地址转换表中...

  • 目的NAT和NAT server

    NAT可以分为两大类: 基于源IP地址的NAT 基于目的IP地址的NAT 按照功能不同,基于目的IP地址的NAT ...

  • lvs负载均衡

    LVS负载均衡四种工作模式 LVS/NAT:网络地址转换模式,进站/出站的数据流量经过分发器(IP负载均衡,他修改...

  • 23中设计模式实例

    总结一下23中设计模式各自的优缺点,及实际情况中如何使用。 详细解析如下,使用实例代码地址:https://git...

  • 23中设计模式实例

    总结一下23中设计模式各自的优缺点,及实际情况中如何使用。 详细解析如下,使用实例代码地址:https://git...

网友评论

      本文标题:CCNP之NAT中四种地址详细解析

      本文链接:https://www.haomeiwen.com/subject/whthkttx.html