網絡運維與網絡安全 學習筆記2023.11.23

網絡運維與網絡安全 學習筆記 第二十四天
在這里插入圖片描述

今日目標

VRRP負載均衡、BFD原理與配置、BFD典型應用
DHCP工作原理、全局模式DHCP

VRRP負載均衡

VRRP單組缺陷

每網段存在一個VRRP組,缺點如下:
主網關數據轉發壓力大
備份網關不轉發任何數據
網絡設備利用率低
在這里插入圖片描述
每網段設置多個VRRP組
虛擬網關1的IP為192.168.1.254
PC-1的網關為虛擬網關1
在這里插入圖片描述
每網段設置多個VRRP組
虛擬網關2的IP為192.168.1.253
PC-2的網關為虛擬網關2
在這里插入圖片描述
配置虛擬網關1,配置R1
interface gi0/0/0
vrrp vrid 1 virtual-ip 192.168.1.254 //配置虛擬路由器1的IP
vrrp vrid 1 priority 200 //配置虛擬路由器R1的優先級為200
配置虛擬網關1,配置R2
interface gi0/0/0
vrrp vrid 1 virtual-ip 192.168.1.254 //配置虛擬路由器1的IP
配置虛擬網關2,配置R2
Interface gi0/0/0
vrrp vrid 2 virtual-ip 192.168.1.253 //配置虛擬路由器2的IP
vrrp vrid 2 priority 200 //配置虛擬路由器2 的優先級為200
配置虛擬網關2,配置R1
interface gi0/0/0
vrrp vrid 2 virtual-ip 192.168.1.253 //配置虛擬路由器2的IP

多VLAN網關負載均衡

為VLAN10配置VRRP
SW1和SW2是VLAN10的真實網關
SW1在VLAN10中的優先級為200
SW2在VLAN10中的優先級為100
VLAN10的虛擬網關為192.168.10.254
在這里插入圖片描述
配置虛擬路由器10,配置SW1
interface vlanif 10
vrrp vrid 10 virtual-ip 192.168.10.254 //配置虛擬路由器10的IP
vrrp vrid 10 priority 200 //配置虛擬路由器10的優先級為200
配置虛擬路由器10,配置SW2
interface vlanif 10
vrrp vrid 10 virtual-ip 192.168.10.254 //配置虛擬路由器10的IP

為VLAN20配置VRRP
SW1和SW2是VLAN20的真實網關
SW2在VLAN20中的優先級為200
SW1在VLAN20中的優先級為100
VLAN20的虛擬網關為192.168.20.254
在這里插入圖片描述
配置虛擬路由器20,配置SW2
interface vlanif 20
vrrp vrid 20 virtual-ip 192.168.20.254 //配置虛擬路由器20的IP
vrrp vrid 20 priority 200 //配置虛擬路由器20的優先級為200
配置虛擬路由器20,配置SW1
interface vlanif 20
vrrp vrid 20 virtual-ip 192.168.20.254 //配置虛擬路由器20的IP

需求描述
VLAN6的主網關在SW1,優先級150,備份網關在SW2,優先級130
VLAN8的主網關在SW2,優先級150,備份網關在SW1,優先級130
VLAN6的虛擬IP為:192.168.6.254
VLAN8的虛擬IP為:192.168.8.254
在這里插入圖片描述
在這里插入圖片描述
①配置終端設備PC1
PC1的IP地址:192.168.6.1 255.255.255.0 192.168.6.254
PC2的IP地址:192.168.8.1 255.255.255.0 192.168.8.254
②配置SW3
system-view
[Huawei]sysname SW3
[SW3]vlan batch 6 8
[SW3]interface Ethernet0/0/1
[SW3-Ethernet0/0/1]port link-type access
[SW3-Ethernet0/0/1]port default vlan 6
[SW3-Ethernet0/0/1]quit
[SW3]interface Ethernet0/0/2
[SW3-Ethernet0/0/2]port link-type access
[SW3-Ethernet0/0/2]port default vlan 8
[SW3]interface Ethernet0/0/13
[SW3-Ethernet0/0/13]port link-type trunk
[SW3-Ethernet0/0/13]port trunk allow-pass vlan all
[SW3-Ethernet0/0/13]quit
[SW3]interface Ethernet0/0/22
[SW3-Ethernet0/0/22]port link-type trunk
[SW3-Ethernet0/0/22]port trunk allow-pass vlan all
[SW3-Ethernet0/0/22]quit
③配置SW1
system-view
[Huawei]sysname SW1
[SW1]vlan batch 6 8
[SW1]interface GigabitEthernet0/0/13
[SW1-GigabitEthernet0/0/13]port link-type trunk
[SW1-GigabitEthetnet0/0/13]port trunk allow-pass vlan all
[SW1-GigabitEthernet0/0/13]quit
④配置SW2
system-view
[Huawei]sysname SW2
[SW2]vlan batch 6 8
[SW2]interface GigabitEthernet0/0/22
[SW2-GigabitEthernet0/0/22]port link-type trunk
[SW2-GigabitEthernet0/0/22]port trunk allow-pass vlan all
[SW2-GigabitEthernet0/0/22]quit
⑤配置SW1上vlan6的VRRP(主網關)
[SW1]interface Vlanif 6
[SW1-Vlanif6]ip address 192.168.6.251 24
[SW1-Vlanif6]vrrp vrid 6 virtual-ip 192.168.6.254
[SW1-Vlanif6]vrrp vrid 6 priority 150
[SW1-Vlanif6]quit
⑥配置SW2上vlan6的VRRP(備份網關)
[SW2]interface Vlanif 6
[SW2-Vlanif6]ip address 192.168.6.252 24
[SW2-Vlanif6]vrrp vrid 6 virtual-ip 192.168.6.254
[SW2-Vlanif6]vrrp vrid 6 priority 130
[SW2-Vlanif6]quit
⑦配置SW2上vlan8的VRRP(主網關)
[SW2]interface Vlanif 8
[SW2-Vlanif8]ip address 192.168.6.252 24
[SW2-Vlanif8]vrrp vrid 8 virtual-ip 192.168.8.254
[SW2-Vlanif8]vrrp vrid 8 priority 150
[SW2-Vlanif8]quit
⑧配置SW1上vlan8的VRRP(備份網關)
[SW1]interface Vlanif 8
[SW1-Vlanif8]ip address 192.168.6.251 24
[SW1-Vlanif8]vrrp vrid 8 virtual-ip 192.168.8.254
[SW1-Vlanif8]vrrp vrid 8 priority 130
[SW1-Vlanif8]quit
⑨查看VRRP信息
[SW1]display vrrp brief
[SW2]display vrrp brief

BFD原理與配置

產生背景

目的
為了減小設備故障對業務的影響,提高網絡的可靠性,網絡設備需要能夠盡快檢測到與相鄰設備間的通信故障,以便及時采取措施,保障業務繼續進行。
在現有網絡中,有些鏈路通常通過硬件檢測信號,如SDH告警,檢測鏈路故障,但并不是所有的介質都能夠提供硬件檢測。
此時應用就要依靠上層協議自身的Hello報文機制來進行故障檢測。上層協議的檢測時間都在1秒以上,這樣的故障檢測時間對某些應用來說是不能容忍的。同時,在一些小型三層網絡中,如果沒有部署路由協議,則無法使用路由協議的Hello報文機制來檢測故障。
解決方案
BFD(Bidirectional Forwarding Detection)
雙向轉發檢測機制,提供了一個通用的標準化的,與介質和協議無關的快速故障檢測機制,用于快速檢測、監控網絡中鏈路或者IP路由的轉發連接情況。
BFD的優點
對相鄰設備之間的通道提供輕負荷、快速故障檢測
用單一的機制對任何介質、任何協議層進行實時檢測

BFD原理描述

原理簡介
BFD在兩臺網絡設備上建立會話,用來檢測網絡設備間的雙向轉發路徑,為上層應用服務。
BFD本身并沒有鄰居發現機制,二是靠被服務的上層應用通知其鄰居信息以建立會話。
會話建立后會周期性地快速發送BFD報文,如果在監測時間內沒有收到BFD報文則認為該雙向轉發路徑發生了故障,通知被服務的上層應用進行相應的處理。

BFD會話建立方式

靜態建立BFG會話
通過命令行手工配置BFD會話參數,包括配置本地標識符和遠端標識符等,然后手工下發BFD會話建立請求。
動態建立BFD會話
動態分配本地標識符:當應用程序觸發動態創建BFD會話時,系統分配屬于動態會話標識符區域的值作為BFD會話的本地標識符。
然后向對端發送Remote Discriminator的值為0的BFD控制報文,進行會話協商。

BFD檢測機制

原理
BFD的檢測機制是兩個系統建立BFD會話,并沿它們之間的路徑周期性發送BFD控制報文,如果一方在既定的時間內沒有收到BFD控制報文,則認為路徑上發生了故障。
配置命令
在這里插入圖片描述
[RA]bfd //啟用BFD
[RA]bfd AC bind peer-ip 10.2.1.2 //創建BFD會話,名字為AC
[RA-bfd-session-AC]discriminator local 1 //配置本地設備標識為1
[RA-bfd-session-AC]discriminator remote 3 //配置遠程設備標識為3
[RA-bfd-session-AC]commit //提交BFD會話,才可以讓配置生效
[RA-bfd-session-AC]quit

[RC]bfd //啟用BFD
[RC]bfd CA bind peer-ip 10.1.1.1 //創建BFD會話,名字為CA
[RC-bfd-session-CA]discriminatior loacl 3 //配置本地設備標識為3
[RC-bfd-session-CA]discriminator remote 1 //配置遠程設備標識為1
[RC-bfd-session-CA]commit //提交BFD會話
[RC-bfd-session-CA]quit

[SW2]display bfd session all //顯示BFD會話信息

配置BFD多跳檢測

需求描述
如圖配置設備的IP地址
在R1和R3之間建立BFD會話,快速檢測鏈路故障
查看R1和R3之間的BFD會話的狀態信息
在這里插入圖片描述
在這里插入圖片描述
配置步驟
①配置R1
system-view
[Huawei]sysname R1
[R1]interface GigabitEthernet 0/0/0
[R1-GigabitEthernet0/0/0]ip address 192.168.12.1 24
[R1-GigabitEthernet0/0/0]quit
[R1]ip route-static 192.168.23.0 24 192.168.12.2
②配置R2
system-view
[Huawei]sysname R2
[R2]interface GigabitEthernet 0/0/1
[R2-GigabitEthernet0/0/1]ip address192.168.12.2 24
[R2-GigabitEthernet0/0/1]quit
[R2]interface GigabitEthernet 0/0/0
[R2-GigabitEthernet0/0/0]ip address 192.168.23.2 24
[R2-GigabirEthernet0/0/0]quit
③配置R3
system-view
[Huawei]sysname R3
[R3]interface GigabitEthernet 0/0/1
[R3-GigabitEthernet0/0/1]ip address 192.168.23.3 24
[R3-GigabitEthernet0/0/1]quit
[R3]ip route-static 192.168.12.0 24 192.168.23.2
④配置BFD-R1
[R1]bfd
[R1-bfd]quit
[R1]bfd 13 bind peer 192.168.23.3
[R1-bfd-session-13]discriminator loacl 1
[R1-bfd-session-13]discriminator remote 3
[R1-bfd-session-13]commit
[R1-bfd-session-13]quir
⑤配置BFD-R3
[R3]bfd
[R3-bfd]quit
[R3]bfd 13 bind peer 192.168.12.1
[R3-bfd-session-13]discriminator local 3
[R3-bfd-session-13]discriminator remote 1
[R3-bfd-session-13]commit
[R3-bfd-session-13]quit
⑥驗證BFD會話
[R1]display bfd session all
[R3]display bfd session all

BFD典型應用

應用場景
R1故障,R2切換為主網關
默認切換時間為3s
希望主/備網關實現快速切換
在這里插入圖片描述
解決方案
在R1和R2之間,建立BFD會話
在R2上配置VRRP鏈路跟蹤,跟蹤對象為BFD會話
一旦BFD會話的狀態為down,則增加R2的VRRP優先級,確保R2升級為主網關
配置命令
[R1]bfd //啟用bfd
[R1]bfd 12 bind peer-ip 192.168.1.252 //創建bfd會話,名字為12
[R1-bfd-session-12]discriminator local 1 //配置本地設備標識為1
[R1-bfd-session-12]discriminator remote 2 //配置遠程設備標識為2
[R1-bfd-session-12]commit //提交bfd會話
[R1-bfd-session-12]quit

[R2]bfd //啟用bfd
[R2]bfd 21 bind peer-ip 192.168.1.251 //創建bfd會話,名字為21
[R2-bfd-session-21]discriminator local 2 //配置本地設備標識為2
[R2-bfd-session-21]discriminator remote 1 //配置遠程設備標識為1
[R2-bfd-session-21]commit //提交bfd會話
[R2-bfd-session-21]quit

在R2上配置VRRP鏈路跟蹤,跟蹤bfd會話,增加優先級到210
[R2]interface GigabitEthernet 0/0/0
[R2-GigabitEthernet0/0/0]vrrp vrid 1 track bfd-session 2 increased 110
//如果本地的bfd ID為2的會話斷開,那么Gi0/0/0端口發送的VRRP優先級增加110

配置VRRP主/備網關快速切換

需求描述
如圖配置設備的IP地址
在SW1和SW2之間建立BFD會話,快速檢測鏈路故障
主網關SW1故障后,實現備份網關的快速切換
在這里插入圖片描述
在這里插入圖片描述
配置步驟
①配置終端PC1/2的IP地址信息
②SW3配置VLAN/Trunk/Access
system-view //進入系統視圖
[Huawei]sysname SW1 //修改設備名稱為SW3
[SW1]vlan batch 6
[SW3]interface GigabitEthernet0/0/1 //SW3與PC1的互聯接口
[SW3-GigabitEthernet0/0/1]port link-type access //配置鏈路類型為access
[SW3-GigabitEthernet0/0/1]port default vlan 6 //將接口加入到vlan6
[SW3-GigabitEthernet0/0/1]quit
[SW3]interface GigabitEthernet0/0/2 //SW3與PC2的互聯接口
[SW3-GigabitEthernet0/0/2]port link-type access //配置鏈路類型為access
[SW3-GigabitEthernet0/0/2]port default vlan 6 //將接口加入到vlan6
[SW3-GigabitEthernet0/0/2]quit
[SW3]interface GigabitEthernet0/0/13 //SW3與SW1的互聯接口
[SW3-GigabitEthernet0/0/13]port link-type trunk //配置鏈路類型為Trunk
[SW3-GigabitEthernet0/0/13]port trunk allow-pass vlan all //設置Trunk允許所有vlan
[SW3-GigabitEthernet0/0/13]quit
[SW3]interface GigabitEthernent0/0/23 //SW3與SW2的互聯接口
[SW3-GigabitEthernet0/0/23]port link-type trunk //配置鏈路類型為Trunk
[SW3-GigabitEthernet0/0/23]port trunk allow-pass vlan all //設置Trunk允許所有vlan
[SW3-GigabitEthernet0/0/23]quit
③SW1配置VLAN/Trunk/Access
system-view //進入系統視圖
[Huawei]sysname SW1 //修改設備名稱為SW1
[SW1]vlan batch 6
[SW1]interface GigabitEthernet0/0/13 //SW1與SW3的互聯接口
[SW1-GigabitEthernet0/0/13]port link-type trunk //配置鏈路類型為Trunk
[SW1-GigabitEthernet0/0/13]port trunk allow-pass vlan all //設置允許所有vlan
[SW1-GigabitEthernet0/0/13]quit
④SW2配置VLAN/Trunk/Access
system-view //進入系統視圖
[Huawei]sysname SW2 //修改設備名稱為SW2
[SW2]vlan batch 6
[SW2]interface GigabitEthernet0/0/23 //SW2與SW3的互聯接口
[SW2-GigabitEthernet0/0/23]port link-type trunk //配置鏈路類型為Trunk
[SW2-GigabitEthernet0/0/23]port trunk allow-pass vlan all //設置允許所有vlan
[SW2-GigabitEthernet0/0/23]quit
⑤配置SW1上vlan6的VRRP(主網關)
[SW1]interface Vlanif 6 //進入vlanif6的網關接口
[SW1-Vlanif6]ip address 192.168.6.251 24 //配置vlanif6的真實網關IP地址
[SW1-Vlanif6]vrrp vrid 6 virtual-ip 192.168.6.254 //配置vlanif6的虛擬網關IP地址
[SW1-Vlanif6]vrrp vrid 6 priority 150 //配置vlanif6的vrrp優先級
[SW1-Vlanif6]quit
⑥配置SW2上vlan6的VRRP(備份網關)
[SW2]interface Vlanif 6 //進入vlanif6的網關接口
[SW2-Vlanif6]ip address 192.168.6.252 24 //配置vlanif6的真實網關IP地址
[SW2-Vlanif6]vrrp vrid 6 virtual-ip 192.168.6.254 //配置vlanif6的虛擬網關IP地址
[SW2-Vlanif6]vrrp vrid 6 priority 130 //配置vlanif6的vrrp優先級
[SW2-Vlanif6]quit
⑦在SW1/2上創建BFD會話
[SW2]bfd
[SW2-bfd]quit
[SW2]bfd
[SW2]bfd 21 bind peer-ip 192.168.6.251
[SW2-bfd-session-21]discriminator local 2
[SW2-bfd-session-21]discriminator remote 1
[SW2-bfd-session-21]commit
[SW2-bfd-session-21]quit

[SW1]bfd
[SW1-bfd]quit
[SW1]bfd
[SW1]bfd 12 bind peer-ip 192.168.6.252
[SW1-bfd-session-12]discriminator local 1
[SW1-bfd-session-12]discriminator remote 1
[SW1-bfd-session-12]commit
[SW1-bfd-session-12]quit
⑧在備份網關SW2上,通過VRRP跟蹤BFD會話,快速發現主網關故障
[SW2]interface Vlanif 6
[SW2-Vlanif6]vrrp vrid 1 track bfd-session 2 increased 50
[SW2-Vlanif6]quit
[SW2]

DHCP工作原理

DHCP的使用背景

企業網絡中,大量的主機或設備需要獲取IP地址等網絡參數
如果采用手工配置,工作量大、容易出錯且不好管理
如果用戶擅自更改。還有可能造成IP地址沖突等問題
使用動態主機配置協議DHCP,來分配IP地址等網絡參數,可以減少管理員的工作量,避免出錯

DHCP的定義

動態主機配置協議
Dynamic Host Configuration Protocol

DHCP的作用

用于實現企業用戶IP地址的動態分配和集中管理
避免繁瑣的手工配置,快速適應網絡的變化

DHCP的角色

DHCP客戶端:通過DHCP協議請求獲取IP地址等網絡參數
DHCP服務器:負責為DHCP客戶端分配網絡參數
DHCP中繼:
負責轉發DHCP服務器和DHCP客戶端之間的DHCP報文,協助DHCP服務器向DHCP客戶端動態分配網絡參數的設備
當客戶端和服務器不在一個網段的時候,才會用到DHCP中繼設備

DHCP工作原理

1.發現階段:客戶端廣播發送DHCP Discover報文
2.提供階段:服務器回應DHCP Offer報文
3.選擇階段:客戶端廣播發送DHCP Request報文
4.確認階段:服務器回應DHCP ACK報文

全局模式DHCP

DHCP服務規劃

服務器規劃
合理規劃VLAN,確保同一VLAN內僅有一臺DHCP Server,能收到此VLAN內客戶端的DHCP請求
IP地址規劃
可供被DHCP Server自動分配的IP地址范圍
不能參與自動分配的IP地址,需要提前排除掉

創建基于全局的DHCP

開啟設備的DHCP功能,確保設備為DHCP服務器
在DHCP服務器創建地址池,規劃網段/網關/DNS和租約
在接收DHCP報文的接口上,指定DHCP的選擇模式

在路由器上建立地址池,配置網段/網關/DNS和租約
[Huawei]sysname dhcp
[dhcp]dhcp enable

[dhcp]ip pool p1 //建立地址池并命名
[dhcp-ip-pool-p1]network 192.168.1.0 mask 255.255.255.0
[dhcp-ip-pool-p1]gateway-list 192.168.1.254
[dhcp-ip-pool-p1]dns-list 8.8.8.8
[dhcp-ip-pool-p1]lease day 3 //設置DHCP租約為3天(默認為1天)

為路由器接口G0/0/0配置地址,并在接口上啟用DHCP
[dhcp]interface GigabitEthernet0/0/0
[dhcp-GigabitEthernet0/0/0]ip address 192.168.1.254 24
[dhcp-GigabitEthernet0/0/0]dhcp select global //接口下啟用DHCP功能
在這里插入圖片描述
在這里插入圖片描述

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/164694.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/164694.shtml
英文地址,請注明出處:http://en.pswp.cn/news/164694.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

Hook技術(鉤子技術)

HOOK(鉤子技術) 這里的hook我理解的意思就是通過攔截指令,將指令換成自己想要的指令,從而做道繞過原本的程序指令,要修改這個指令,要用匯編技術,從二進制入手。 擴展: 木馬病毒之…

git clone慢的解決辦法

在網站 https://www.ipaddress.com/ 分別搜索: github.global.ssl.fastly.net github.com 得到ip: 打開hosts文件 sudo vim /etc/hosts 在hosts文件末尾添加 140.82.114.3 github.com 151.101.1.194 github.global-ssl.fastly.net 151.101.65.194 g…

外部網關協議_邊界網關協議BGP

一.邊界網關協議BGP的基本概念 邊界網關協議(Border Gateway Protocol,BGP)屬于外部網關協議EGP這個類別,用于自治系統AS之間的路由選擇協議。由于在不同AS內度量路由的“代價”(距離、帶寬、費用等)可能不同,因此對于…

elasticsearch 7安裝

問題提前報 max virtual memory areas error max virtual memory areas vm.max_map_count [65530] is too low, increase to at least [262144] 如果您的環境是Linux,注意要做以下操作,否則es可能會啟動失敗 1 用編輯工具打開文件/etc/sysctl.conf 2 …

qml渲染引擎介紹

qml項目啟動入口 Qt Quick項目qml腳本在C++代碼里啟動,main.cpp如下: #include <QGuiApplication> #include <QQmlApplicationEngine>int main(int argc, char *argv[]) {

VUE excel表格導出

js代碼 //下載模板 downloadExl() { // 標題 const tHeader [‘xxx’,xxx,xx名稱,電槍xx,協議xx,snxx]; // key const filterVal [agentName, stationName, equName, channelNumber, manufacturer, sn, ]; // 值 const datas [ { agentName: 你好, stationName: 我們, e…

激光雷達與慣導標定 | Lidar_IMU_Init : 編譯

激光雷達與慣導標定&#xff1a;Lidar_IMU_Init 編譯 功能包安裝安裝ceres-solver-2.0.0 &#xff08;注意安裝2.2.0不行&#xff0c;必須要安裝2.0.0&#xff09; LI-Init是一種魯棒、實時的激光雷達慣性系統初始化方法。該方法可校準激光雷達與IMU之間的時間偏移量和外部參數…

unity shaderGraph實例-可交互瀑布

不要問我水在哪里&#xff0c;你自己相像這是一個瀑布&#xff0c;瀑布的效果我還不會做 效果展示 整體結構 這里片元著色器最后輸出的baseColor應該是黑色&#xff0c;白色為錯誤。 各區域內容 區域1 計算球到瀑布的距離&#xff0c;然后減去一個值&#xff0c;實現黑色區域…

UNETR:用于三維醫學圖像分割的Transformer

論文鏈接&#xff1a;https://arxiv.org/abs/2103.10504 代碼鏈接&#xff1a; https://monai.io/research/unetr 機構&#xff1a;Vanderbilt University, NVIDIA 最近琢磨不出來怎么把3d體數據和文本在cnn中融合&#xff0c;因為確實存在在2d里面用的transformer用在3d里面…

wpf使用CefSharp.OffScreen模擬網頁登錄,并獲取身份cookie,C#后臺執行js

目錄 框架信息&#xff1a;MainWindow.xamlMainWindow.xaml.cs爬取邏輯模擬登錄攔截請求Cookie獲取 CookieVisitorHandle 框架信息&#xff1a; CefSharp.OffScreen.NETCore 119.1.20 MainWindow.xaml <Window x:Class"Wpf_CHZC_Img_Identy_ApiDataGet.MainWindow&qu…

API自動化測試:如何構建高效的測試流程

一、引言 在當前的軟件開發環境中&#xff0c;API&#xff08;Application Programming Interface&#xff09;扮演了極為重要的角色&#xff0c;連接著應用的各個部分。對API進行自動化測試能夠提高測試效率&#xff0c;降低錯誤&#xff0c;確保軟件產品的質量。本文將通過實…

SpringMVC(三)

十、攔截器 1、攔截器的配置 SpringMVC中的攔截器用于攔截控制器方法的執行 SpringMVC中的攔截器需要實現HandlerInterceptor SpringMVC的攔截器必須在SpringMVC的配置文件中進行配置&#xff1a; <bean class"com.atguigu.interceptor.FirstInterceptor">…

constexpt

constexpt constexpt是C11引入的新的關鍵字&#xff0c;它用于在編譯時而非運行時計算函數或變量的值。這個特性對于提高程序效率和優化代非常有用。 編譯時常量和運行時常量 編譯時常量&#xff08;Compile-time Constants&#xff09;和運行時常量&#xff08;Runtime Con…

8年經驗之談 —— 如何使用自動化工具編寫測試用例?

以下為作者觀點&#xff0c;僅供參考&#xff1a; 在快速變化的軟件開發領域&#xff0c;保證應用程序的可靠性和質量至關重要。隨著應用程序復雜性和規模的不斷增加&#xff0c;僅手動測試無法滿足行業需求。 這就是測試自動化發揮作用的地方&#xff0c;它使軟件測試人員能…

leetcode做題筆記1410. HTML 實體解析器

「HTML 實體解析器」 是一種特殊的解析器&#xff0c;它將 HTML 代碼作為輸入&#xff0c;并用字符本身替換掉所有這些特殊的字符實體。 HTML 里這些特殊字符和它們對應的字符實體包括&#xff1a; 雙引號&#xff1a;字符實體為 &quot; &#xff0c;對應的字符是 "…

python appium 官網下載

找了半天吐了 https://github.com/appium/appium-desktop/releases/tag/v1.22.3-4

Hibernate批量處理數據

概念&#xff1a; 批量處理數據是指在一個事務場景中處理大量數據。 在應用程序中難以避免進行批量操作&#xff0c;Hibernate提供了以下方式進行批量處理數據&#xff1a; (1)使用HQL進行批量操作 數據庫層面 executeUpdate() (2)使用JDBC API進行批量操作 數據庫層面 …

Vue學習筆記-Object.defineproperty函數

文章目錄 前文提要Object.defineProperty作用Object.defineProperty參數使用例圖getter&#xff0c;也就是get函數setter&#xff0c;也就是set函數 前文提要 本人僅做個人學習記錄&#xff0c;如有錯誤&#xff0c;請多包涵 Object.defineProperty作用 當在js中聲明了一個變…

王道p150 20.將給定的表達式樹轉化為等價的中綴表達式(通過括號反應操作符的計算次序)

本題代碼如下 void btreetoexp(tree t, char deep) {if (t NULL)return;else if (t->lchild NULL && t->rchild NULL)printf("%c", t->data);//輸出操作數&#xff0c;不加括號else {if (deep > 1)printf("(");btreetoexp(t->l…

Rust語言入門教程(二) - 變量與作用域

變量與作用域 變量的聲明與初始化 Rust的基本語法格式如下&#xff1a; fn main(){let bunnies 2; }語句以分號結尾&#xff0c;用花括號包含語句塊。 Rust的語法其實借鑒了很多其他的語言&#xff0c;比如C語言和Python&#xff0c; 所以變量定義的格式看起來也跟很多我們…