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

华为eNSP配置专题-策略路由的配置

文章目录

  • 华为eNSP配置专题-策略路由的配置
    • 0、概要介绍
    • 1、前置环境
      • 1.1、宿主机
      • 1.2、eNSP模拟器
    • 2、基本环境搭建
      • 2.1、终端构成和连接
      • 2.2、终端的基本配置
    • 3、配置接入交换机上的VLAN
    • 4、配置核心交换机为网关和DHCP服务器
    • 5、配置核心交换机和出口路由器互通
    • 6、配置PC和出口路由器互通
      • 6.1、方法一:配置静态路由
      • 6.2、方法二:配置动态路由(RIP)
      • 6.3、方法三:配置动态路由(OSPF)
    • 7、让电信和联通服务器(环回口模拟的)互通
      • 7.1、方法一:配置RIP
    • 8、配置让PC能访问电信和联通服务器(环回口模拟的)
      • 8.1、基础配置
        • 8.1.1、出口路由器配置NAT
        • 8.1.2、网关(核心路由器)配置默认路由
      • 8.2、方法一:出口路由器配置RIP
      • 8.2、方法二:出口路由器配置默认路由
    • 9、策略路由一:所有流量默认走电信,如果电信出现故障,流量切换到联通
      • 9.1、BFD介绍
      • 9.2、删除已有默认路由
      • 9.3、BFD配置
      • 9.4、出口路由器配置默认路由,其中到电信的跟踪BFD
      • 9.5、模拟电信故障
    • 10、策略路由二:教学楼流量走电信出口,图书馆流量走联通出口
    • 11、策略路由三:访问电信的服务器走电信出口,访问联通的服务器走联通出口

华为eNSP配置专题-策略路由的配置

0、概要介绍

1、前置环境

1.1、宿主机

笔记本电脑,配置如下:Windows10企业版,32GB内存

1.2、eNSP模拟器

eNSP1.3.00

2、基本环境搭建

2.1、终端构成和连接

0、总体拓扑如下:

1、2台PC,1台代表教学楼的网络,1台代表宿舍楼的网络。
2、2台交换机,1台为接入交换机acsw,1台为核心交换机(网关)coresw。
3、3台路由器,1台为出口路由器,1台代表电信服务器,1台代表联通服务器。
4、启动设备。

2.2、终端的基本配置

1、PC1和PC2配置使用DHCP
2、出口路由器配置IP

<Huawei>system-view
[Huawei]undo info-center enable
[Huawei]sysname router
[router]int g0/0/0
[router-GigabitEthernet0/0/0]ip add 12.1.1.3 24
[router-GigabitEthernet0/0/0]int g0/0/1
[router-GigabitEthernet0/0/1]ip add 192.168.30.3 24
[router-GigabitEthernet0/0/1]int g0/0/2
[router-GigabitEthernet0/0/2]ip add 23.1.1.3 24
[router-GigabitEthernet0/0/2]quit
[router]display ip interface brief

3、电信路由器配置IP,并且配置完成后ping,ping是一个好习惯,确保每步配置都是正确的,防止到最后一步才发现错了,难以定位问题。

<Huawei>system-view 
[Huawei]undo info-center enable
[Huawei]sysname DIANXIN
[DIANXIN]int g0/0/0
[DIANXIN-GigabitEthernet0/0/0]ip add 12.1.1.1 24
[DIANXIN-GigabitEthernet0/0/0]int g0/0/1
[DIANXIN-GigabitEthernet0/0/1]ip add 100.1.1.1 24
[DIANXIN-GigabitEthernet0/0/1]quit
[DIANXIN]int LoopBack 0
[DIANXIN-LoopBack0]ip add 1.1.1.1 24
[DIANXIN-LoopBack0]quit
[DIANXIN]ping 12.1.1.3

4、联通路由器配置IP,配置环回口地址,并且配置完成后ping。

<Huawei>system-view 
[Huawei]undo info-center enable
[Huawei]sysname LIANTONG
[LIANTONG]int g0/0/0
[LIANTONG-GigabitEthernet0/0/0]ip add 23.1.1.2 24
[LIANTONG-GigabitEthernet0/0/0]int g0/0/1
[LIANTONG-GigabitEthernet0/0/1]ip add 100.1.1.2 24
[LIANTONG-GigabitEthernet0/0/1]int LoopBack 0
[LIANTONG-LoopBack0]ip add 2.2.2.2 24
[LIANTONG-GigabitEthernet0/0/1]ping 23.1.1.3
[LIANTONG-GigabitEthernet0/0/1]ping 100.1.1.1

5、接入交换机改名

<Huawei>system-view 
[Huawei]undo info-center enable
[Huawei]sysname acsw

6、核心交换机改名

<Huawei>system-view 
[Huawei]undo info-center enable
[Huawei]sysname coresw

3、配置接入交换机上的VLAN

1、进入接入交换机CLI,先创建两个VLAN:

<acsw>system-view 
Enter system view, return user view with Ctrl+Z.
[acsw]vlan batch 10 20
Info: This operation may take a few seconds. Please wait for a moment...done.

2、配置access口:将接口1绑定到VLAN 10,port的link-type有四种类型,其中access用于接用户,trunk接交换机,hybrid混合,QinQ用于城域网(将用户的VLAN封装到城域网的VLAN)

[acsw]int g0/0/1
[acsw-GigabitEthernet0/0/1]port link-type access
[acsw-GigabitEthernet0/0/1]port default vlan 10

3、配置access口:同理配置接口2和VLAN 20:

[acsw]int g0/0/2
[acsw-GigabitEthernet0/0/2]port link-type access 
[acsw-GigabitEthernet0/0/2]port default vlan 20
[acsw-GigabitEthernet0/0/2]quit

4、配置trunk口:配置接口3为trunk口,并允许所有vlan通过:

[acsw]int g0/0/3
[acsw-GigabitEthernet0/0/3]port link-type trunk
[acsw-GigabitEthernet0/0/3]port trunk allow-pass vlan all
[acsw-GigabitEthernet0/0/3]quit

4、配置核心交换机为网关和DHCP服务器

1、进入coresw的CLI,先创建VLAN

<coresw>system-view 
[coresw]vlan batch 10 20 30

2、配置下行接口为trunk口,并允许VLAN10和20通过:

[coresw]int g0/0/2
[coresw-GigabitEthernet0/0/2]port link-type trunk
[coresw-GigabitEthernet0/0/2]port trunk allow-pass vlan 10 20
[coresw-GigabitEthernet0/0/2]quit

3、配置网关:配置VLAN10和20的两个VLANIF,这样才能做网关。

[coresw]interface vlanif 10
[coresw-Vlanif10]ip add 192.168.10.254 24
[coresw-Vlanif10]interface vlanif 20
[coresw-Vlanif20]ip add 192.168.20.254 24
[coresw-Vlanif20]quit

4、启动DHCP

[coresw]dhcp enable
Info: The operation may take a few seconds. Please wait for a moment.done.

5、先配置IP地址池

[coresw]ip pool 10
Info:It's successful to create an IP address pool.
[coresw-ip-pool-10]network 192.168.10.0 mask 24
[coresw-ip-pool-10]gateway-list 192.168.10.254
[coresw-ip-pool-10]dns-list 8.8.8.8
[coresw-ip-pool-10]lease day 3
[coresw-ip-pool-10]excluded-ip-address 192.168.10.2 192.168.10.253
[coresw-ip-pool-10]quit

6、然后在VLANIF接口上配置DHCP,使用global时,会根据VLAN分配与VLAN接口相同网段的地址池

[coresw]int vlanif 10
[coresw-Vlanif10]dhcp select global 

7、查看PC1(VLAN 10系)的IP配置,果然已经分配到地址:

PC>ipconfig
Link local IPv6 address...........: fe80::5689:98ff:fece:10eb
IPv6 address......................: :: / 128
IPv6 gateway......................: ::
IPv4 address......................: 192.168.10.1
Subnet mask.......................: 255.255.255.0
Gateway...........................: 192.168.10.254
Physical address..................: 54-89-98-CE-10-EB
DNS server........................: 8.8.8.8

8、同理配置VLAN20的地址池和DHCP,然后查看PC2,已获得IP地址192.168.20.1

[coresw-Vlanif10]ip pool 20
[coresw-ip-pool-20]network 192.168.30.0 mask 24
[coresw-ip-pool-20]undo network
[coresw-ip-pool-20]network 192.168.20.0 mask 24
[coresw-ip-pool-20]gateway-list 192.168.20.254
[coresw-ip-pool-20]dns-list 114.114.114.114
[coresw-ip-pool-20]lease day 3
[coresw-ip-pool-20]excluded-ip-address 192.168.20.2 192.168.20.253
[coresw-ip-pool-20]quit
[coresw]interface vlanif 20
[coresw-Vlanif20]dhcp select global 

9、从PC1 ping PC2,发现可以Ping通,tracert可以看到路由情况。因为PC2不在PC1的网段,所以会把包扔给网关。而在网关上可以看到20网段的路由。这样就用三层交换机实现了跨VLAN的通信。

PC>tracert 192.168.20.1
traceroute to 192.168.20.1, 8 hops max
(ICMP), press Ctrl+C to stop1  192.168.10.254   47 ms  47 ms  47 ms2  192.168.20.1   78 ms  94 ms  93 ms

5、配置核心交换机和出口路由器互通

1、本来可以再核心交换机和出口路由器的端口上配置IP即可。但eNSP上华为的三层交换机不能直接给接口配IP。所以只能先配置VLAN,然后VLANIF绑定IP。
2、在coresw上配置VLAN,再通过VLAN绑定IP:

[coresw]int vlanif 30
[coresw-Vlanif30]ip add 192.168.30.254 24
[coresw-Vlanif30]quit
[coresw]int g0/0/1
[coresw-GigabitEthernet0/0/1]port link-type access
[coresw-GigabitEthernet0/0/1]port default vlan 30
[coresw-GigabitEthernet0/0/1]quit

3、在出口路由器上的端口上直接配置IP,然后发觉可以ping同192.168.30.254即核心交换机了。

[router]int g0/0/1
[router-GigabitEthernet0/0/1]ip add 192.168.30.3 24
[router-GigabitEthernet0/0/1]quit
[router]ping 192.168.30.254

6、配置PC和出口路由器互通

1、其实现在PC ping出口路由器,出口路由器已经能收到IICMP包,但无法回包,因为路由器上没有回10网段或20网段的路由。

6.1、方法一:配置静态路由

1、最简单的简单方法就是在路由器上写静态路由。

[router]ip route-static 192.168.10.0 255.255.255.0 192.168.30.254
[router]ip route-static 192.168.20.0 255.255.255.0 192.168.30.254

6.2、方法二:配置动态路由(RIP)

1、先在出口路由器上删除静态路由:

[router]undo ip route-static 192.168.10.0 255.255.255.0 192.168.30.254
[router]undo ip route-static 192.168.20.0 255.255.255.0 192.168.30.254

2、在出口路由器上配置RIP:

[router]rip
[router-rip-1]version 2
[router-rip-1]network 192.168.30.0
[router-rip-1]quit

3、在核心交换机上配置RIP:

[coresw]rip
[coresw-rip-1]version 2
[coresw-rip-1]network 192.168.10.0
[coresw-rip-1]network 192.168.20.0
[coresw-rip-1]network 192.168.30.0

4、这时PC和路由器又可以互通了。

6.3、方法三:配置动态路由(OSPF)

1、先在路由器和核心交换机上删除RIP

[coresw]undo rip 1
Warning: The RIP process will be deleted. Continue?[Y/N]y
[router]undo rip 1
Warning: The RIP process will be deleted. Continue?[Y/N]y

2、在核心交换机上配置OSPF:

[coresw]ospf 1
[coresw-ospf-1]area 0
[coresw-ospf-1-area-0.0.0.0]network 192.168.10.0 0.0.0.255
[coresw-ospf-1-area-0.0.0.0]network 192.168.20.0 0.0.0.255
[coresw-ospf-1-area-0.0.0.0]network 192.168.30.0 0.0.0.255

3、在出口路由器上配置OSPF:

[router]ospf 1
[router-ospf-1]area 0
[router-ospf-1-area-0.0.0.0]network 192.168.30.0 0.0.0.255

4、在路由器上可以看到通过OSPF学到了10和20网段的路由:

5、而且这时PC和路由器可以互通了。

7、让电信和联通服务器(环回口模拟的)互通

7.1、方法一:配置RIP

1、在电信服务器上配置RIP,注意RIP只宣告网络号:

[DIANXIN]rip 1
[DIANXIN-rip-1]network 100.0.0.0
[DIANXIN-rip-1]network 12.0.0.0
[DIANXIN-rip-1]network 1.0.0.0
[DIANXIN-rip-1]quit

2、在联通服务器上配置RIP:

[LIANTONG]rip 1
[LIANTONG-rip-1]network 100.0.0.0
[LIANTONG-rip-1]network 23.0.0.0
[LIANTONG-rip-1]network 2.0.0.0
[LIANTONG-rip-1]quit

3、这时在电信服务器可以ping通联通服务器的环回口2.2.2.2了。

8、配置让PC能访问电信和联通服务器(环回口模拟的)

8.1、基础配置

8.1.1、出口路由器配置NAT

1、在出口路由器上先配置ACL:

[router]acl 2000
[router-acl-basic-2000]rule 10 permit source 192.168.10.0 0.0.0.255
[router-acl-basic-2000]rule 20 permit source 192.168.20.0 0.0.0.25
[router-acl-basic-2000]quit

2、在到电信的接口上配置easyIP:

[router]int g0/0/0
[router-GigabitEthernet0/0/0]nat outbound 2000
[router-GigabitEthernet0/0/0]quit

3、在到联通的接口上配置easyIP:

[router]int g0/0/2
[router-GigabitEthernet0/0/2]nat outbound 2000
[router-GigabitEthernet0/0/2]quit

4、这时在PC1上ping 电信服务器,仍然ping不通。这时查看核心路由器即默认网关,发觉没有默认路由:

8.1.2、网关(核心路由器)配置默认路由

1、在核心路由器上配置默认路由,发觉PC可以ping通电信和联通服务器了。

[coresw]ip route-static 0.0.0.0 0.0.0.0 192.168.30.3

8.2、方法一:出口路由器配置RIP

1、在出口路由器上配置RIP,然后发现PC可以ping通电信和联通的环回口(用来模拟其服务器)了。

[router]rip 1
[router-rip-1]network 12.0.0.0
[router-rip-1]network 23.0.0.0

8.2、方法二:出口路由器配置默认路由

1、先在出口路由器删除RIP

[router]undo rip 1
Warning: The RIP process will be deleted. Continue?[Y/N]y

2、这时发觉PC就ping不通电信和联通了。

3、在出口路由器上配置默认路由,其中到电信的默认路由优先级调整为50(默认路由的优先级默认为60),50比60小,因此50优先级的默认路由器优先级更高。

[router]ip route-static 0.0.0.0 0 12.1.1.1 preference 50
[router]ip route-static 0.0.0.0 0 23.1.1.2

4、可以看到现在在出口路由器上起作用的默认路由指向电信:

5、在PC上ping联通的2.2.2.2,可以通。通过tracert发觉虽然ping的事联通服务器,却会经过电信服务器,就是因为默认路由的配置的优先级的关系。

9、策略路由一:所有流量默认走电信,如果电信出现故障,流量切换到联通

  1. 策略路由,是一种比基于目标网络进行路由更加灵活的数据包路由转发机制。路由器将通过路由图决定如何对需要路由的数据包进行处理,路由图决定了一个数据包的下一跳转发路由器。
  2. 本策略路由可以通过BFD+静态路由跟踪BFD来实现。

9.1、BFD介绍

BFD是一种双向转发检测机制,可以提供毫秒级的检测,可以实现链路的快速检测,BFD通过与上层路由协议联动,可以实现路由的快速收敛,确保业务的永续性。BFD Echo报文采用UDP封装,目的端口号为3784

9.2、删除已有默认路由

1、在路由器上先把默认路由删除:

[router]undo ip route-static 0.0.0.0 0 12.1.1.1 preference 50
[router]undo ip route-static 0.0.0.0 0 23.1.1.2

9.3、BFD配置

1、在路由器做BFD配置:

[router]bfd
[router-bfd]bfd dianxin bind peer-ip 12.1.1.1 source-ip 12.1.1.3 auto
[router-bfd-session-dianxin]quit

2、在电信服务器上配置BFD:

[DIANXIN]bfd
[DIANXIN-bfd]bfd dianxin bind peer-ip 12.1.1.3 source-ip 12.1.1.1 auto
[DIANXIN-bfd-session-dianxin]quit

3、可以通过display bfd session all命令查看BFD session

9.4、出口路由器配置默认路由,其中到电信的跟踪BFD

1、在出口路由器配置第一条默认路由,优先级为50,跟踪BFD,BFD连通了才生效。

[router]ip route-static 0.0.0.0 0 12.1.1.1 preference 50 track bfd-session dianxin

2、再配置一条默认路由指向联通:

[router]ip route-static 0.0.0.0 0 23.1.1.2

3、通过display ip routing-table查看当前生效路由:

4、通过display current-configuration可以看到实际配了两条静态路由:

9.5、模拟电信故障

1、关闭电信g0/0/0端口

[DIANXIN]int g0/0/0
[DIANXIN-GigabitEthernet0/0/0]shutdown

2、发觉PC仍然可以ping通2.2.2.2。然后display看到已切换到联通默认路由

3、重新打开电信g0/0/0端口

[DIANXIN]int g0/0/0
[DIANXIN-GigabitEthernet0/0/0]undo shutdown

4、这时发觉又会切回电信默认路由

10、策略路由二:教学楼流量走电信出口,图书馆流量走联通出口

1、在路由器上先把默认路由删除:

[router]undo ip route-static 0.0.0.0 0 12.1.1.1 preference 50
[router]undo ip route-static 0.0.0.0 0 23.1.1.2

2、配置ACL,匹配流量

[router]acl 2010
[router-acl-basic-2010]rule 10 permit source 192.168.10.0 0.0.0.255
[router-acl-basic-2010]acl 2020
[router-acl-basic-2020]rule 10 permit source 192.168.20.0 0.0.0.255
[router-acl-basic-2020]quit

3、配置流分类

[router]traffic classifier jiaoxue
[router-classifier-jiaoxue]if-match acl 2010
[router-classifier-jiaoxue]traffic classifier tushuguan
[router-classifier-tushuguan]if-match acl 2020
[router-classifier-tushuguan]quit

4、配置流行为

[router]traffic behavior re-dianxin
[router-behavior-re-dianxin]redirect ip-nexthop 12.1.1.1
[router-behavior-re-dianxin]traffic behavior re-liantong
[router-behavior-re-liantong]redirect ip-nexthop 23.1.1.2
[router-behavior-re-liantong]quit

5、配置流策略,将流分类和刘行为绑定

[router]traffic policy p
[router-trafficpolicy-p]classifier jiaoxue behavior re-dianxin
[router-trafficpolicy-p]classifier tushuguan behavior re-liantong
[router-trafficpolicy-p]quit

6、在入接口应用流策略。注意一定要在入接口应用。

[router]int g0/0/1
[router-GigabitEthernet0/0/0]traffic-policy p inbound

7、在教学楼区域的PC1上tracert,发觉走的是电信服务器

8、在图书馆区域的PC2上tracert,发觉走的是联通服务器

11、策略路由三:访问电信的服务器走电信出口,访问联通的服务器走联通出口

方法和策略路由二差不多,只不过要修改ACL,之前匹配的是源,现在要改的是匹配的是目标。

1、配置ACL,注意要用3000以上序号:

[router]acl 3010
[router-acl-adv-3010]rule 10 permit ip source any destination 1.1.1.0 0.255.255.255 
[router-acl-adv-3010]acl 3020
[router-acl-adv-3020]rule 10 permit ip source any destination 2.2.2.0 0.255.255.255
[router-acl-adv-3020]quit

相关文章:

华为eNSP配置专题-策略路由的配置

文章目录 华为eNSP配置专题-策略路由的配置0、概要介绍1、前置环境1.1、宿主机1.2、eNSP模拟器 2、基本环境搭建2.1、终端构成和连接2.2、终端的基本配置 3、配置接入交换机上的VLAN4、配置核心交换机为网关和DHCP服务器5、配置核心交换机和出口路由器互通6、配置PC和出口路由器…...

JAVA实现智能停车场管理系统 开源

目录 一、摘要1.1 项目介绍1.2 项目录屏 二、研究内容A. 车主端功能B. 停车工作人员功能C. 系统管理员功能1. 停车位模块2. 车辆模块3. 停车记录模块4. IC卡模块5. IC卡挂失模块 三、界面展示3.1 登录注册3.2 车辆模块3.3 停车位模块3.4 停车数据模块3.5 IC卡档案模块3.6 IC卡挂…...

深入理解Docker之:存储卷相关概念详解和分析

深入理解Docker之&#xff1a;存储卷相关概念详解和分析 1. 为什么要使用存储卷 Docker镜像由多个只读层叠加而成&#xff0c;启动容器时&#xff0c;Docker会加载只读镜像层&#xff0c;并在镜像栈顶部添加一个读写层如果运行中的容器修改了现有的一个已经存在的文件&#x…...

Node.js的基本概念node -v 和npm -v 这两个命令的作用

Node.js 是一个开源且跨平台的 JavaScript 运行时环境&#xff0c;它可以让你在服务器端运行 JavaScript 代码。Node.js 使用了 Chrome 的 V8 JavaScript 引擎来执行代码&#xff0c;非常高效。 在 Node.js 出现之前&#xff0c;JavaScript 通常只在浏览器中运行&#xff0c;用…...

mysql bin_log日志恢复数据

1、开启bin_log日志 开启方式1 my.ini 下配置开启或者vi /etc/my.cnf log_binmysql-bin server_id1 2、参考文章 https://blog.csdn.net/DreamEhome/article/details/130010601 (重点) 【mysql】binlog日志_mysql binlog日志-CSDN博客 MySQL 开启binlog日志和windows服务…...

C++系列之list的模拟实现

&#x1f497; &#x1f497; 博客:小怡同学 &#x1f497; &#x1f497; 个人简介:编程小萌新 &#x1f497; &#x1f497; 如果博客对大家有用的话&#xff0c;请点赞关注再收藏 &#x1f31e; list的节点类 template struct list_Node { public: list_Node* _prev; list_…...

什么情况下你会使用AI工具(chatgpt、bard)?

在当今数字化和智能化的时代&#xff0c;AI工具已成为许多领域的常见工具。在本文中&#xff0c;我将探讨什么情况下会使用AI工具。前言 – 人工智能教程 ChatGPT是一款由OpenAI开发的大型语言模型&#xff0c;可以生成文本、翻译语言、编写不同类型的创意内容&#xff0c;并以…...

【go】两数求和

文章目录 题目代码解法2 代码仓库 题目 给定一个整数数组 nums 和一个整数目标值 target&#xff0c;请你在该数组中找出 和为目标值 target 的那 两个 整数&#xff0c;并返回它们的数组下标。 你可以假设每种输入只会对应一个答案。但是&#xff0c;数组中同一个元素在答案…...

软考高项-成本管理

工具和技术 三点估算 通过考虑估算中的不确定性与风险&#xff0c;使用3种估算值来界定活动成本的近似区间&#xff0c;可以提高活动成本估算的准确性&#xff1b; 储备分析 为应对成本的不确定性&#xff0c;成本估算中可以包括应急储备。应急储备的管理方法&#xff1a; 将…...

24年FRM备考知识点以及一级公式表

FRM一级公示表以及备考知识点 链接&#xff1a;https://pan.baidu.com/s/17RpFF9OyfRk7FGtEQrxf3A?pwd1234 提取码&#xff1a;1234 FRM二级公示表以及备考知识点 链接&#xff1a;https://pan.baidu.com/s/175D05wV1p94dIfBZThutCQ?pwd1234 提取码&#xff1a;1234...

Spring Cloud学习:二【详细】

目录 Nacos的配置 Nacos的单机启动 服务注册 Nacos服务分级存储模型 优先访问同集群的服务 根据权重负载均衡 环境隔离Namespace Nacos调用流程 Nacos与Eureka注册对比 Nacos与Eureka的共同点 Nacos与Eureka的区别 Nacos配置管理 统一配置 配置自动刷新 多环境配…...

Unity的live2dgalgame多语言可配置剧情框架

这段代码用于读取表格 using System; using System.Collections; using System.Collections.Generic; using UnityEngine; using OfficeOpenXml; using System.IO; using UnityEngine.Networking; using UnityEngine.UI; using Random UnityEngine.Random;public class Plots…...

再畅通工程(最小生成树)

题目描述&#xff1a;还是畅通工程 某省调查乡村交通状况&#xff0c;得到的统计表中列出了任意两村庄间的距离。省政府“畅通工程”的目标是使全省任何两个村庄间都可以实现公路交通&#xff08;但不一定有直接的公路相连&#xff0c;只要能间接通过公路可达即可&#xff09;&…...

前后端分离不可忽视的陷阱,深入剖析挑战,分享解决方案,助你顺利实施分离开发。

不管你设计的系统架构是怎么样&#xff0c;最后都是你的组织内的沟通结构胜出。这个观点一直在组织内不断地被证明&#xff0c;但也不断地被忽略。 前后端分离的利与弊 近几年&#xff0c;随着微服务架构风格的引入、前后端生态的快速发展、多端产品化的出现&#xff0c;前后…...

(四)库存超卖案例实战——优化redis分布式锁

前言 在上一节内容中&#xff0c;我们已经实现了使用redis分布式锁解决商品“超卖”的问题&#xff0c;本节内容是对redis分布式锁的优化。在上一节的redis分布式锁中&#xff0c;我们的锁有俩个可以优化的问题。第一&#xff0c;锁需要实现可重入&#xff0c;同一个线程不用重…...

【ROS入门】雷达、摄像头及kinect信息仿真以及显示

文章结构 雷达信息仿真以及显示Gazebo仿真雷达配置雷达传感器信息xacro文件集成启动仿真环境 Rviz显示雷达数据 摄像头信息仿真以及显示Gazebo仿真摄像头新建xacro文件&#xff0c;配置摄像头传感器信息xacro文件集成启动仿真环境 Rviz显示摄像头数据 kinect信息仿真以及显示Ga…...

实用篇-认识微服务

一、服务架构演变 1. 单体架构 单体架构&#xff1a;将业务的所有功能集中在一个项目中开发&#xff0c;打成一个包部署 单体架构的优点&#xff1a; 架构简单部署成本低 单体架构的缺点&#xff1a; 耦合度高 2. 分布式架构 分布式架构&#xff1a; 根据业务功能对系…...

【产品运营】产品需求应该如何管理

产品项目在进行时经常会有一些需求需要实现&#xff0c;需求是产品更新迭代的动力&#xff0c;需求也是从用户诉求转化而来&#xff1b;在做需求管理时&#xff0c;我们需要判断一个需求的优先级等方面&#xff0c;对产品进行优化&#xff1b; 目录&#xff1a; 一、 为什么要…...

Linux 系统调用IO口,利用光标偏移实现文件复制

用系统调用IO函数实现从一个文件读取最后2KB数据并复制到另一个文件中&#xff0c;源文件以只读方式打开&#xff0c;目标文件以只写的方式打开&#xff0c;若目标文件不存在&#xff0c;可以创建并设置初始值为0664&#xff0c;写出相应代码&#xff0c;要对出错情况有一定的处…...

【原创】指针变量作为函数参数要点注意

指针变量作为函数参数要点注意&#xff08;已写至笔记&#xff09; 1传参指针不加*&#xff08;main中函数&#xff09; 2收参指针要加*&#xff08;被main调用的函数&#xff09; 3传参指针名可与收参指针名不同&#xff0c;不影响 4【问】如何看主函数中指针所指内容是否改变…...

相机Camera日志实例分析之二:相机Camx【专业模式开启直方图拍照】单帧流程日志详解

【关注我&#xff0c;后续持续新增专题博文&#xff0c;谢谢&#xff01;&#xff01;&#xff01;】 上一篇我们讲了&#xff1a; 这一篇我们开始讲&#xff1a; 目录 一、场景操作步骤 二、日志基础关键字分级如下 三、场景日志如下&#xff1a; 一、场景操作步骤 操作步…...

ffmpeg(四):滤镜命令

FFmpeg 的滤镜命令是用于音视频处理中的强大工具&#xff0c;可以完成剪裁、缩放、加水印、调色、合成、旋转、模糊、叠加字幕等复杂的操作。其核心语法格式一般如下&#xff1a; ffmpeg -i input.mp4 -vf "滤镜参数" output.mp4或者带音频滤镜&#xff1a; ffmpeg…...

DIY|Mac 搭建 ESP-IDF 开发环境及编译小智 AI

前一阵子在百度 AI 开发者大会上&#xff0c;看到基于小智 AI DIY 玩具的演示&#xff0c;感觉有点意思&#xff0c;想着自己也来试试。 如果只是想烧录现成的固件&#xff0c;乐鑫官方除了提供了 Windows 版本的 Flash 下载工具 之外&#xff0c;还提供了基于网页版的 ESP LA…...

C# 类和继承(抽象类)

抽象类 抽象类是指设计为被继承的类。抽象类只能被用作其他类的基类。 不能创建抽象类的实例。抽象类使用abstract修饰符声明。 抽象类可以包含抽象成员或普通的非抽象成员。抽象类的成员可以是抽象成员和普通带 实现的成员的任意组合。抽象类自己可以派生自另一个抽象类。例…...

(转)什么是DockerCompose?它有什么作用?

一、什么是DockerCompose? DockerCompose可以基于Compose文件帮我们快速的部署分布式应用&#xff0c;而无需手动一个个创建和运行容器。 Compose文件是一个文本文件&#xff0c;通过指令定义集群中的每个容器如何运行。 DockerCompose就是把DockerFile转换成指令去运行。 …...

高防服务器能够抵御哪些网络攻击呢?

高防服务器作为一种有着高度防御能力的服务器&#xff0c;可以帮助网站应对分布式拒绝服务攻击&#xff0c;有效识别和清理一些恶意的网络流量&#xff0c;为用户提供安全且稳定的网络环境&#xff0c;那么&#xff0c;高防服务器一般都可以抵御哪些网络攻击呢&#xff1f;下面…...

GC1808高性能24位立体声音频ADC芯片解析

1. 芯片概述 GC1808是一款24位立体声音频模数转换器&#xff08;ADC&#xff09;&#xff0c;支持8kHz~96kHz采样率&#xff0c;集成Δ-Σ调制器、数字抗混叠滤波器和高通滤波器&#xff0c;适用于高保真音频采集场景。 2. 核心特性 高精度&#xff1a;24位分辨率&#xff0c…...

Web 架构之 CDN 加速原理与落地实践

文章目录 一、思维导图二、正文内容&#xff08;一&#xff09;CDN 基础概念1. 定义2. 组成部分 &#xff08;二&#xff09;CDN 加速原理1. 请求路由2. 内容缓存3. 内容更新 &#xff08;三&#xff09;CDN 落地实践1. 选择 CDN 服务商2. 配置 CDN3. 集成到 Web 架构 &#xf…...

AI,如何重构理解、匹配与决策?

AI 时代&#xff0c;我们如何理解消费&#xff1f; 作者&#xff5c;王彬 封面&#xff5c;Unplash 人们通过信息理解世界。 曾几何时&#xff0c;PC 与移动互联网重塑了人们的购物路径&#xff1a;信息变得唾手可得&#xff0c;商品决策变得高度依赖内容。 但 AI 时代的来…...

Python 包管理器 uv 介绍

Python 包管理器 uv 全面介绍 uv 是由 Astral&#xff08;热门工具 Ruff 的开发者&#xff09;推出的下一代高性能 Python 包管理器和构建工具&#xff0c;用 Rust 编写。它旨在解决传统工具&#xff08;如 pip、virtualenv、pip-tools&#xff09;的性能瓶颈&#xff0c;同时…...