华为通过流策略实现策略路由(重定向到不同的下一跳)

通过流策略实现策略路由(重定向到不同的下一跳)

组网图形

图1 配置策略路由组网图

  • 策略路由简介
  • 配置注意事项
  • 组网需求
  • 配置思路
  • 操作步骤
  • 配置文件

策略路由简介

传统的路由转发原理是首先根据报文的目的地址查找路由表,然后进行报文转发。但是目前越来越多的用户希望能够在传统路由转发的基础上根据自己定义的策略进行报文转发和选路。策略路由PBR(Policy-Based Routing)就是一种依据用户制定的策略进行数据转发的机制。

在S系列交换机上,策略路由通过重定向实现,通过配置策略路由可以将到达接口的符合流分类规则的三层报文重定向到指定的下一跳地址。

在某些需要指定特定的数据流走特定的下一跳的场景下可以使用策略路由实现,例如使不同的数据流通过不同的链路进行发送,提高链路的利用效率;将数据流引流到防火墙等安全设备,进行安全过滤;在满足业务服务质量的前提下,选择费用较低的链路传输业务数据,从而降低企业数据服务的成本。

配置注意事项
  • 如果设备上没有命中下一跳IP地址对应的ARP表项,设备会触发ARP学习,如果一直学习不到ARP,则报文按原始转发路径转发,重定向不生效。
  • 如果通过redirect ip-nexthop命令或redirect ipv6-nexthop命令配置多个下一跳时,设备按照主备方式对报文进行重定向转发。设备根据下一跳的配置顺序确定主备链路,配置在前面的下一跳IP地址优先级高,配置的第一个下一跳IP地址所在的链路作为主用链路,其它链路作为备用链路。当主用链路Down掉之后,则自动选取优先级高的下一跳作为新的主链路。
  • 如果通过redirect ip-multihop命令或redirect ipv6-multihop命令配置多个下一跳时,设备按照等价路由负载分担方式对报文进行重定向转发。
  • 本举例适用的产品包括:
    • V100R005和V100R006版本的S2752EI、V200R011C10及之后版本的S2720-EI
    • S3700-SI、S3700-EI、S3700-HI
    • S5700-EI、S5700-HI、S5710-EI、S5710-HI、S5720-LI、S5720S-LI、S5720-SI、S5720S-SI、S5720I-SI、S5720-EI、S5720-HI、S5730-HI、S5730-SI、S5730S-EI、S5731-H、S5731-S、S5731S-S、S5731S-H、S5731-H-K、S5732-H、S5732-H-K、S2730S-S、S5735-L-I、S5735-L1、S300、S5735-L、S5735S-L1、S5735S-L、S5735S-L-M、S500、S5735-S、S5735S-S、S5735-S-I、S5735S-H、S5736-S
    • S6700-EI、S6720-LI、S6720S-LI、S6720-SI、S6720S-SI、S6720-EI、S6720S-EI、S6720-HI、S6730-H、S6730-S、S6730S-S、S6730S-H、S6730-H-K
    • S7703、S7706、S7712、S7710、S7703 PoE、S7706 PoE、S7905、S7908
    • S9703、S9706、S9712
  • 本举例中产品的默认适用版本请参见“案例适用的产品和版本说明”中的表1。

如需了解交换机软件配套详细信息,请点击Info-Finder,在选择产品系列或产品型号后,在“硬件中心”进行查询。

S5731-L和S5731S-L属于远端模块,不支持Web管理、YANG和命令行,仅支持通过中心交换机对其下发配置,相关操作请参见《S300, S500, S2700, S5700, S6700 V200R022C00 配置指南-设备管理》中的“智能极简园区网络配置(小行星方案)”。

组网需求

如图1所示,公司用户通过Switch双归属到外部网络设备。其中,一条是高速链路,网关为10.1.20.1/24;另外一条是低速链路,网关为10.1.30.1/24。

公司内网有两个网段192.168.1.0/24和192.168.2.0/24。192.168.1.0/24网段主要是服务器区,对链路带宽要求比较高,所以网管决定该网段走高速链路出去;剩余的192.168.2.0/24网段主要用作公司员工上网,上网的话只能走低速链路出去。

配置思路

采用重定向方式实现策略路由,进而提供差分服务,具体配置思路如下:

  1. 创建VLAN并配置各接口,配置路由实现公司和外部网络互通。
  2. 配置ACL规则,分别匹配192.168.1.0和192.168.2.0网段的数据流。
  3. 配置流分类,匹配规则为上述ACL规则,使设备可以对报文进行区分。
  4. 配置流行为,使满足不同ACL规则的数据流走不同的链路,需要注意先把内网互访的数据流放行。
  5. 配置流策略,绑定上述流分类和流行为,并应用到Switch设备的GE0/0/3接口的入方向,实现策略路由。

操作步骤
  1. 创建VLAN并配置各接口,实现基本的互联互通

    # 在SwitchA上创建VLAN10和VLAN20。<HUAWEI> system-view
    [HUAWEI] sysname SwitchA
    [SwitchA] vlan batch 10 20

    # 配置SwitchA各接口的所属VLAN,连接终端PC的接口配置为Access类型,连接Switch的接口配置为Trunk类型。

    [SwitchA] interface gigabitethernet 0/0/1
    [SwitchA-GigabitEthernet0/0/1] port link-type access
    [SwitchA-GigabitEthernet0/0/1] port default vlan 10
    [SwitchA-GigabitEthernet0/0/1] quit
    [SwitchA] interface gigabitethernet 0/0/2
    [SwitchA-GigabitEthernet0/0/2] port link-type access
    [SwitchA-GigabitEthernet0/0/2] port default vlan 20
    [SwitchA-GigabitEthernet0/0/2] quit
    [SwitchA] interface gigabitethernet 0/0/3
    [SwitchA-GigabitEthernet0/0/3] port link-type trunk
    [SwitchA-GigabitEthernet0/0/3] port trunk allow-pass vlan 10 20
    [SwitchA-GigabitEthernet0/0/3] quit

    # 在Switch上创建VLAN10、VLAN20、VLAN100、VLAN200。

    <HUAWEI> system-view
    [HUAWEI] sysname Switch
    [Switch] vlan batch 10 20 100 200

    # 配置Switch各接口的所属VLAN,连接SwitchA的接口配置为Trunk类型,连接外部网络设备的接口配置为Access类型。

    [Switch] interface gigabitethernet 0/0/1
    [Switch-GigabitEthernet0/0/1] port link-type access
    [Switch-GigabitEthernet0/0/1] port default vlan 100
    [Switch-GigabitEthernet0/0/1] quit
    [Switch] interface gigabitethernet 0/0/2
    [Switch-GigabitEthernet0/0/2] port link-type access
    [Switch-GigabitEthernet0/0/2] port default vlan 200
    [Switch-GigabitEthernet0/0/2] quit
    [Switch] interface gigabitethernet 0/0/3
    [Switch-GigabitEthernet0/0/3] port link-type trunk
    [Switch-GigabitEthernet0/0/3] port trunk allow-pass vlan 10 20
    [Switch-GigabitEthernet0/0/3] quit

    # 在Switch上配置VLANIF10和VLANIF20作为用户网关,并配置IP地址分别为192.168.1.1/24和192.168.2.1/24。

    [Switch] interface vlanif 10
    [Switch-Vlanif10] ip address 192.168.1.1 24
    [Switch-Vlanif10] quit
    [Switch] interface vlanif 20
    [Switch-Vlanif20] ip address 192.168.2.1 24
    [Switch-Vlanif20] quit

    # 在Switch上配置VLANIF100和VLANIF200用于和外部网络设备互联,并配置IP地址分别为10.1.20.2/24和10.1.30.2/24。

    [Switch] interface vlanif 100
    [Switch-Vlanif100] ip address 10.1.20.2 24
    [Switch-Vlanif100] quit
    [Switch] interface vlanif 200
    [Switch-Vlanif200] ip address 10.1.30.2 24
    [Switch-Vlanif200] quit

    # 在Switch上配置两条缺省路由,下一跳分别指向两个外部网络设备。

    [Switch] ip route-static 0.0.0.0 0 10.1.20.1
    [Switch] ip route-static 0.0.0.0 0 10.1.30.1

    完成以上配置步骤以后,内网能够正常访问外网了,但是不能保证192.168.1.0/24网段用户的数据走高速链路,192.168.2.0/24网段的数据走低速链路,要实现这个需求需要继续完成下面的配置步骤。

  2. 配置ACL规则

    # 在Switch上创建编码为3000、3001、3002的高级ACL。

    [Switch] acl 3000   //主要用于匹配内网两个网段之间互访的数据流,这部分数据流不需要做重定向,如果不配置这一步会导致内网之间互访的流量也被重定向,从而导致内网互访不通。
    [Switch-acl-adv-3000] rule permit ip source 192.168.1.0 0.0.0.255 destination 192.168.2.0 0.0.0.255
    [Switch-acl-adv-3000] rule permit ip source 192.168.2.0 0.0.0.255 destination 192.168.1.0 0.0.0.255
    Switch-acl-adv-3000] quit
    [Switch] acl 3001   //匹配内网192.168.1.0/24网段的数据流
    [Switch-acl-adv-3001] rule permit ip source 192.168.1.0 0.0.0.255
    [Switch-acl-adv-3001] quit
    [Switch] acl 3002   //匹配内网192.168.2.0/24网段的数据流
    [Switch-acl-adv-3002] rule permit ip source 192.168.2.0 0.0.0.255
    [Switch-acl-adv-3002] quit

  3. 配置流分类

    在Switch上创建流分类c0、c1、c2,匹配规则分别为ACL 3000、ACL 3001和ACL 3002。[Switch] traffic classifier c0 operator or
    [Switch-classifier-c0] if-match acl 3000
    [Switch-classifier-c0] quit
    [Switch] traffic classifier c1 operator or
    [Switch-classifier-c1] if-match acl 3001
    [Switch-classifier-c1] quit
    [Switch] traffic classifier c2 operator or
    [Switch-classifier-c2] if-match acl 3002
    [Switch-classifier-c2] quit

  4. 配置流行为

    # 在Switch上创建流行为b0、b1、b2,对于b0只配置permit的动作,对于b1和b2分别指定重定向到10.1.20.1和10.1.30.1的动作。[Switch] traffic behavior b0
    [Switch-behavior-b0] permit
    [Switch-behavior-b0] quit
    [Switch] traffic behavior b1
    [Switch-behavior-b1] redirect ip-nexthop 10.1.20.1
    [Switch-behavior-b1] quit
    [Switch] traffic behavior b2
    [Switch-behavior-b2] redirect ip-nexthop 10.1.30.1
    [Switch-behavior-b2] quit

  5. 配置流策略并应用到接口上

    # 在Switch上创建流策略p1,将流分类和对应的流行为进行绑定。[Switch] traffic policy p1
    [Switch-trafficpolicy-p1] classifier c0 behavior b0
    [Switch-trafficpolicy-p1] classifier c1 behavior b1
    [Switch-trafficpolicy-p1] classifier c2 behavior b2
    [Switch-trafficpolicy-p1] quit
    # 将流策略p1应用到Switch的GE0/0/3的入方向上。[Switch] interface gigabitethernet 0/0/3
    [Switch-GigabitEthernet0/0/3] traffic-policy p1 inbound
    [Switch-GigabitEthernet0/0/3] return

  6. 验证配置结果

    # 查看ACL规则的配置信息。<Switch> display acl 3000
    Advanced ACL 3000, 2 rules
    Acl's step is 5rule 5 permit ip source 192.168.1.0 0.0.0.255 destination 192.168.2.0 0.0.0.255rule 10 permit ip source 192.168.2.0 0.0.0.255 destination 192.168.1.0 0.0.0.255
    <Switch> display acl 3001
    Advanced ACL 3001, 1 rule
    Acl's step is 5rule 5 permit ip source 192.168.1.0 0.0.0.255
    <Switch> display acl 3002
    Advanced ACL 3002, 1 rule
    Acl's step is 5rule 5 permit ip source 192.168.2.0 0.0.0.255
    # 查看流分类的配置信息。<Switch> display traffic classifier user-definedUser Defined Classifier Information:Classifier: c2Operator: ORRule(s) : if-match acl 3002Classifier: c0Operator: ORRule(s) : if-match acl 3000Classifier: c1Operator: ORRule(s) : if-match acl 3001Total classifier number is 3 
    # 查看流策略的配置信息。<Switch> display traffic policy user-defined p1User Defined Traffic Policy Information:Policy: p1Classifier: c0Operator: ORBehavior: b0PermitClassifier: c1Operator: ORBehavior: b1PermitRedirect: no forcedRedirect ip-nexthop10.1.20.1Classifier: c2Operator: ORBehavior: b2PermitRedirect: no forcedRedirect ip-nexthop10.1.30.1

配置文件
SwitchA的配置文件#
sysname SwitchA
#
vlan batch 10 20 
#
interface GigabitEthernet0/0/1port link-type accessport default vlan 10
#
interface GigabitEthernet0/0/2port link-type accessport default vlan 20
#
interface GigabitEthernet0/0/3port link-type trunkport trunk allow-pass vlan 10 20
#
return
Switch的配置文件#
sysname Switch
#
vlan batch 10 20 100 200 
#
acl number 3000rule 5 permit ip source 192.168.1.0 0.0.0.255 destination 192.168.2.0 0.0.0.255rule 10 permit ip source 192.168.2.0 0.0.0.255 destination 192.168.1.0 0.0.0.255
acl number 3001rule 5 permit ip source 192.168.1.0 0.0.0.255
acl number 3002rule 5 permit ip source 192.168.2.0 0.0.0.255
#
traffic classifier c0 operator orif-match acl 3000
traffic classifier c1 operator orif-match acl 3001
traffic classifier c2 operator orif-match acl 3002
#
traffic behavior b0permit
traffic behavior b1redirect ip-nexthop 10.1.20.1
traffic behavior b2redirect ip-nexthop 10.1.30.1
#
traffic policy p1 match-order configclassifier c0 behavior b0classifier c1 behavior b1classifier c2 behavior b2
#
interface Vlanif10ip address 192.168.1.1 255.255.255.0
#
interface Vlanif20ip address 192.168.2.1 255.255.255.0
#
interface Vlanif100ip address 10.1.20.2 255.255.255.0
#
interface Vlanif200ip address 10.1.30.2 255.255.255.0
#
interface GigabitEthernet0/0/1port link-type accessport default vlan 100
#
interface GigabitEthernet0/0/2port link-type accessport default vlan 200
#
interface GigabitEthernet0/0/3port link-type trunkport trunk allow-pass vlan 10 20traffic-policy p1 inbound
#                                                                               
ip route-static 0.0.0.0 0.0.0.0 10.1.20.1                                       
ip route-static 0.0.0.0 0.0.0.0 10.1.30.1
#
return

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/448620.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Weblogic反序列化漏洞分析之CVE-2021-2394

目录 简介 前置知识 Serializable示例 Externalizable示例 联系weblogic ExternalizableLite接口 ExternalizableHelperl类 JdbcRowSetImpl类 MethodAttributeAccessor类 AbstractExtractor类 FilterExtractor类 TopNAggregator$PartialResult类 SortedBag$Wrappe…

python3支持在通过requests库调试django后台接口写测试用例

python测试用例库使用 unittest库可以支持单元测试用例编写和验证。 基本使用方法 运行文件可以将文件中的用例全部执行一遍 import unittestclass TestBasicFunc(unittest.TestCase):def test_basic_asert(self):self.assertEqual(1, 1)if __name__"__main__":u…

ESU毅速丨为什么增材制造广受关注?

随着科技的飞速发展&#xff0c;增材制造3D打印技术逐渐成为制造业的新宠。包括航空航天、汽车、家电、电子等各行业都在积极拥抱3D打印&#xff0c;为什么3D打印能引起制造业广泛关注与应用&#xff1f;它的主要优势有哪些&#xff1f; 首先&#xff0c;3D打印减少浪费。3D打印…

2001-2022年各省农产品进出口数据

2001-2022年各省农产品进出口数据 1、时间&#xff1a;2001-2022年 2、来源&#xff1a;商务部、农业年鉴 3、指标&#xff1a;年份、省份、农产品出口额&#xff08;亿元&#xff09;、农产品进口额&#xff08;亿元&#xff09;、农产品出口额&#xff08;万美元&#xff…

linux基础学习(9):用户与组

1.三个用户文件 1.1用户信息文件&#xff1a;/etc/passwd 打开这个文件后&#xff0c;可以看到系统内所有的用户的信息&#xff0c;其中每一行是一个用户 列数含义1用户名2 密码位。 x代表该用户有密码 3 用户uid。 超级用户为0&#xff08;就是root用户&#xff09;&#x…

LeetCode:206反转链表

206. 反转链表 - 力扣&#xff08;LeetCode&#xff09; 不难&#xff0c;小细节是单写一个循环&#xff0c;把特殊情况包含进去&#xff0c; 单链表核心&#xff1a;上一个结点&#xff0c;当前结点&#xff0c;下一个结点&#xff0c; 代码&#xff1a;注释&#xff08;算是…

AI数字人训练数据集汇总

唇读&#xff08;Lip Reading&#xff09;&#xff0c;也称视觉语音识别&#xff08;Visual Speech Recognition&#xff09;&#xff0c;通过说话者口 型变化信息推断其所说的内容&#xff0c;旨在利用视觉信道信息补充听觉信道信息&#xff0c;在现实生活中有重要应用。例如&…

Python学习03 -- 函数相关内容

1.def --- 这个是定义函数的关键字 \n --- 这个在print()函数中是换行符号 1.注意是x, 加个空格之后再y 1.形式参数数量是不受限制的&#xff08;参数间用&#xff0c;隔开&#xff09;&#xff0c;传实参给形参的时候要一一对应 返回值 --- 函数返还的结果捏 1.写None的时…

统计学-R语言-8.2

文章目录 前言双因子方差分析数学模型主效应分析交互效应分析正态性检验 绘制3个品种产量数据合并后的正态Q-Q图&#xff08;数据&#xff1a;example8_2&#xff09;练习 前言 本篇将继续介绍方差分析的知识。 双因子方差分析 考虑两个类别自变量对数值因变量影响的方差分析…

【Python】一个简单的小案例:实现批量修改图片格式

1.代码 import os from tkinter import Tk, Button from PIL import Imagedef check_and_create_folders():# 获取当前目录current_directory os.getcwd()# 定义文件夹名称folders_to_check ["JPG", "PNG"]for folder_name in folders_to_check:folder_…

AWTK 开源串口屏开发(9) - 用户和权限管理

用户管理和权限控制是一个常用的功能。在工业软件中&#xff0c;通常将用户分为几种不同的角色&#xff0c;每种角色有不同的权限&#xff0c;比如管理员、操作员和维护员等等。在 AWTK 串口屏中&#xff0c;内置基本的用户管理和权限控制功能&#xff0c;可以满足常见的需求。…

2024年美赛B题:寻找潜水器 Searching for Submersibles 思路模型代码解析

2024年美赛B题&#xff1a;寻找潜水器 Searching for Submersibles 思路模型代码解析 【点击最下方群名片&#xff0c;加入群聊&#xff0c;获取更多思路与代码哦~】 问题翻译 海上游轮迷你潜艇&#xff08;MCMS&#xff09;是一家位于希腊的公司&#xff0c;专门制造能够将人…