XYCOVO CONSOLE KURISU · WEB 渗透 / AI 辅助攻防 ONLINE
#032 · 2024-04-10✓ PASS

NAT 实验

NAT(网络地址转换)实验,配置 NAPT、EASY IP 和 NAT SERVER,实现私网访问公网及公网访问内网服务。
csdn网络实验natciscoAUTHOR: KURISU

实验拓扑

实验拓扑图

实验需求

  1. 按照图示配置 IP 地址,公网地址 100.1.1.1/24
  2. 私网 A 通过 NAPT,使 R1 接入到互联网
  3. 私网 B 通过 EASY IP,使 R3 接入到互联网
  4. 私网 A 配置 NAT SERVER 把 Telnet 服务发布到公网,使 PC2 可以访问

技术原理

NAT(Network Address Translation,网络地址转换)是将私有 IP 地址转换为公网 IP 地址的技术,用于解决 IPv4 地址枯竭问题。

NAT 类型原理适用场景
NAPT多个私网 IP + 端口 → 一个公网 IP 池,通过端口号区分多用户共享上网(最常用)
EASY IP直接复用出接口的公网 IP,无需配置地址池ADSL/家庭宽带等动态 IP 场景
NAT SERVER公网 IP:端口 → 私网 IP:端口 的静态映射对外发布内网服务(Web/Telnet/FTP)

NAPT 工作原理

私网PC(192.168.1.x) → R1 → 公网IP池 → R2(公网) → 目标
内网多台主机共享公网 IP 池地址,路由器通过维护 NAT 转换表
(源IP+源端口 ↔ 公网IP+新端口)实现数据包的准确回传。

EASY IP 与 NAPT 的区别

NAPTEASY IP
地址池需要手动创建无需,自动使用接口 IP
配置复杂度较高极简
IP 使用效率高(可复用)最高(单IP即可)

实验步骤

步骤 1:配置各设备 IP 地址

IP地址配置

配置 Telnet 服务:

Telnet配置

各设备 IP 配置截图:

设备接口IP 地址
R1-见配置截图
R2-见配置截图
R3-见配置截图
PC1-见配置截图
PC2-见配置截图

R1配置

R2配置

R3配置

PC1配置

PC2配置

步骤 2:配置 Telnet 服务

在 R1 上配置 Telnet 远程登录服务,供后续 NAT SERVER 映射测试使用:

Telnet服务配置

# Telnet 配置要点
Router(config)# aaa new-model
Router(config)# username admin privilege 15 password admin123
Router(config)# line vty 0 4
Router(config-line)# login local
Router(config-line)# transport input telnet

步骤 3:配置公网互通(默认路由)

R1 和 R3 作为公私网边界设备,需配置默认路由指向公网:

公网路由配置1

公网路由配置2

测试公网通:PC1 ping R3 公网地址,确认可达:

公网通测试

步骤 4:私网 A 配置 NAPT

在 R1 上配置 NAPT,使私网 A 通过公网地址池访问互联网:

NAPT配置

# NAPT 配置命令(Cisco IOS)
R1(config)# access-list 1 permit 192.168.1.0 0.0.0.255
R1(config)# ip nat pool NAPT_POOL 100.1.1.10 100.1.1.20 netmask 255.255.255.0
R1(config)# ip nat inside source list 1 pool NAPT_POOL overload
R1(config)# interface g0/0    # 内网接口
R1(config-if)# ip nat inside
R1(config)# interface g0/1    # 公网接口
R1(config-if)# ip nat outside

测试:私网 PC ping 公网地址,验证 NAPT 是否生效:

NAPT测试

步骤 5:私网 B 配置 EASY IP

在 R3 上配置 EASY IP,直接复用出接口公网 IP:

EASY IP配置1

EASY IP配置2

# EASY IP 配置(无需地址池)
R3(config)# access-list 1 permit 192.168.1.0 0.0.0.255
R3(config)# ip nat inside source list 1 interface g0/0 overload
R3(config)# interface g0/0    # 公网接口
R3(config-if)# ip nat outside
R3(config)# interface g0/1    # 内网接口
R3(config-if)# ip nat inside

注意:EASY IP 与 NAPT 的核心区别 —— 使用 interface 关键字替代 pool,直接复用接口 IP。

步骤 6:私网 A 配置 NAT SERVER

将 R1 内网的 Telnet 服务映射到公网,使 PC2 可以通过公网 IP 访问:

NAT SERVER配置

# NAT SERVER(静态端口映射)
R1(config)# ip nat inside source static tcp 192.168.1.2 23 100.1.1.1 23

测试:PC2 通过 telnet 100.1.1.1 访问内网 Telnet 服务器:

NAT SERVER测试

验证命令

命令用途
show ip nat translations查看 NAT 转换表
show ip nat statistics查看 NAT 统计信息
show ip route检查路由表
ping + telnet端到端连通性测试

常见问题

  1. NAT 转换不生效 → 检查 ip nat inside / ip nat outside 是否配置在正确的接口上
  2. 公网无法访问内网服务 → 检查 NAT SERVER 端口号和协议类型是否正确
  3. 部分主机无法上网 → 检查 ACL 是否覆盖了该主机的私网地址段
  4. 路由不可达 → 确认默认路由 ip route 0.0.0.0 0.0.0.0 <下一跳> 已配置
← #031 TCP 三次握手…#033 RIP 实验… →