知识点3:动态目的NAT的配置总结

一句话总结配置逻辑:

安全策略决定"能不能过",NAT策略决定"怎么换IP"。流量先过安全策略,再过NAT策略。


一、场景设定

  • 内网区域:trust 区域,网段 192.168.1.0/24

  • 外网区域:untrust 区域,互联网

  • 防火墙接口:

    • G1/0/1 (接内网,加入 trust 区域)

    • G1/0/2 (接外网,加入 untrust 区域)

  • NAT地址池:202.100.1.10 到 202.100.1.20 (公司公网IP)


二、分步配置逻辑

第一步:先搞通路由和安全策略(先能通,再考虑转换)

1. 路由配置

内网到外网:默认路由指向外网网关

bash 复制代码
ip route-static 0.0.0.0 0.0.0.0 202.100.1.1

外网到内网:NAT会自动处理,通常不需要静态路由

2. 安全策略配置(核心逻辑:谁,从哪里来,到哪里去,允许什么服务)

安全策略是防火墙的第一道关卡,基于原始IP地址做判断。

bash 复制代码
# 进入安全策略视图
security-policy

# 创建一条策略规则
rule name trust_to_untrust  # 规则名称
  source-zone trust          # 源区域:流量从哪里来(内网)
  destination-zone untrust   # 目的区域:流量到哪里去(外网)
  source-address 192.168.1.0 24  # 源地址:内网整个网段
  action permit              # 动作:允许通过

逻辑解析:

  • 这条策略说:"允许来自内网信任区域的所有IP,访问外网不信任区域。"

  • 此时还没有任何NAT转换,安全策略看到的是用户真实的私网IP(192.168.1.x)。

  • 如果没有这条策略,内网流量根本到不了NAT环节就会被丢弃。


第二步:配置NAT策略(决定哪些流量需要转换IP)

NAT策略是第二道处理环节,处理已经通过安全策略的流量。

bash 复制代码
# 1. 首先定义NAT地址池(有哪些公网IP可用)
nat address-group NAT_POOL  # 地址池名称
  mode pat                   # PAT模式(多对多,带端口转换)
  section 0 202.100.1.10 202.100.1.20  # IP范围

# 2. 创建NAT策略
nat-policy
  rule name trust_to_untrust_nat  # 规则名称
    source-zone trust             # 源区域(和内网匹配)
    destination-zone untrust      # 目的区域(和外网匹配)
    source-address 192.168.1.0 24 # 源地址段(和内网匹配)
    action source-nat address-group NAT_POOL  # 动作:做源NAT,用这个地址池

逻辑解析:

  1. 匹配条件:这条NAT策略的匹配条件(源区域、目的区域、源地址)和安全策略高度相似,但作用完全不同。
  2. 执行时机:
    • 用户192.168.1.100访问百度
    • 第一步:流量到达防火墙,匹配安全策略trust_to_untrust → 允许通过
    • 第二步:通过后的流量进入NAT处理,匹配NAT策略trust_to_untrust_nat → 执行转换
  3. 转换过程:
    • 从NAT_POOL中动态选择一个公网IP(比如202.100.1.10)
    • 把源IP从192.168.1.100换成202.100.1.10,同时可能换源端口
    • 记录转换关系到会话表
    • 转发到互联网

三、完整工作流程(最直观的逻辑)

想象一个内网用户访问百度:


四、关键点与易错点

1. 顺序很重要

bash 复制代码
# 错误认知:以为配置顺序就是执行顺序
# 正确理解:执行顺序是固定的,与配置顺序无关

流量 → 安全策略 → NAT策略 → 转发

2. NAT策略不一定需要

  • 如果内网用户不需要访问互联网,只需要安全策略,不需要NAT策略。

  • 如果需要访问,但内网用的是公网IP(很少见),也只需要安全策略,不需要NAT。

3. 安全策略看的是原始IP

bash 复制代码
# 注意:安全策略和NAT策略都基于zone,而不是接口IP
# 所以必须先把接口加入正确的zone:
firewall zone trust
  add interface GigabitEthernet1/0/1
  
firewall zone untrust
  add interface GigabitEthernet1/0/2

五、精简配置示例(常用模板)

bash 复制代码
# 1. 接口和区域
interface GigabitEthernet1/0/1
  ip address 192.168.1.1 255.255.255.0
  
interface GigabitEthernet1/0/2
  ip address 202.100.1.1 255.255.255.0

firewall zone trust
  add interface GigabitEthernet1/0/1

firewall zone untrust  
  add interface GigabitEthernet1/0/2

# 2. 路由
ip route-static 0.0.0.0 0.0.0.0 202.100.1.254

# 3. NAT地址池
nat address-group INTERNET_POOL
  mode pat
  section 0 202.100.1.10 202.100.1.20

# 4. 安全策略(先放行)
security-policy
  rule name PERMIT_LAN_TO_INTERNET
    source-zone trust
    destination-zone untrust
    source-address 192.168.1.0 24
    action permit

# 5. NAT策略(后转换)
nat-policy
  rule name NAT_LAN_TO_INTERNET
    source-zone trust
    destination-zone untrust
    source-address 192.168.1.0 24
    action source-nat address-group INTERNET_POOL

总结逻辑:安全策略是"大门守卫",NAT策略是"化妆师"。流量必须先被守卫放行,才能让化妆师给它换个"公网脸"出去见人。

相关推荐
数据知道21 分钟前
容器安全入门:Docker 逃逸原理与 5 个经典 CVE
安全·网络安全·docker·容器
Dawn-bit1 小时前
Linux磁盘分区与Swap和磁盘故障查询
linux·运维·服务器·网络·云计算
llilian_162 小时前
便携式相位测量模块应用方案的核心优势
网络·功能测试·单片机
QH139292318803 小时前
# R&S ZNB43 ZNA43 ZNA67矢量网络分析仪
开发语言·网络·php
栋***t3 小时前
2026年不止防作弊,麦塔在线培训系统培训与考试安全的体系化设计
网络·安全
宁风NF4 小时前
JavaScript:网络请求与前端通信
开发语言·前端·javascript·网络·学习·ecmascript
孪生质数-5 小时前
AI Agent 工程实践(一):大模型 API 接入示范
网络·人工智能·ai·chatgpt·github·claude·claudecode
雾里0不看花5 小时前
【App Service Linux】在Linux App Service中安装 tcpdump 并抓取网络包
linux·网络·tcpdump
紫禁玄科6 小时前
勒索软件攻击深度解析
web安全·网络安全·系统安全
深圳市爱派派智能科技有限公司6 小时前
“高通 QCS8550 嵌入式主板 EC-A8550JD4:48 TOPS 算力上板“
网络·嵌入式·边缘计算·高通·qcs8550·天启智能·ec-a8550jd4