H3C华三路由器nat避免生成null 0路由并解决nat需求
拓扑如下:(不看问题可以直接跳转至解决方案及结论部分)
问题描述:
商户client通过双线接入分支机构网络中,R1、R2写静态一对一 outbound nat对商户server IP进行映射(outbound nat映射会产生一条null 0路由,并且null 0路由会通过R1,R2重分发进入ospf进程),sw1上会形成商户server IP的ospf负载路由,在生产环境中商户发起访问内网ssh服务时,会有约50%流量被阻断,反之亦然(ping测试也是中断现象),模拟器的现象是全部中断(ping测试和ssh服务),经过抓包分析发现:商户发起的TCP链接的第一个syn可以顺利到达ssh内网服务,内网服务响应syn并回复syn ack,数据包发送至SW1有几率负载路由(对于交换机来说转发至商户需要依赖这条重分发的null 0路由)转发至R2,R2没有nat session并且也不会由此tcp syn ack数据流建立新的session,R2选择drop数据包阻断流量。如果数据包在SW1上选择负载的ospf路由的下一跳是R1便不会有这个问题,数据也能正常转发和访问。
【最终解决方案】
修改R1的nat 为:inbound nat,阻止null 0路由的生成。除了商户server 3的IP地址路由之外,商户的映射后地址也要加路由,为了能让SW1通过ospf路由正常访问商户,同时跟进华三官网的介绍,针对商户入向流量端口开启nat功能。
R1
nat static inbound 2.2.2.2 188.8.190.64 #修改nat为inbound nat
ip route-static 2.2.2.2 32 172.16.10.2 track 6 tag 10
#
interface GigabitEthernet0/0 #在下联商户接口生效natip address 172.16.10.1 255.255.255.0nat static enable
# R2
nat static inbound 2.2.2.2 188.8.190.64
ip route-static 188.8.190.64 32 172.16.20.2 track 6 tag 20
#
interface GigabitEthernet0/0port link-mode routecombo enable copperip address 172.16.20.1 255.255.255.0nat static enable
#
【验证】
商户server3验证:
<Server3_Clinet>ping 188.8.3.2
Ping 188.8.3.2 (188.8.3.2): 56 data bytes, press CTRL+C to break
56 bytes from 188.8.3.2: icmp_seq=0 ttl=252 time=4.000 ms
56 bytes from 188.8.3.2: icmp_seq=1 ttl=252 time=5.000 ms
56 bytes from 188.8.3.2: icmp_seq=2 ttl=252 time=2.000 ms
56 bytes from 188.8.3.2: icmp_seq=3 ttl=252 time=3.000 ms
56 bytes from 188.8.3.2: icmp_seq=4 ttl=252 time=3.000 ms
--- Ping statistics for 188.8.3.2 ---
5 packet(s) transmitted, 5 packet(s) received, 0.0% packet loss
round-trip min/avg/max/std-dev = 2.000/3.400/5.000/1.020 ms<Server3_Clinet>ssh 188.8.3.2
Username: admin
Press CTRL+C to abort.
Connecting to 188.8.3.2 port 22.
admin@188.8.3.2's password:
Enter a character ~ and a dot to abort.******************************************************************************
* Copyright (c) 2004-2021 New H3C Technologies Co., Ltd. All rights reserved.*
* Without the owner's prior written consent, *
* no decompiling or reverse-engineering shall be allowed. *
******************************************************************************内网ssh服务验证:
<NeiWang_ssh>ping 188.8.190.64
Ping 188.8.190.64 (188.8.190.64): 56 data bytes, press CTRL+C to break
56 bytes from 188.8.190.64: icmp_seq=0 ttl=252 time=6.000 ms
56 bytes from 188.8.190.64: icmp_seq=1 ttl=252 time=5.000 ms
56 bytes from 188.8.190.64: icmp_seq=2 ttl=252 time=2.000 ms
56 bytes from 188.8.190.64: icmp_seq=3 ttl=252 time=2.000 ms
56 bytes from 188.8.190.64: icmp_seq=4 ttl=252 time=5.000 ms
--- Ping statistics for 188.8.190.64 ---
5 packet(s) transmitted, 5 packet(s) received, 0.0% packet loss
<NeiWang_ssh>ssh 188.8.190.64
Username: admin
Press CTRL+C to abort.
Connecting to 188.8.190.64 port 22.
admin@188.8.190.64's password:
Enter a character ~ and a dot to abort.******************************************************************************
* Copyright (c) 2004-2021 New H3C Technologies Co., Ltd. All rights reserved.*
* Without the owner's prior written consent, *
* no decompiling or reverse-engineering shall be allowed. *
******************************************************************************<Server3_Clinet>
以下为实验过程:
客户server 3主要配置:
商户server3配置:
#
interface GigabitEthernet0/0port link-mode routecombo enable copperip address 2.2.2.2 255.255.255.0
#
路由配置:
ip route-static 0.0.0.0 0 2.2.2.1
商户client配置:
商户client配置:
#
interface GigabitEthernet5/1port link-mode routecombo enable copperip address 2.2.2.1 255.255.255.0
#
路由配置:ip route-static 0.0.0.0 0 172.16.10.1 preference 1ip route-static 0.0.0.0 0 172.16.20.1 preference 100
R1主要配置
R1:
#
ospf 20 router-id 188.8.252.131import-route direct route-policy Tonglianimport-route static type 1 route-policy static2ospfarea 0.0.0.0
#
interface GigabitEthernet0/0 #下联client接口ip address 172.16.10.1 255.255.255.0
#
interface GigabitEthernet0/1 #上联SW1接口ip address 188.8.1.5 255.255.255.248ospf 20 area 0.0.0.0nat static enable
interface GigabitEthernet0/2 #上联SW2接口ip address 188.8.1.13 255.255.255.248ospf 20 area 0.0.0.0nat static enable
#
ip route-static 2.2.2.2 32 172.16.10.2 track 6 tag 10 #路由配置
ip route-static 188.8.3.2 32 188.8.1.1
#
nat static outbound 2.2.2.2 188.8.190.64 #nat配置
#
R2配置:
R2
#
ospf 20 router-id 188.8.252.132import-route direct route-policy Tonglianimport-route static type 1 route-policy static2ospfarea 0.0.0.0
#
interface GigabitEthernet0/0 #下联clientip address 172.16.20.1 255.255.255.0#
interface GigabitEthernet0/1 #上联SW1ip address 188.8.2.5 255.255.255.248ospf 20 area 0.0.0.0nat static enable
#
interface GigabitEthernet0/2 #上联SW2ip address 188.8.2.13 255.255.255.248ospf 20 area 0.0.0.0nat static enable
#
ip route-static 2.2.2.2 32 172.16.20.2 track 6 tag 20 #路由
nat static outbound 2.2.2.2 188.8.190.64 #商户server IP的nat
SW1:
SW1:
#
ospf 20 router-id 188.8.252.129area 0.0.0.0
#
interface GigabitEthernet1/0/5 #连ssh内网服务ip address 188.8.3.1 255.255.255.0
#
interface Vlan-interface10 #连R1ip address 188.8.1.1 255.255.255.248ospf 20 area 0.0.0.0
#
interface Vlan-interface20 #连R2ip address 188.8.2.1 255.255.255.248ospf 20 area 0.0.0.0
#
SW2:
SW2
#
ospf 20 router-id 188.8.252.130area 0.0.0.0
#
interface Vlan-interface10 #连R1接口ip address 188.8.1.9 255.255.255.248ospf 20 area 0.0.0.0
#
interface Vlan-interface20 #连R2接口ip address 188.8.2.9 255.255.255.248ospf 20 area 0.0.0.0
#
ssh内网服务配置:
ssh内网服务:
#
interface GigabitEthernet0/0 #上联SW接口port link-mode routecombo enable copperip address 188.8.3.2 255.255.255.0
#
ip route-static 188.8.190.64 32 188.8.3.1 #接口配置
路由情况:
R1[R1]dis ip routing-table 188.8.190.64
Destination/Mask Proto Pre Cost NextHop Interface
188.8.190.64/32 Direct 1 0 0.0.0.0 NULL0
188.8.3.2/32 Static 60 0 188.8.1.1 GE0/1R2
<R2>dis ip routing-table 188.8.190.64
Destination/Mask Proto Pre Cost NextHop Interface
188.8.190.64/32 Direct 1 0 0.0.0.0 NULL0
188.8.3.2/32 O_ASE1 150 3 188.8.2.1 GE0/1SW1
[SW1]dis ip routing-table 188.8.190.64
Destination/Mask Proto Pre Cost NextHop Interface
188.8.190.64/32 O_ASE2 150 1 188.8.1.5 Vlan10188.8.2.5 Vlan20SW2
[SW2]dis ip routing-table 188.8.190.64
Destination/Mask Proto Pre Cost NextHop Interface
188.8.190.64/32 O_ASE2 150 1 188.8.1.13 Vlan10188.8.2.13 Vlan20
188.8.3.2/32 O_ASE1 150 3 188.8.1.13 Vlan10
【解决方案】
【1】修改R1、R2重分发直连路由的cost值,迫使SW1上路由不负载;
R1
#
ospf 20 router-id 188.8.252.131import-route direct cost 100R2
#
ospf 20 router-id 188.8.252.132import-route direct cost 200Sw1
[SW1]dis ip routing-table
Destination/Mask Proto Pre Cost NextHop Interface
188.8.190.64/32 O_ASE2 150 100 188.8.1.5 Vlan10
188.8.3.0/24 Direct 0 0 188.8.3.1 GE1/0/5
SW2
[SW2]dis ip routing-table
Destination/Mask Proto Pre Cost NextHop Interface
188.8.190.64/32 O_ASE2 150 100 188.8.1.13 Vlan10
188.8.3.2/32 O_ASE1 150 3 188.8.1.13 Vlan10
通过修改cost值,让R1路由优于R2避免在SW1上形成ospf负载路由之后访问正常,但是商户如果主线中断(R1线路中断),根据track机制,R1本地去往商户的路由(2.2.2.2/32)将会消失,但是此时SW1 null 0路由的重分发仍然生效,此时的内网ssh服务的数据仍然会转发至R1;
SW1
[SW1]dis ip routing-table 188.8.190.64 #关闭商户clinet上联R1线路,SW1路由并未发生改变
Destination/Mask Proto Pre Cost NextHop Interface
188.8.190.64/32 O_ASE2 150 100 188.8.1.5 Vlan10SW2
[SW2]dis ip routing-table 188.8.190.64
Destination/Mask Proto Pre Cost NextHop Interface
188.8.190.64/32 O_ASE2 150 100 188.8.1.13 Vlan10
此时模拟器的现象是:内网ssh服务可以ping通商户server,但是ssh不通。商户server3 ping不通,也不能ssh内网ssh服务;通过抓包分析观察到商户server3发起的ssh链接的syn可以顺利到达内网ssh,但是内网ssh返回时仍然通过SW1转发至R1,R1选择drop数据包。不会通过路由再绕行SW2转发给R2,从而阻断流量,破坏商户的高可用,所以此方法无效;
总结:
[R1]nat static inbound ?X.X.X.X Global IP addressnet-to-net Configure a net-to-net static NAT mappingobject-group Global object-grouprule Specify a NAT rule[R1]nat static inbound 1.1.1.1 ?X.X.X.X Local IP addressvpn-instance Specify a VPN instance[R1] nat static outbound ?X.X.X.X Local IP addressnet-to-net Configure a net-to-net static NAT mappingobject-group Local object-grouprule Specify a NAT rule[R1]nat static outbound 2.2.2.2 ?X.X.X.X Global IP addressvpn-instance Specify a VPN instance
华三系列路由器nat具体选择inbound或outbound:
nat outbound <local ip>商户IP <Global ip>映射IP 需要在R1上联SW1的接口开启NAT,从商户主动发起访问在此接口将会做源nat,反之,将会在此接口做目的nat;需要注意:nat outbound 命令设备会针对<global ip>映射IP自动生成一条null 0 路由;
nat inbound <Global ip>商户IP <local ip>映射IP 需要在R1的下联口开启NAT,从商户主动发起访问在此接口会做源nat,反之会在此接口做目的nat;需要注意:nat inbound 命令设备不会产生null 0路由,但是商户的映射IP需要添加静态路由并通过ospf重分发至SW1流量才能正常转发。
综上,h3c华三的nat理解应该考虑源nat或目的nat的方向来判断nat中的真实IP和映射后IP,通俗的理解就是:
1、当需要商户IP发起需要做源nat,有且只有在R1连接SW1的接口上开启nat,配置outbound nat,此时的真实IP就是商户,反之,当内网服务发起就需要在此接口做目的nat;
2、当内网ssh服务发起需要做目的nat,有且只有在R1连接Client接口上开启nat,配置inbound nat,此时的真实IP就是内网ssh服务的IP地址,反之,当商户server3发起就需要在此接口上做源nat。
H3C华三路由器nat避免生成null 0路由并解决nat需求相关推荐
- 基于H3C华三路由器的基本配置命令真题练习题
下列关于Comware特点的描述,正确的是______. 多选 A.支持IPv4和IPv6双协议 正确 B.支持多CPU 正确 C.路由和交换功能融合 正确 D.高可靠性和弹性拓展 正确 E.灵活的裁 ...
- h3c 华三路由器分类区别及命令配置笔记
H3C ER&ER G2和MSR&MSRG2路由器的区别如下: 首先定位是不一样:ER及ER G2系列路由器类似家用路由器.普通傻瓜式web管理路由;而MSR和MSRG2系列路由器偏重 ...
- 华三路由器链路聚合配置(H3C华三链路聚合的原理)
1.华三路由器链路聚合配置,链路聚合的作用: 将多条物理链路捆绑在一起形成一条以太网逻辑链路,实现增加链路带宽的目的,同时这些捆绑在一起的链路通过相互动态备份,可以有效地提高链路的可靠性 2.聚合模式 ...
- 华三路由器链路聚合配置(华三交换机配置)
华三路由器链路聚合配置拓扑如下: 1.华三路由器链路聚合配置:配置链路聚合 SW1设备配置 <H3C>system-view #进入系统视图 [H3C]sysname sw1 #将设备命名 ...
- 华三路由器MSR36-20支持http服务吗
是的,华三路由器MSR36-20支持HTTP服务.HTTP是一种应用层协议,用于在计算机网络之间传输超文本标记语言(HTML)文件,允许用户通过Web浏览器访问和浏览互联网上的网页.大多数路由器都支持 ...
- 新版H3C华三GB0-191、GB0-371、381、391考试题型及考试介绍
新版H3C华三GB0-191.GB0-371.381.391考试题型及考试介绍 H3CNE (H3C Certified Network Engineer),即H3C认证网络工程师 . 考试代码: G ...
- H3C华三h3c认证考试报名咨询与交流
h3c华三H3C认证考试报名咨询与交流,H3CNE.H3CSE. H3CSCE.H3CCE.H3CSDN咨询 联系2316646658QQ或者邮箱
- 配置H3C华三设备远程管理(SSH、Telnet等)
拓扑如下: 注:本实验用一台华三路由器模仿真实设备,再一台host主机充当模拟器到本地计算机(本地运行HCL模拟器的实体机)的中间设备.角色相当于一个hub或傻瓜交换机. 注:在host上面选择网卡 ...
- 华三路由器做端口映射配置
华三路由器的端口映射配置方法如下: 打开浏览器,在地址栏中输入华三路由器的 IP 地址,然后按回车键登录路由器的管理界面. 在管理界面中,选择"高级设置",然后选择"端口 ...
- 企业内网H3C华三AC配置802.1x认证方案
IEEE 802.1X标准定义了基于客户端和服务器的访问控制和身份验证协议,因其经过数据链路层加密,因此常用于企业内部的员工上网认证场景,无论是有线网或是WiFi无线网均可实现802.1X认证.以H3 ...
最新文章
- iOS 性能优化总结
- 【转】iOS开发6:UIActionSheet与UIAlertView
- 赞扬别人团建评论_赞扬精心设计:基于属性的测试如何帮助我成为更好的开发人员...
- Gstreamer应用g_signal_new/g_signal_connect/g_signal_emit总结(十二)
- 统计学习方法读书笔记16-SVM支持向量机
- java反射机制面试详解
- Freeradius认证
- linux线程 ppt,实验十七Linux下进程线程的创建.ppt
- 教你用GoldWave进行基础的混音准备
- 商标注册成功后的中肯建议
- pacman 查询_archlinux pacman常用命令
- 服务器ping不通网址!
- H5和C3新特性(完整版)
- SVN添加账户及删除MyEclipse中记住的SVN账户名密码信息
- 移位运算(左移和右移)
- [原创]C#里的狸猫换太子ref,out
- 360和瑞星杀毒软件哪个好
- STC8H1K08 - INT4 - 下降沿触发外部中断 4
- Flutter开发 - 重力感应和陀螺仪相关功能的开发
- 热评云厂商:BoCloud博云2.8亿元,获得更多的用户认同感
热门文章
- 解决AndroidStudio Locat侧边栏消失
- 阿里中台搞了3年,凉了?网传:副总裁玄难“背锅”,辞职创业!咸鱼放弃维护 Flutter!...
- 计算机页面里的坚果云删不了怎么回事,坚果云 常见问题
- 《深入剖析Tomcat》序言
- git用户名和密码保存文件_GitHub 本地保存用户名和密码方法
- 全国医疗卫生信息化公司网址大全
- 瞬时视场、识别距离、mrtd
- 如何使用poi在word表格中新增行的4种方法
- 论文参考文献添加---word尾注添加
- NXP S32K146 FLEXI2C底层驱动+IAM-20680(一)