第43篇:企业上网少不了 NAT:Easy-IP 配置
关键词:Easy-IP、NAT、拨号上网、PPPoE、接口地址、华为配置、企业网关
一、引言
在上一篇中,我们学习了静态 NAT、动态 NAT 和 PAT 三种基本 NAT 类型。其中 PAT(端口地址转换)是企业上网最常用的方式。然而,很多中小企业通过 PPPoE 拨号获取公网 IP,这个 IP 不是固定的,每次拨号都会变化。此时,传统的 NAT 地址池配置就无法直接使用。
Easy-IP 就是为解决这个问题而生的。它直接将路由器出接口的当前 IP 地址作为 NAT 转换地址,无需预先配置地址池。只要接口有 IP,就能做 NAT。
二、核心概念
2.1 Easy-IP 工作原理
| 特性 | 说明 |
|---|---|
| 定义 | 将出接口的 IP 地址直接作为 NAT 转换后的公网地址 |
| 优势 | 无需配置地址池,IP 变化时无需修改配置 |
| 本质 | Easy-IP 是 PAT 的一种简化形式 |
| 适用场景 | 动态获取 IP 的场景(PPPoE 拨号、DHCP 客户端等) |
2.2 Easy-IP 与传统 PAT 对比
| 对比维度 | 传统 PAT(地址池) | Easy-IP |
|---|---|---|
| 公网地址来源 | 预先配置地址池 | 接口当前 IP |
| IP 变化处理 | 需要手动修改地址池 | 自动适应 |
| 配置复杂度 | 需定义 ACL + 地址池 + 出接口应用 | 仅需定义 ACL + 出接口应用 |
| 多 IP 场景 | 单个地址池可含多个公网 IP | 每 WAN 口使用自身 IP(多 WAN 口可负载分担) |
2.3 典型组网场景
场景一:PPPoE 拨号上网
家庭或中小企业通过 ADSL 或光纤拨号接入 Internet,运营商每次拨号分配不同的公网 IP。
场景二:DHCP 获取公网 IP
路由器 WAN 口通过 DHCP 从运营商获取公网 IP,IP 可能随租期变化。
场景三:多拨场景
多个拨号接口同时在线,每个接口使用各自的 IP 做 NAT(负载分担)。
三、技术细节
3.1 基本 Easy-IP 配置
# 场景:内网 192.168.1.0/24 通过 Dialer 接口拨号上网
# WAN 口为 Dialer0,通过 PPPoE 获取动态公网 IP
# Step 1: 配置内网接口
[HUAWEI] interface Vlanif10
[HUAWEI-Vlanif10] ip address 192.168.1.1 255.255.255.0
# Step 2: 配置 PPPoE 拨号(简要配置)
[HUAWEI] interface Dialer0
[HUAWEI-Dialer0] link-protocol ppp
[HUAWEI-Dialer0] ip address negotiate
[HUAWEI-Dialer0] dialer user test_user
[HUAWEI-Dialer0] dialer bundle 1
[HUAWEI] interface GigabitEthernet0/0/1
[HUAWEI-GigabitEthernet0/0/1] pppoe-client dialer-bundle number 1
# Step 3: 配置 Easy-IP
# 先定义 ACL 匹配内网流量
[HUAWEI] acl 2000
[HUAWEI-acl-basic-2000] rule 5 permit source 192.168.1.0 0.0.0.255
# 在 Dialer 接口上应用 Easy-IP(无需地址池)
[HUAWEI] interface Dialer0
[HUAWEI-Dialer0] nat outbound 2000
关键点: Easy-IP 的配置命令与传统 PAT 完全一样(
nat outbound <acl>),唯一的区别是没有指定 address-group。当nat outbound不指定地址池时,设备自动使用接口 IP 做转换,这就是 Easy-IP。
3.2 Easy-IP 配置验证
# 查看接口 IP(动态获取的公网 IP;Dialer 口经 PPPoE 协商得到 /32 地址)
<HUAWEI> display ip interface brief Dialer0
*down: administratively down
!down: FIB overload down
Interface IP Address/Mask Physical Protocol
Dialer0 123.45.67.89/32 up up
# 查看 NAT 会话(华为为分段式回显,此处取三条示例)
<HUAWEI> display nat session protocol tcp
NAT Session Table Information:
Protocol : TCP
SrcAddr Port : 192.168.1.100 1024
DestAddr Port : 8.8.8.8 443
NAT-Info
New SrcAddr : 123.45.67.89
New SrcPort : 54321
Protocol : TCP
SrcAddr Port : 192.168.1.101 2048
DestAddr Port : 8.8.8.8 443
NAT-Info
New SrcAddr : 123.45.67.89
New SrcPort : 54322
Protocol : TCP
SrcAddr Port : 192.168.1.102 3072
DestAddr Port : 8.8.8.8 443
NAT-Info
New SrcAddr : 123.45.67.89
New SrcPort : 54323
Total : 3
# 注意:New SrcAddr 就是 Dialer 接口动态获取的公网 IP 123.45.67.89(回显以版本为准)
# 查看 NAT 出方向规则(Easy-IP 即 nat outbound 不带 address-group,规则中无地址池索引)
<HUAWEI> display nat outbound
NAT Outbound Information:
Interface Acl Address-group/IP/Interface Type
Dialer0 2000 - -
Total : 1
# ① 官方 Type 列仅 no-pat 模式显示 no-pat,其余为空;"EASY-IP"并非官方 Type 取值
# ② Address-group/IP/Interface 一列显示地址池索引,Easy-IP 时为空或显示接口信息
# ③ 回显结构与列内容以设备版本为准
3.3 DHCP 客户端方式获取公网 IP
# 场景:WAN 口通过 DHCP 获取公网 IP
# Step 1: WAN 口配置 DHCP 客户端
[HUAWEI] interface GigabitEthernet0/0/1
[HUAWEI-GigabitEthernet0/0/1] ip address dhcp-alloc
# Step 2: 配置默认路由(下一跳使用 DHCP 获取的网关)
[HUAWEI] ip route-static 0.0.0.0 0.0.0.0 dhcp-alloc
# 引用 DHCP 网关的下一跳写法随版本而异(部分版本为 ip route-static ... <出接口> dhcp),以设备版本手册为准
# Step 3: 配置 Easy-IP
[HUAWEI] acl 2000
[HUAWEI-acl-basic-2000] rule 5 permit source 192.168.1.0 0.0.0.255
[HUAWEI] interface GigabitEthernet0/0/1
[HUAWEI-GigabitEthernet0/0/1] nat outbound 2000
# 注意:nat outbound 写在获取 IP 的同一个接口上
说明:
ip address dhcp-alloc是接口作为 DHCP 客户端获取 IP 的写法;ip address negotiate/ip address ppp-negotiate属于 PPP 协商(Dialer/串口接口),用途不同。具体命令与格式以目标设备版本的命令手册为准。
3.4 多 WAN 口 Easy-IP 负载分担
# 场景:两个 PPPoE 拨号,负载均衡
# 注:以下假设 acl 2000 已按 3.1 节定义(匹配内网 192.168.1.0/24)
# WAN1: Dialer0
[HUAWEI] interface Dialer0
[HUAWEI-Dialer0] nat outbound 2000
# WAN2: Dialer1
[HUAWEI] interface Dialer1
[HUAWEI-Dialer1] nat outbound 2000
# 两个 WAN 口应用同一 ACL(匹配同一批内网流量),由等价路由做逐流负载分担、
# 各口分别 NAT;如需按网段/业务分流,可分别使用不同 ACL(见 3.5 节)
# 默认路由负载分担
[HUAWEI] ip route-static 0.0.0.0 0.0.0.0 Dialer0 preference 60
[HUAWEI] ip route-static 0.0.0.0 0.0.0.0 Dialer1 preference 60
# 相同优先级(preference)实现等价路由负载分担
# 负载分担默认逐流(per-flow)进行,同一 NAT 会话保持同一出口;
# "同一主机的多个连接是否都走同一出口"取决于负载分担算法与选路策略,以设备版本为准
3.5 Easy-IP 与地址池 NAT 混用
# 场景:部分流量走 Easy-IP(拨号口),部分流量走专线口(固定公网 IP,同样可选 Easy-IP 或地址池)
# 以下两条规则均为"不指定 address-group"的 Easy-IP 用法,各自使用所在接口的 IP 做转换
# 专线口:固定公网 IP 203.0.113.1
[HUAWEI] interface GigabitEthernet0/0/2
[HUAWEI-GigabitEthernet0/0/2] ip address 203.0.113.1 255.255.255.252
# 拨号口:动态 IP
[HUAWEI] interface Dialer0
[HUAWEI-Dialer0] ip address negotiate
# ACL 1:高优先级业务走专线
[HUAWEI] acl 3000
[HUAWEI-acl-adv-3000] rule 5 permit tcp source 192.168.100.0 0.0.0.255 destination-port eq 443
# ACL 2:普通上网走拨号
[HUAWEI] acl 2000
[HUAWEI-acl-basic-2000] rule 5 permit source 192.168.1.0 0.0.0.255
# 专线口应用
[HUAWEI] interface GigabitEthernet0/0/2
[HUAWEI-GigabitEthernet0/0/2] nat outbound 3000
# 拨号口应用 Easy-IP
[HUAWEI] interface Dialer0
[HUAWEI-Dialer0] nat outbound 2000
四、实战配置/案例分析
4.1 案例一:家庭路由器 Easy-IP 完整配置
背景:某家庭使用华为 AR 系列路由器,光猫桥接模式下,路由器 PPPoE 拨号上网。
# ===== 完整配置 =====
# 1. 内网 LAN 口
[HUAWEI] interface Vlanif10
[HUAWEI-Vlanif10] ip address 192.168.3.1 255.255.255.0
# 2. WAN 口物理接口
[HUAWEI] interface GigabitEthernet0/0/0
[HUAWEI-GigabitEthernet0/0/0] pppoe-client dialer-bundle number 1
# 3. PPPoE 拨号接口
[HUAWEI] interface Dialer0
[HUAWEI-Dialer0] link-protocol ppp
[HUAWEI-Dialer0] ip address negotiate
[HUAWEI-Dialer0] ppp authentication-type chap
[HUAWEI-Dialer0] ppp chap user broadband_user
# ppp chap user 配置本地 CHAP 认证用户名(被认证方);注意不是 ppp chap username
[HUAWEI-Dialer0] ppp chap password cipher Huawei@123
[HUAWEI-Dialer0] dialer user broadband_user
[HUAWEI-Dialer0] dialer bundle 1
# 4. DHCP 服务器(给内网 PC 分配 IP)
[HUAWEI] dhcp enable
[HUAWEI] ip pool LAN_POOL
[HUAWEI-ip-pool-LAN_POOL] network 192.168.3.0 mask 255.255.255.0
[HUAWEI-ip-pool-LAN_POOL] gateway-list 192.168.3.1
[HUAWEI-ip-pool-LAN_POOL] dns-list 114.114.114.114
[HUAWEI] interface Vlanif10
[HUAWEI-Vlanif10] dhcp select global
# 5. Easy-IP NAT
[HUAWEI] acl 2000
[HUAWEI-acl-basic-2000] rule 5 permit source 192.168.3.0 0.0.0.255
[HUAWEI] interface Dialer0
[HUAWEI-Dialer0] nat outbound 2000
# 6. 默认路由
[HUAWEI] ip route-static 0.0.0.0 0.0.0.0 Dialer0
# 7. 保存配置
<HUAWEI> save
4.2 案例二:拨号后 NAT 不生效
故障现象:PPPoE 拨号成功获取到公网 IP,但内网无法上网。
# 排查步骤
# Step 1: 确认拨号成功且获取到 IP
<HUAWEI> display ip interface brief Dialer0
# 确认 Dialer0 有公网 IP 且状态为 up/up
# Step 2: 确认默认路由存在
<HUAWEI> display ip routing-table
# 应存在 0.0.0.0/0 指向 Dialer0
# Step 3: 确认 NAT 配置
<HUAWEI> display current-configuration interface Dialer0
# 检查是否有 nat outbound 命令
# Step 4: 确认 ACL 匹配内网流量
<HUAWEI> display acl 2000
# 检查 ACL 2000 是否正确匹配内网网段
# Step 5: 验证 NAT 转换是否生效
<HUAWEI> display nat session all
# 访问外网后若有新的 NAT 会话生成、且 New SrcAddr 为公网 IP,说明转换正常
# 若无会话生成,优先检查 ACL 网段、nat outbound 所挂接口与方向
<HUAWEI> display acl dataplane statistics 2000
# 查看 ACL 2000 转发面命中计数;命中为 0 时问题在匹配侧(命令以版本为准)
# 如需抓包定位,部分平台可用 capture-packet interface Vlanif10(命令因版本而异)
# 抓包关注点:内网发出的包源 IP 应为私网地址;Dialer 口发出的包源 IP 应为公网地址
# 常见根因:
# 1. nat outbound 未配置 → 补充 nat outbound 2000
# 2. ACL 网段错误 → 修正为实际内网网段
# 3. PPPoE 未拨通 → 检查用户名密码
4.3 案例三:IP 变更导致外网无法访问内网服务
故障背景:企业通过 PPPoE 拨号上网,内部有一台 Web 服务器通过静态 NAT 对外发布。每次路由器重启重拨后,外网 IP 变化,导致域名解析到的旧 IP 无法访问。
# 问题根因:
# PPPoE 每次拨号 IP 不同 → 静态 NAT 的公网 IP 也跟着变化
# 域名解析缓存旧 IP → 外网用户访问失败
# 解决方案:
# 方案1(推荐):申请固定公网 IP(专线)
# 方案2:部署动态 DNS(DDNS)
# DDNS 配置示例(华为 AR 路由器思路)
# 实际 VRP 命令以设备版本手册为准,下面给出常见结构:
[HUAWEI] ddns policy myddns
# URL 中 <h> 代表主机名(FQDN)、<a> 代表接口当前 IP,由设备自动代入(变量写法以版本为准)
[HUAWEI-ddns-policy-myddns] url http://members.3322.org/dyndns/update?hostname=<h>&myip=<a>
[HUAWEI-ddns-policy-myddns] username ddns_user
[HUAWEI-ddns-policy-myddns] password cipher Ddns@123
[HUAWEI-ddns-policy-myddns] interval 60 # 更新间隔,单位与取值范围以版本为准
[HUAWEI] interface Dialer0
[HUAWEI-Dialer0] ddns apply policy myddns fqdn mycompany.ddns.net
# IP 变更后,路由器自动向 DDNS 服务器更新域名解析
说明:华为 VRP 在不同版本提供的 DDNS 命令和参数有所差异,部分平台还可能需要先开启
ddns enable,并配置 DNS 解析(dns resolve、dns server)后才能正常更新。正式部署前请按设备版本手册核对完整命令。
五、总结
| 对比维度 | Easy-IP | 地址池 PAT |
|---|---|---|
| 公网地址来源 | 接口当前 IP | 预配置地址池 |
| IP 变动适应 | 自动 | 需手动修改 |
| 配置命令 | nat outbound <acl> |
nat outbound <acl> address-group <n> |
| 多 IP 支持 | 单接口单 IP | 地址池多 IP |
| 典型场景 | PPPoE 拨号、DHCP | 固定专线、多 IP 池 |
| Easy-IP 配置检查清单 | 说明 |
|---|---|
| 出接口已获取 IP | 拨号成功或 DHCP 获取成功 |
| 默认路由指向出接口 | 否则流量不到达出口 |
| ACL 匹配内网源地址 | 范围不能过大或过小 |
| nat outbound 应用在出接口 | 而非入接口 |
| DNS 配置正确 | 内网需要 DNS 解析域名 |
| 保存配置 | 重启后配置不丢失 |
思考
- Easy-IP 不指定 address-group,设备如何知道使用哪个 IP 做地址转换?
- 如果 PPPoE 拨号失败(没有获取到 IP),Easy-IP 配置是否还会生效?
- Easy-IP 与动态 NAT 地址池模式相比,在并发连接能力上有区别吗?
下篇预告:第44篇:NAT 服务器映射:内网服务器对外发布