HCIA12 NAT网络地址转换实验

NAT(Network Address Translation)是将 IP 报头中的 IP 地址转换为另一个 IP 地址的过程。主要俩好处:

• 有效避免来自外网的攻击,可以很大程度上提高网络安全性。

• 控制内网主机访问外网,同时也可以控制外网主机访问内网,解决了内网和外网不能互通的问题。

1.实验介绍及拓扑

  1. R1 和 R2 之间的网络属于企业内部网络,使用私网 IPv4 地址。

  2. R1 模拟客户端,R2 作为 R1 的网关,同时也是连接公网的出口路由器。

  3. R3 模拟公网。

2.掌握内容及配置思路

#配置动态NAT

#配置Easy IP

#配置NAT Server

3.配置步骤

3.1基本配置

# 接口 IP 地址和路由配置、

# 配置 R1 和 R3 的 telnet 功能(用于后续实验验证)

# 测试当前联通性

|--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|------------------------------------------------------------------------------------------------------------------|--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| R1 | R2 | R3 |
| sys sys R1 int g0/0/0 ip add 192.168.1.1 24 ip route-static 0.0.0.0 0 192.168.1.254 | sys sys R2 int g0/0/0 ip add 192.168.1.254 24 int g0/0/1 ip add 1.2.3.4 24 # ip route-static 0.0.0.0 0 1.2.3.254 | sys sys R3 int g0/0/1 ip add 1.2.3.254 24 |
| user-interface vty 0 4 authentication-mode aaa quit aaa local-user huawei password cipher Huawei@123 local-user huawei service-type telnet local-user huawei privilege level 3 | | user-interface vty 0 4 authentication-mode aaa quit aaa local-user huawei password cipher Huawei@123 local-user huawei service-type telnet local-user huawei privilege level 3 |

测试连通性

R1\]ping 1.2.3.254 ![](https://img-blog.csdnimg.cn/direct/3437f0b4420648978d5e0a7012d5a8b5.png) \[R2\]ping 1.2.3.254 ![](https://img-blog.csdnimg.cn/direct/d6665b5b96114a31a9932b5a4100a121.png) 因为当前R3没有配置到192.168.1.0/24网段的路由,R1无法访问R3。 实际情况下,R3这种运营商路由器也禁止配置到私网IP网段的路由 ### **3.2出口路由器配置动态NAT** #假设该公司获得了1.2.3.10 至1.2.3.20 这段公网IP,然后配置动态NAT地址池 #### # 配置 NAT 地址池 #### # 配置 ACL #### # 出口路由器 R2 的 G0/0/1匹配acl2000并调用动态 NAT |----------------------------------------------|------------------------------------------------------------------------------------------------| | R2 | | | nat address-group 1 1.2.3.10 1.2.3.20 | | | acl 2000 rule 5 permit source any | | | int g0/0/1 nat outbound 2000 address-group 1 | #nat outbound使关联命令,关联acl和nat #当地址池中地址的数量足够时,可以在命令后添加no-pat参 数,表示使用一对一的地址转换,只转换数据报文的地址而不转换端口信息。 | #测试连通性 \[R1\]ping 1.2.3.254 ![](https://img-blog.csdnimg.cn/direct/fe263e43510c41a995b5f45567a5159f.png) # R1 通过telnet 远程登录到R3(模拟TCP 流量) \telnet 1.2.3.254 ![](https://img-blog.csdnimg.cn/direct/0b85db8b480747a2a6e86feba9e11232.png) 这里还排错了,显示不支持认证模式,所以需要再R3vty接口增加aaa模式 ![](https://img-blog.csdnimg.cn/direct/711c9a4cc3684a65abe6cf9ea56463f4.png) # 查看R2 上的NAT 会话表 \[R2\]display nat session all ![](https://img-blog.csdnimg.cn/direct/8ed1ff376e574fcbbc918ab0116e0097.png) 尽管此时R3没有到R1的路由条目,但是由于转换后的源地址为1.2.3.11,R3会将数据回复给该地址,R2收到后会根据NAT会话表中的数据重新转换为R1的地址并转发。所以此时R1可以主动发起到R3的访问。 ### **3.3配置Easy NAT(非常简单)** #假设出口路由器R2 的G0/0/1 不是固定IP 地址(而是通过DHCP 动态获取或PPPoE 拨号获取),此时需要配置Easy IP。(家庭路由器上网一般就是这种方式) #### #直接在接口配置nat出向并调用acl \[R2

interface GigabitEthernet 0/0/1

undo nat outbound 2000 address-group 1

nat outbound 2000

R1\]ping 1.2.3.254 ![](https://img-blog.csdnimg.cn/direct/2339fc6d93234631998c623ead64a4a1.png) # R1 通过 telnet 远程登录到 R3(模拟 TCP 流量) ![](https://img-blog.csdnimg.cn/direct/81349228bce2491296add6e5082720e9.png) ![](https://img-blog.csdnimg.cn/direct/2ecd1cb3aed547e5a0ebc0337f2ece04.png) ### **3.4 配置NAT Server** 假设 R1 要向公网提供网络服务(用 telnet 模拟),由于 R1没有公网 IP 地址,故需要在 R2 的出接口上配置 NAT Server。即外网要访问内网某服务器地址,故需要在R2 的出接口上配置NAT Server,做一对一映射,将出口路由器外网口映射成内网某服务器地址 #### #直接配置映射 \[R2

interface G0/0/1

nat server protocol tcp global current-interface 2323 inside 192.168.1.1 telnet

nat server命令用来定义一个内部服务器的映射表,外部用户可以通过地址和端口转换来访问内部服务器的某项服务。配置内部服务器可以使外部网络主动访问私网中的服务器。当外部网络向内部服务器的外部地址(global-address)发起连接请求时,NAT将该请求的目的地址替换为私网地址(inside-address)后,转发给私网内的服务器。

#验证

# R3 通过telnet 远程登录到R1

# 查看R2 上的NAT 会话表

这里目的端口应该是2323,转换口新端口应该是23 。

转换成功了,但是现象不对

4.验证

相关推荐
Web极客码1 小时前
虚拟主机与独立服务器:哪个更好?
运维·服务器·虚拟主机
小突突突1 小时前
个人博客系统测试报告
运维·网络·功能测试
水银嘻嘻1 小时前
web 自动化之 Unittest 四大组件
运维·前端·自动化
爆肝疯学大模型1 小时前
SQL server数据库实现远程跨服务器定时同步传输数据
运维·服务器·数据库
triticale1 小时前
【Java】网络编程(Socket)
java·网络·socket
wanhengidc2 小时前
服务器中存储空间不足该怎么办?
运维·服务器·网络
soulermax2 小时前
数字ic后端设计从入门到精通4(含fusion compiler, tcl教学)CMOS VLSI Design
网络·硬件架构
kedvellek2 小时前
Linux 内核链表宏的详细解释
linux·运维·链表
冼紫菜3 小时前
解决 CentOS 7 镜像源无法访问的问题
linux·运维·服务器·centos
几道之旅3 小时前
分别在windows和linux上使用curl,有啥区别?
linux·运维·windows