今天的CCNA课程是两天的课程合集,都是讲NAT的内容,第一节是静态NAT,第二节则是动态NAT,所以我把两节课合在一起了。
我们之前讲过IPv4数量不够多,无法满足日益发展的网络需求,因此有效的IP地址越来越少,为了缓解这一情况呢,推出了IPv6。而在IPv6全面落实之前,有一些IPv4的缓解手段,分别是CIDR,私有IPv4地址以及今天要说的NAT。
CIDR就是无类域间路由,之前说过了。而私有IPv4之前也说过,目前我们有三个网段用作私有IP地址
10.0.0.0/8 也就是 10.0.0.0到 10.255.255.255
172.16.0.0/12 也就是172.16.0.0 到172.31.255.255
192.168.0.0/16 也就是192.168.0.0 到192.168.255.255
NAT则是私有IP地址的辅助工具。按照规定来说呢,使用私有地址在自己的 局域网内是没问题的,但是这些网络地址不是全球惟一的,因此是无法进入到互联网的,不进行任何配置的话路由器会把这几个地址的包丢弃掉。
比如192.168.1.1想去谷歌8.8.8.8,路由器直接就会丢弃掉。那么如何解决这个问题呢,也就是NAT的作用。
NAT 就是network address translation 的最主要作用是修改 source或者destination的IP地址。当然也可以起到网络安全等作用。但是最主要还是转换地址。
在CCNA考试要求中,只需要知道 source NAT 和如何配置就行,对于服务器那一端的NAT不做要求。
如下图所示,PC1想访问8.8.8.8,最初它发出来的包,source是自己,destination是8.8.8.8,到达R1后,R1会进行NAT转换,将source 地址转换为一个全球唯一的公有地址如例子中式203.0.113.1,然后这个包发到8.8.8.8后,服务器会回一个包并且到达路由器,然后R1再将回馈的包进行反向NAT,把destination 的IP地址改了。
![](https://www.chaostudy.com/wp-content/uploads/2021/12/image-18.png)
NAT有多种运行方式,像我们一般家用的路由器都会自动配置,一般来说都是默认动态,当然也可以手动配置静态的。
Static NAT的意思就是静态的将私有地址和公有地址进行一对一的匹配。
首先来了解一点概念,这个肯定会出现在CCNA的考试中,
一般来说,我们说客户端或者host或者内网一侧或者路由器的内部一侧等称之为inside,而与之相反,我们说服务器端或者server或者外网一侧或者路由器的外部一侧等称之为outside。
另外呢,我们说内网的这种地址称之为local,而外网或者说全球唯一的这种地址称之为global
因此呢,就有四种地址状态,inside local,inside global, outside local, outside global。
如下图所示,192.168.0.167就是inside local,100.0.0.1就是inside global,而理论上来说,outside这一侧应该也有NAT,但是CCNA考试范围不考察这里,所以默认情况下,我们认为outside global和outside local都是8.8.8.8.
![](https://www.chaostudy.com/wp-content/uploads/2021/12/image-19.png)
同理,PC2也有一个地址,对外交流的话也是类似的情况。这里我们可以联想到,如果每一个主机都要有一个inside global 地址的话,那么NAT就没啥意义了,有多少台机器就需要多少个公有地址,所以静态NAT一般是没人用的。
下面我们看看静态NAT的配置方法,
进入到路由器的config 模式
首先选择内侧的也就是内网这一侧的端口,将其设置为inside
int g0/1
ip nat inside
然后选择外侧的也就是互联网这一侧的端口,将其设置为outside
int g0/0
ip nat outside
exit
然后进行一对一的配置,下面192.168这两个地址就是inside local地址也就是主机地址,而100.0.0.1和.2是inside global地址,这个是要和供应商购买的,不是随便填写的。
ip nat inside source static 192.168.0.167 100.0.0.1
ip nat inside source static 192.168.0.168 100.0.0.2
最后这一个命令可以实时查看NAT状态
show ip nat translations
如下图所示
![](https://www.chaostudy.com/wp-content/uploads/2021/12/image-20.png)
另外一个命令就是
clear ip nat translation
这个命令用来清理NAT的动态缓存记录,除了手动配置的几条以外,其他都会被清理,如上图例子中,那几个UDP的就会被清理掉。如果不用该命令,一定时间后系统也会清理掉。
还一个命令是
show ip nat statistics
这一条命令会显示出当前的NAT情况,比如几个静态,几个动态,inside口,outside口等,如下图所示
![](https://www.chaostudy.com/wp-content/uploads/2021/12/image-21.png)
回到刚才提到的一个问题,静态NAT需要把inside local和inside global一一对应起来,这样无法解决公有地址日益稀少的问题,所以要用动态NAT,即多个inside local使用一个或者几个inside global。
一般来说,在动态NAT中,需要配置ACL,某些ACL允许的IP地址会被NAT,而某些ACL阻止的IP地址不会被NAT,包会被丢掉。
几个inside global可以配置成一个池子,称为NAT Pool
如下图所示,PC1和PC2的被允许NAT,池子有10个inside global的地址
![](https://www.chaostudy.com/wp-content/uploads/2021/12/image-22.png)
尽管看上去是动态的,实际上还是一对一的模式,先到先得,如果池子内的inside global地址用完了,除非之前的某个释放出来,否则后续的inside local也是无法NAT的,这个后续的inside local的包会被丢弃掉。
具体配置如下,和静态的类似,进入到config 模式
首先配置inside口
int g0/1
ip nat inside
然后配置outside 端口
int g0/0
ip nat outside
exit
接下来配置一个ACL
access-list 1 permit 192.168.0.0 0.0.0.255
这里配置NAT动态池,其中POOL1是名字可以随便起,后面两个地址分别是起始地址 最后可以写netmask 255.255.255.0也可以写这种prefix-length 24,两个格式都可以
ip nat pool POOL1 100.0.0.0 100.0.0.255 prefix-leength 24
最后应用动态NAT
ip nat inside source list 1 pool POOL1
如下图所示
![](https://www.chaostudy.com/wp-content/uploads/2021/12/image-23.png)
查看状态,统计,以及删除记录和静态的一样。其中NAT缓存记录默认是1分钟消失,这个也可以手动更改,但是不在CCNA考试范围内,因此不提。
此外我们再说一下,比NAT更加先进的PAT模式,也就是 port address translation。之前我们说很多地址可以使用一个或者若干个inside global地址,但是其实还是浪费,因为许多服务使用的是不同的端口号,因此很多包可以共用一个地址,而使用不同的端口号。
如下图所示,PC1和PC2使用一样的inside local 端口号,但是NAT可以把它转为2个不一样的。NAT路由器会保存追踪哪个inside local 使用了啥端口,然后转换,然后反向转换等等。
![](https://www.chaostudy.com/wp-content/uploads/2021/12/image-24.png)
配置方法和动态NAT差不多,进入到config 模式
还是先配置inside端口
int g0/1
ip nat inside
在配置outside端口
int g0/0
ip nat outside
exit
配置ACL
access-list 1 permit 192.168.0.0 0.0.0.255
配置个动态池子
ip nat pool POOL1 100.0.0.0 100.0.0.3 prefix-length 24
随后应用,和动态NAT的区别就是加了overload
ip nat inside source list 1 pool POOL1 overload
如下图所示
![](https://www.chaostudy.com/wp-content/uploads/2021/12/image-25.png)
除此之外,还有一种情况是不配置池子,只用一个地址,那么区别就是不配置池子,然后最后pool那里配置端口,命令如下,进入到config模式
先配置inside端口
int g0/1
ip nat inside
在配置outside端口
int g0/0
ip nat outside
exit
配置个ACL
access-list 1 permit 192.168.0.0 0.0.0.255
最后这里应用,注意这里用在了outside的端口
ip nat inside source list 1 interface g0/0 overload
-------------------------------------------------------分隔符-------------------------------------------------------------------
-------------------------------------------------------分隔符-------------------------------------------------------------------
-------------------------------------------------------分隔符-------------------------------------------------------------------
-------------------------------------------------------分隔符-------------------------------------------------------------------
-------------------------------------------------------分隔符-------------------------------------------------------------------
-------------------------------------------------------分隔符-------------------------------------------------------------------
-------------------------------------------------------分隔符-------------------------------------------------------------------
-------------------------------------------------------分隔符-------------------------------------------------------------------
-------------------------------------------------------分隔符-------------------------------------------------------------------
-------------------------------------------------------分隔符-------------------------------------------------------------------
Day 44 Anki Flashcard下载:https://drive.google.com/file/d/1IkolqW2aqFdFZ-wXcMPLCReG5d4gKT9f/view?usp=sharing
Day 44 Cisco Packet Tracer 练习题下载:https://drive.google.com/file/d/1McBmPdtiGos0fKTe_zYwzPhJBj-ZEfYe/view?usp=sharing
Day 44 Cisco Packet Tracer 练习题完成下载:https://drive.google.com/file/d/10nmsKWajGxg8nmamq_MNazZG4OAzEchB/view?usp=sharing
Day 45 Anki Flashcard下载:https://drive.google.com/file/d/1zQVxkOvX9EUsZ12STAbP380tS0C6mZ4b/view?usp=sharing
Day 45 Cisco Packet Tracer 练习题下载:https://drive.google.com/file/d/1hsIP7XiD_wBiodVDLpJNPWYLwHpWIFwT/view?usp=sharing
Day 45 Cisco Packet Tracer 练习题完成下载:https://drive.google.com/file/d/1v_8tIVcGUbVuIunSBhhdxgDlZ1czA5t7/view?usp=sharing
0 条评论