在Cisco Packet Tracer上配置NAT

前言

本篇文章是在了解NAT的原理基础上,通过使用Cisco Packet Tracer 网络模拟器实现模拟对NAT的配置,以加深对NAT的理解。

一、搭建网络拓扑

在这里插入图片描述

1.1 配置PC机

主机名 IP地址 子网掩码 网关IP
PC3 192.168.10.2 255.255.255.0 192.168.10.1
PC4 192.168.10.3 255.255.255.0 192.168.10.1

PC3的配置如下:
在这里插入图片描述
PC4的配置如下
在这里插入图片描述

测试是否配置成功:
在这里插入图片描述
PC3成功ping通PC4,说明配置成功。

1.2 配置客户路由器

接口名 IP地址 子网掩码
fa0/0 192.168.10.1 255.255.255.0
fa0/1 66.1.1.1 255.255.255.0

配置接口fa0/0:

1. 进入特权模式
命令:enable
Router>enable
Router#

2. 进入配置模式
命令:configure
Router#configure
Router(config)#

3. 进入配置接口fa0/0
命令:interface fa0/0
Router(config)#interface fa0/0

4. 为接口配置ip地址
命令:ip address ip地址 子网掩码
Router(config-if)#ip address 192.168.10.1 255.255.255.0
5. 启动接口
命令:no shutdown
Router(config-if)#no shutdown

配置接口fa0/1:

退出接口配置
命令:exit
Router(config-if)#exit
Router(config)#

1. 配置接口fa0/1
Router(config)#interface fa0/1
Router(config-if)#

2. 配置ip
Router(config-if)#ip address 64.1.1.1 255.255.255.0

3. 开启接口
Router(config-if)#no shutdown

测试fa0/0是否配置成功,利用PC3ping fa0/0的IP地址。
在这里插入图片描述
成功ping通,说明配置成功。
测试fa0/1是否配置成功,利用PC3 ping fa0/1的IP地址
在这里插入图片描述
成功ping通,说明配置成功。

疑问:为什么PC3可以ping通fa0/1呢?
这就涉及到两个不同子网进行通信的原理了。过程如下:

  1. PC3 执行ping 66.1.1.1,发现这个IP和自己不在同一个网段。PC3向网关fa0/0发送一个ARP包,获取网关fa0/0的MAC地址;然后将这个MAC地址作为数据包的目的MAC地址,将数据包发给网关fa0/0
  2. 网关fa0/0收到这个数据包之后,根据查看数据包的目标IP,然后查看路由表,发现这个数据包属于66.1.1.0这个网段,然后将目的MAC改为fa0/1的MAC,网关fa0/0将这个数据包发给fa0/1。
  3. 网关fa0/1收到这个数据包后,发送一个应答包给PC3。

1.3 配置ISP路由器

接口名字 IP地址 子网掩码
fa0/0 66.1.1.254 255.255.255.0

配置如下:

1. 进入特权模式
命令:enable
Router>enable
Router#

2. 进入配置模式
命令:configure
Router#configure
Router(config)#

3. 进入配置接口fa0/0
命令:interface fa0/0
Router(config)#interface fa0/0

4. 为接口配置ip地址
命令:ip address ip地址 子网掩码
Router(config-if)#ip address 64.1.1.254 255.255.255.0
5. 启动接口
命令:no shutdown
Router(config-if)#no shutdown

测试是否配置成功,利用客户路由器 ping ISP路由器
在这里插入图片描述
以上,则成功搭建这个简单的网络拓扑。

二、配置NAT

在配置NAT之前,问:为什么要配置NAT呢?
在回答这个问题前,可以尝试让PC3去访问ISP路由器,看看结果如何。
在这里插入图片描述
结果发现,PC3无法访问ISP路由器。那么怎样才能访问呢?
通过测试发现,客户路由器是可以访问ISP路由器的,那么怎样可以借助客户路由器访问到ISP路由器呢?
答案:通过NAT。
这里就不讨论NAT的原理,有兴趣可查看另一篇文章: https://blog.csdn.net/pyc68/article/details/139420920?spm=1001.2014.3001.5501

2.1 在客户路由器中配置NAT

在客户路由器配置NAT的具体步骤如下:

  1. 创建ACL,用于过滤数据包,即哪些IP地址需要进行地址转换。
  2. 创建一个NAT地址池(公网IP地址池)。
  3. 把创建的ACL与NAT地址池进行映射。
  4. 将私网网关设置为内网口,将外网网关设置为外网口

配置的信息如下:

1. 创建ACL
命令:access-list acl编号 permit 私网IP网段 反向掩码
Router(config)#access-list 1 permit 192.168.10.0 0.0.0.255
Router(config)#

2. 创建公网ip地址池
命令:ip nat pool 地址池名字 公网ip起始地址 公网ip结束地址 netmask 公网ip掩码
     这里在地址池创建66.1.1.2~66.1.1.5 四个公网IP,为地址转换提供
Router(config)#ip nat pool natpool 66.1.1.2 66.1.1.5 netmask 255.255.255.0
Router(config)#

3. acl与地址池进行映射
命令:ip nat inside source list acl编号 pool 地址池名字 overload
	 注:overload意思是开启端口映射
Router(config)#ip nat inside source list 1 pool natpool overload
Router(config)#

4. 将fa0/0口设置为内网口
Router(config)#interface fa0/0
Router(config-if)#ip nat inside
Router(config-if)#
Router(config-if)#exit
Router(config)#

5. 将fa0/1设置为外网口
Router(config)#interface fa0/1
Router(config-if)#ip nat outside

2.2 测试是否配置成功

再用PC3访问ISP路由器,查看是否成功
在这里插入图片描述
查看PC4是否可以访问ISP路由器
在这里插入图片描述
查看客户路由器表的NAT转换表
在这里插入图片描述
客户路由器根据nat转换表可以将ISP路由器的回包发给私网的对应主机。

总结

NAT这个技术可以将私网IP转换成公网IP后,实现访问互联网的功能。
私网IP无法直接访问互联网的本质原因是ISP路由器上没有关于私网IP的路由信息。

相关推荐

  1. <span style='color:red;'>NAT</span><span style='color:red;'>配置</span>

    NAT配置

    2024-06-09 18:04:02      38 阅读
  2. Nexus配置Docker镜像仓库

    2024-06-09 18:04:02       34 阅读
  3. github配置使用CI

    2024-06-09 18:04:02       25 阅读
  4. Ubuntu配置(安装,使用)Nginx

    2024-06-09 18:04:02       16 阅读

最近更新

  1. TCP协议是安全的吗?

    2024-06-09 18:04:02       18 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-06-09 18:04:02       19 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-06-09 18:04:02       19 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-06-09 18:04:02       20 阅读

热门阅读

  1. 解释关系型数据库和非关系型数据库的区别

    2024-06-09 18:04:02       8 阅读
  2. MySQL数据库基础练习系列2、图书借阅管理系统

    2024-06-09 18:04:02       10 阅读
  3. Git退出账号命令的使用方法

    2024-06-09 18:04:02       11 阅读
  4. 微信小程序【WXML】

    2024-06-09 18:04:02       11 阅读
  5. leetcode 数组排序

    2024-06-09 18:04:02       11 阅读
  6. Linux Shell Script 编写入门

    2024-06-09 18:04:02       12 阅读
  7. chrony内网同步服务器时间

    2024-06-09 18:04:02       9 阅读
  8. iOS不改变frame,能写出一个位移动画

    2024-06-09 18:04:02       12 阅读
  9. 2024.6.8

    2024-06-09 18:04:02       11 阅读
  10. Web前端大型导航:深度探索与构建之路

    2024-06-09 18:04:02       11 阅读
  11. 一些计算机网络面试题

    2024-06-09 18:04:02       10 阅读
  12. Python基础教程(七):函数编程-从基础到进阶

    2024-06-09 18:04:02       11 阅读