失眠网,内容丰富有趣,生活中的好帮手!
失眠网 > HCIA-Nat(网络地址转换)+端口映射

HCIA-Nat(网络地址转换)+端口映射

时间:2019-08-02 00:21:56

相关推荐

HCIA-Nat(网络地址转换)+端口映射

一、前言:

在ipV4地址中,存在私有地址和公有地址的区分:

公有ip:具有全球唯一性,可以在互联网通讯,付费使用;

私有ip:具有本地唯一性,不能在互联网通讯,无需付费;

私有ip地址:

10.0.0.0/8-10.255.255.255 172.16.0.0/16-172.31.0.0/16 192.168.0.0/24 –192.168.255.0/24

问题:当一个连接有很多设备的私网想要访问公网时,由于公网中的路由器没办法配置,导致私网中的流量能去却回不来的情况,公网路由器的路由表中只有边界路由器的IP地址,这时就需要net

NAT:(Network Address Translation)

网络地址转换 — ip地址转换,在数据包经过路由器时,修改包中的源或者目标ip地址(从私网进入公网修改源,从公网进入私网修改目标); 最常用于私有网络访问公有网络时,仅公、私有IP地址转换;

分类:动态nat、静态nat、一对一、一对多、多对多、端口映射

Nat的所有配置均在边界路由器上进行,华为设备在边界路由器的公有ip地址所在接口(连接公网IP地址的接口)

二、一对一nat(静态)

[r2-GigabitEthernet0/0/2]nat static global 12.1.1.3 inside 192.168.1.1 // 0/0/2接口IP地址是12.1.1.1是公有IP地址,此时需要另外一个真实存在的公有IP(12.1.1.3)作为漂浮地址或叫全球IP地址存在于0/0/2接口,它和私网内部需要上公网的IP地址(192.168.1.1)映射,在192.168.1.1到达边界路由器时源IP转换为12.1.1.3后再出去,回来时在边界路由器端口再将目标IP地址转化为192.168.1.1进入,完成一次上网(公有网络路由表中只有边界路由器的IP地址)

但是一对一只能每次转换一个私有IP,同时还要保证是额外的公有IP,端口IP不能作为一对一

三、一对多(动态)nat

将内部多个私有ip地址,转换为同一个公有ip地址; --多个IP地址转换后回来时目标IP都是一样的,为了区分不同的IP地址,基于端口号——仅转换和区分—也叫PAT(端口多路复用)即端口地址转换。

ACL既可以用于做策略,同时也可以用来辅助抓取IP地址

先使用ACL将需要被转换的ip地址抓取;再在边界路由器外网接口上调用接口

[r2]acl 2000//创建acl列表,acl编号范围为<2000-2999>[r2-acl-basic-2000]rule permit source 192.168.0.0 0.0.255.255 //规则允许源192.168.0.0,即抓取该路由条目[r2]interface GigabitEthernet 0/0/2 //到边界路由器的公有IP地址接口[r2-GigabitEthernet0/0/2]nat outbound 2000 //调用; 当ACL2000内关注的数据包从该接口出的时候进行地址转换,转换为该接口的ip地址;同时产生一条临时的记录,在该数据回来后,基于记录转换回原有地址;再转发源设备上,删除该记录;

四、多对多nat

[r2]nat address-group 1 12.1.1.4 12.1.1.10 定义公有ip地址池,创建池塘,编号为1,范围是12.1.1.4到12.1.1.10[r2]acl 2001 [r2-acl-basic-2001]rule permit source 192.168.0.0 0.0.255.255 定义私有地址范围,抓取该范围地址[r2-acl-basic-2001]q[r2]interface GigabitEthernet 0/0/2[r2-GigabitEthernet0/0/2]nat outbound 2001 address-group 1 no-pat

切记:no-pat 添加的区别很大:

若添加为静态多对多,不添加为动态多对多;

静态多对多: 多个一对一

动态多对多: 多个一对多

五、端口映射和NAT(地址转换)

将边界路由器上公有ip地址的某个端口,固定映射给某一个私有ip地址,实现内网用户访问公网

[r2-GigabitEthernet0/0/2]nat static protocol tcp global current-interface 80 inside 192.168.1.3 80//将当前接口12.1.1.1的80(或1-65535任意数字都可)端口固定映射给192.168.1.3,端口是80(该端口80是DNS服务,不能任意)端口 Warning:The port 80 is well-known port. If you continue it may causefunction failure.Are you sure to continue?[Y/N]:y

地址转换分类:源地址转换(SNAT)、目标地址转换(DNAT)、双向地址转换、DNS-mapping(内网用户访问服务器不需要进过转换规则,访问时防火墙直接将地址修改为指定IP地址,直接访问)

后记:

自己话综述Nat原理:(仅适用个人,有些描述不准确,只为便于理解)

由于私网,也就是局域网有很多设备,且都想上网的话本质上每台设备都需要一个公有IP,为了节省公有IP,就出现了Nat,就是在边界路由器连接公网的接口上将私网IP地址转换为接口的公有IP地址后进入公网,回来时再根据边界路由器的记录将IP地址换回去(出去换源,回来换目标IP)——这就是一对一nat(注意:在一对一nat中边界路由器基于转换的地址是漂浮地址,并不是接口地址,且该漂浮地址必须是额外的公有IP地址,即全球IP地址)

但是一对一nat每增加一个全球IP地址只能nat局域网中的一台上网设备,为了实现多台设备上网,就需要一对多的nat

一对一nat由于数量限制,边界路由器只需要记录源IP地址就能实现地址转换,且不会出错,但是当多个IP需要转换时会出现问题:进入公网还好,因为源IP不同,边界路由器能够分清楚,但是从公网回来时他们的目标IP都是边界路由器的IP地址,在往原本的私有IP转换时就不能一一对应(此时源IP是访问端的IP地址,目标IP是边界路由器IP地址)

此时需要有其他的标记来区分,MAC随着下一跳变化的,到达边界路由器接口时MAC地址还是一样的,不能用,于是想到了端口号(0-65535),每一个私有IP在进行转换时都会绑定一个端口号,此时当它回来时只需根据绑定的端口号与记录的端口号对应,就能区分他们原本的私有IP地址——这就是一对多nat

但是一对多nat在遇到大型的私有网络时,面临端口号不够用的情况,并且大量的nat转换都基于同一个公有地址进行转换,延迟也会增加,所以出现了多对多nat

多对多nat就是增加多个漂浮地址(公有IP地址池),这样就能保证更大的私有网络运行

以上nat解决了私有网络中设备上网问题,也就是内部访问外部,但是内部网络设有服务器时,还需要外部网络访问内部网络,但是我们知道外部网络只能访问边界路由器,而边界路由器要通过了nat转换,该转换虽然基于端口号,但是不是一直固定的,所以我们需要端口映射,将边界路由器上公有ip地址的某个端口,固定映射给某一个私有ip地址(这里是服务器IP地址),这样服务器就有了固定的访问地址,当外部设备访问该服务器时,路由到达边界路由器后固定发送给服务器,实现访问

如果觉得《HCIA-Nat(网络地址转换)+端口映射》对你有帮助,请点赞、收藏,并留下你的观点哦!

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。