NAT 地址转换
场景
内网私有地址要访问外网(源 NAT),或者外网要访问内网服务器(端口映射)。
前置条件
- 有公网地址或运营商分配的地址
- 知道要做转换的内网网段
- 明确是出方向还是入方向
配置
H3C
system-view
acl basic 2000
rule 0 permit source 192.168.10.0 0.0.0.255
quit
interface GigabitEthernet1/0/24
nat outbound 2000
nat server protocol tcp global current-interface 8080 inside 192.168.10.5 80
quit
华为
acl number 2000
rule 5 permit source 192.168.10.0 0.0.0.255
quit
interface GigabitEthernet0/0/24
nat outbound 2000
nat server protocol tcp global current-interface 8080 inside 192.168.10.5 80
quit
验证
display nat outbound
display nat server
display nat session brief
从内网访问外网能通、从外网访问映射端口能通,两边都验证一遍。
回滚
interface GigabitEthernet1/0/24
undo nat outbound 2000
undo nat server protocol tcp global current-interface 8080
坑
- 内网访问自己的公网映射地址不通,要开 NAT hairpin(回流)。
- 映射的端口和路由器自身管理端口冲突(比如 80)。
nat outbound的 ACL 写太宽,把管理网段也转换了。- 一对多映射(pat)端口耗尽,并发高时会失败。
- 双出口做了 NAT,回包从另一条链路回来会被丢。
- 改完 NAT 没清理会话,旧会话还在用旧规则。