当前位置: 首页 > news >正文

【网络工程师】NAT网络地址转换技术

汇总命令,理解记忆

# ------静态NAT-------------
# 进入外网接口
[R1] interface GigabitEthernet 0/0/1
# 一对一静态映射
[R1-GigabitEthernet0/0/1] nat static global 100.1.1.10 inside 10.1.1.10# ------动态NAT,内外网一对一映射-------------
# 系统视图创建ACL和地址组
[R1] acl 2000
[R1-acl-basic-2000] rule 5 permit source 10.1.1.0 0.0.0.255
[R1-acl-basic-2000] quit[R1] nat address-group 1
# 定义了一个地址段,0为地址段索引号,起始地址为100.1.1.20,结束地址为100.1.1.30
[R1-address-group-1] section 0 100.1.1.20 100.1.1.30
[R1-address-group-1] quit# 进入外网接口应用动态NAT
[R1] interface GigabitEthernet 0/0/1
# no-pat不做端口转换,去掉no-pat就是NAPT了
[R1-GigabitEthernet0/0/1] nat outbound 2000 address-group 1 no-pat
# ------NAPT,内外网多对一映射,上述命令去掉no-pat-------------# ------Easy IP,将内网地址直接转换为接口的公网IP地址-------------
# 系统视图创建ACL
[R1] acl 2002
[R1-acl-basic-2002] rule 5 permit source 10.1.3.0 0.0.0.255
[R1-acl-basic-2002] quit# 进入外网接口应用Easy IP
[R1] interface GigabitEthernet 0/0/1
[R1-GigabitEthernet0/0/1] nat outbound 2002# ------NAT Server,将公网地址的特定端口映射到内网服务器-------------
# 进入外网接口配置NAT Server
[R1] interface GigabitEthernet 0/0/1
# unr-route自动生成黑洞路由
[R1-GigabitEthernet0/0/1] nat server protocol tcp global 100.1.1.9 8443 inside 10.2.1.2 443 unr-route
# 映射UDP端口范围示例
[R1-GigabitEthernet0/0/1] nat server protocol udp global 100.1.1.10 10000 inside 10.2.1.3 10000 to 20000# ------双向NAT,同时对源地址和目的地址进行转换-------------
# 系统视图创建ACL
[R1] acl 3000
[R1-acl-adv-3000] rule 10 permit ip source 10.1.1.100 destination 172.16.1.100
[R1-acl-adv-3000] quit# 创建目的NAT地址组
[R1] nat address-group 3
[R1-address-group-3] section 0 100.1.1.50 100.1.1.50
[R1-address-group-3] quit# 进入外网接口配置双向NAT
[R1] interface GigabitEthernet 0/0/1
[R1-GigabitEthernet0/0/1] nat server protocol tcp global 100.1.1.50 8080 inside 172.16.1.100 80
[R1-GigabitEthernet0/0/1] nat outbound 3000 address-group 3# ------黑洞路由,将NAT公网地址的路由只想空接口,防止路由环路-------------
# 系统视图手动配置黑洞路由
[R1] ip route-static 100.1.1.9 255.255.255.255 NULL0
# 配置网段级别的黑洞路由
[R1] ip route-static 100.1.1.0 255.255.255.0 NULL0 preference 70# ------完整配置示例------------
# 基础接口配置
[R1] interface GigabitEthernet 0/0/0
[R1-GigabitEthernet0/0/0] ip address 192.168.1.1 255.255.255.0
[R1-GigabitEthernet0/0/0] quit[R1] interface GigabitEthernet 0/0/1
[R1-GigabitEthernet0/0/1] ip address 100.1.1.1 255.255.255.0# 在同一个外网接口应用多种NAT
# 静态NAT
[R1-GigabitEthernet0/0/1] nat static global 100.1.1.10 inside 192.168.1.10
# 动态NAT,不做端口转发
[R1-GigabitEthernet0/0/1] nat outbound 2000 address-group 1 no-pat
# NAPT,进行端口转发
[R1-GigabitEthernet0/0/1] nat outbound 2001 address-group 2
# Easy IP,内网地址转为接口的公网地址
[R1-GigabitEthernet0/0/1] nat outbound 2002
# NAT server配置,从外往里,unr-route同时配置黑洞路由
[R1-GigabitEthernet0/0/1] nat server protocol tcp global 100.1.1.9 8443 inside 192.168.1.2 443 unr-route

基础概念

NAT:网络地址转换技术

最初目的:解决私网到公网地址转换,解决地址不够用的问题。

分类:

  • 源NAT:对报文中的源地址进行转换,私网访问Internet场景
  • 目的NAT:对报文中的目的地址进行转换,公网访问私网服务器的场景
  • 双向NAT

NAT优点

  • 实现IP地址复用
  • 有效避免外网攻击
  • 服务器负载均衡,外网访问内部,可以配置一对多轮询

NAT缺点

  • 网络监控难度加大:公网一对多私网场景,无法准确监控具体哪个私网
  • 限制某些具体应用,某些应用不支持

一般部署在网络出口设备上,例如路由器或者防火墙上。

静态NAT:

公网与私网地址一对一映射,支持双向互访。达不到节约IP地址的作用。

配置命令:

  • 接口视图配置
    • nat static global [global-address] inside [host-address]
      
  • 系统视图下配置,接口视图启用
    • nat static global [global-address] inside [host-address]   //系统视图创建
      
    • nat static enable  // 接口视图启用
      

动态NAT

NAT地址池:

  1. 选择一个地址池中未使用的地址作为转换后的地址,并标记为in use
  2. 生成一个临时的NAT映射表
  3. 回包:查找NAT映射表,根据公有地址查找私有地址,并进行IP数据报文目的地址转换

配置命令

  1. 创建地址池
[Huawei] nat address-group group-index[0-7] [start-address] [end-address]
  1. 配置地址转换的ACL规则
[Huawei] acl [number]
[Huawei-acl-basic-number] rule permit source [source-address] [source-wildcard]
wildcard:通配符掩码
配置基础ACL,匹配需要进行动态地址转换的源地址范围。
  1. 接口视图下配置带地址池的NAT Outbound
[Huawei-GigabitEthernet 0/0/0] nat outbound acl-number address-group group-index [ no-pat ]
接口下关联ACL与地址池进行动态地址转换,no-pat参数指定不进行端口转换

NAPT(Network and port Translation)网络地址端口转换

不仅转换IP地址,同时也对端口号进行转换,实现公有地址与私有地址的1:n映射,可以有效提高公有地址利用率。

  1. 选择一个地址池中的地址,同时转换源I、端口
  2. 生成一个临时的NAT映射表,其中记录:源地址:端口,目标地址:端口
  3. 回包:查找NAT映射表,根据公有地址:端口信息查找对应的私有地址:端口,并进行数据报文中IP和端口转换

配置命令(基于动态NAT,去掉no pat参数)

  1. 创建地址池
[Huawei] nat address-group group-index[0-7] [start-address] [end-address]
  1. 配置地址转换的ACL规则
[Huawei] acl [number]
[Huawei-acl-basic-number] rule permit source [source-address] [source-wildcard]
wildcard:通配符掩码
配置基础ACL,匹配需要进行动态地址转换的源地址范围。
  1. 接口视图下配置带地址池的NAT Outbound
[Huawei-GigabitEthernet 0/0/0] nat outbound acl-number address-group group-index
接口下关联ACL与地址池进行动态地址转换,no-pat参数指定不进行端口转换

Easy IP

  • 基于NAPT精简
  • 省掉地址池

配置示例,内网所有私有地址通过122.1.2.1访问公网。

[R1] acl 2000
[R1-acl-basic-2000] rule 5 permit source 192.168.1.0  0.0.0.255
[R1-acl-basic-2000] quit
[R1] interface GigabitEthernet 0/0/0
[R1-GigabitEthernet 0/0/0] nat outbound 2000

NAT Server使用场景

与静态NAT很像(双向),主要做目标地址转换场景,一般用于外部访问内部(单向)。

  • NAT Server:公有地址:端口 的一对一映射关系,将内网服务器映射到公网。
  • 外网主机主动访问 公网地址:端口 实现对内网服务器的访问

配置示例

[R1] interface GigabitEthernet 0/0/0
[R1-GigabitEthernet 0/0/0] nat server protocol tcp global 122.1.2.1 www inside 192.168.1.10 8080www默认指80端口

一对一映射配置

[R1] interface GigabitEthernet 0/0/0
[R1-GigabitEthernet 0/0/0] nat server global 122.1.2.1 inside 192.168.1.10

双向NAT

  • 域间双向NAT:在NAT Server基础上(外往里),增加源NAT配置(公网地址转换为私网地址)。
  • 域内双向NAT

防火墙上针对不同NAT类型处理顺序如下:

  • 匹配NAT Server
  • 匹配目的NAT
  • 查找路由表
  • 匹配安全策略
  • 匹配源NAT

黑洞路由

也是一条静态路由,出口为Null0

主要进行数据过滤和环路避免

  • NAT地址池地址与公网接口地址不在同一个网段时,必须配置黑洞路由
  • 配置指定协议和端口的NAT Server的global地址与公网接口地址不在同一个网段时,必须配置黑洞路由
  • 地址池或NAT Server的global地址与公网接口地址在同一个网段时(直连路由,不走默认路由导致来回发送,可以避免一个多余的ARP报文),建议配置黑洞路由
  • 地址池或NAT Server的global地址与公网接口地址一致时,不会产生环路,不需要配置黑洞路由

配置案例

unr-route自动为global地址配置黑洞路由

nat server policy protocol tcp global 100.1.1.9 8443 inside 10.2.1.2 443 unr-route命令解释:外网tcp请求100.1.1.9:8443,转发到内网10.2.1.2:443
unr-route:自动为100.1.1.9配置黑洞路由

黑洞路由案例

外面公网访问地址池中公网,但是对应公网未配置私网时,未匹配到映射表,会匹配路由表,使用默认路由发送回发送方,发送方再使用默认路由发回来,形成路由黑洞,循环发送。。不是致命的,消耗带宽和资源,默认最多发送255次之后被丢弃。如果被恶意攻击,会影响网络健康。

解决:地址池中公网地址配置黑洞路由,找不到地址映射时,丢弃报文。

防火墙工作模式

  • 透明模式:内外部端口均没有配置IP地址
  • 路由模式:外部端口、内部端口均配置了IP地址
  • 混合模式:外部端口配置了IP地址,内部端口没有配置IP地址
http://www.dtcms.com/a/545887.html

相关文章:

  • Rust 迭代器适配器
  • 鲜花购物网站源码淮安网站推广
  • 中国高定十大品牌seo排名方案
  • GitHub高质量的开源博客项目推荐
  • 峰峰企业做网站推广洛阳网站建设
  • 电子商务毕业设计网站专业搜索引擎seo服务商
  • 仓颉异步编程语法糖的深度剖析
  • JVM 执行引擎
  • 公司建立网站用于业务国内新闻摘抄2022年
  • 【计算机网络】IO复用方法(一)——引言
  • HuMo 让 AI 人物视频更生动可控
  • Rust:Tokio的性能监控与调优
  • 网站标题乱码wordpress 快速编辑器
  • 【JavaEE初阶】TCP核心机制5——流量控制
  • 机器学习日报07
  • 【IDEA】记录webapp下创建相同目录的一次错误
  • 仓颉语言 LinkedList 链表实现深度解析
  • 宁波网站制作网站支持asp的免费空间 适合钓鱼网站
  • Honeywell 扫描枪时间同步设定
  • 弧形导轨维护周期管理的关键要点
  • 做网站用什么语言数据库老师让做网站怎么做
  • Codeforces 1061 Div2(ABCDF1)
  • 从零部署抠图应用:DeepSeek-OpenWebUI的整合方案
  • 自己做网站如何月入3k模板网站建站哪家好
  • 化工网站模板pc网站转换手机网站代码
  • nvm安装、管理node多版本以及配置环境变量
  • 响应式网站建设案例wordpress凭密码
  • 设计外贸网站唯尚广告联盟app下载
  • OLED显示GIF显示如何导入图片显示
  • OpenCV-python小玩意11 透视变换