【分享】小型园区组网场景
小型园区组网图
-
在小型园区中,S2700&S3700通常部署在网络的接入层,S5700&S6700通常部署在网络的核心,出口路由器一般选用AR系列路由器。
-
接入交换机与核心交换机通过Eth-Trunk组网保证可靠性。
-
每个部门业务划分到一个VLAN中,部门间的业务在CORE上通过VLANIF三层互通。
-
核心交换机作为DHCP Server,为园区用户分配IP地址。
-
接入交换机上配置DHCP Snooping功能,防止内网用户私接小路由器分配IP地址;同时配置IPSG功能,防止内网用户私自更改IP地址。
数据规划
在配置之前,需按照下面的表格准备好数据。以下数据将在本文后续章节使用。
登录设备
请使用Console通信电缆(产品随设备附带)连接交换机与PC。若PC无串口,需要使用USB接口转串口的转接线。
配置管理IP和Telnet
配置设备管理IP地址后,可以通过管理IP远程登录设备,下面以交换机CORE为例说明配置管理IP和Telnet的方法。
-
配置管理IP地址。
<HUAWEI> system-view [HUAWEI] vlan 5 //创建交换机管理VLAN 5 [HUAWEI-VLAN5] management-vlan [HUAWEI-VLAN5] quit [HUAWEI] interface vlanif 5 [HUAWEI-vlanif5] ip address 10.10.1.1 24 [HUAWEI-vlanif5] quit
-
将管理接口加入到管理VLAN 。
[HUAWEI] interface GigabitEthernet 0/0/8 //假设连接网管的接口为GigabitEthernet 0/0/8 [HUAWEI-GigabitEthernet0/0/8] port link-type trunk [HUAWEI-GigabitEthernet0/0/8] port trunk allow-pass vlan 5 [HUAWEI-GigabitEthernet0/0/8] quit
-
配置Telnet。
[HUAWEI] telnet server enable //Telnet出厂时是关闭的 [HUAWEI] telnet server-source -i vlanif 5 //V200R020及之后版本,必须执行该命令配置连接服务器端的端口,否则Telnet不可用 [HUAWEI] user-interface vty 0 4 //Telnet常用于设备管理员登录,推荐使用AAA认证 [HUAWEI-ui-vty0-4] protocol inbound telnet [HUAWEI-ui-vty0-4] authentication-mode aaa [HUAWEI-ui-vty0-4] idle-timeout 15 [HUAWEI-ui-vty0-4] quit [HUAWEI] aaa [HUAWEI-aaa] local-user admin password irreversible-cipher Helloworld@6789 //配置登录用户名和密码 [HUAWEI-aaa] local-user admin privilege level 15 //将管理员的账号权限设置为15(最高) [HUAWEI-aaa] local-user admin service-type telnet
-
在维护终端上Telnet到交换机。出现用户视图的命令行提示符表示登录成功。
C:\Documents and Settings\Administrator> telnet 10.10.1.1 //输入交换机管理IP,并回车 Login authentication Username:admin //输入用户名和密码 Password:Info: The max number of VTY users is 5, and the number of current VTY users on line is 1. The current login time is 2014-05-06 18:33:18+00:00. <HUAWEI> //用户视图命令行提示符
配置接口与VLAN
配置接入层交换机
-
以接入交换机ACC1为例,创建ACC1的业务VLAN 10。
<HUAWEI> system-view [HUAWEI] sysname ACC1 //修改设备名称为ACC1 [ACC1] vlan batch 10 //批量创建VLAN
-
配置ACC1连接CORE的Eth-Trunk1,透传部门A的VLAN。
[ACC1] interface eth-trunk 1 [ACC1-Eth-Trunk1] port link-type trunk //配置为trunk模式,用于透传VLAN。 [ACC1-Eth-Trunk1] port trunk allow-pass vlan 10 //配置Eth-Trunk1透传ACC1上的业务VLAN [ACC1-Eth-Trunk1] mode lacp //配置Eth-Trunk1为LACP模式 [ACC1-Eth-Trunk1] quit [ACC1] interface GigabitEthernet 0/0/1 //将成员接口加入Eth-Trunk1 [ACC1-GigabitEthernet0/0/1] eth-Trunk 1 [ACC1-GigabitEthernet0/0/1] quit [ACC1] interface GigabitEthernet 0/0/2 [ACC1-GigabitEthernet0/0/2] eth-Trunk 1 [ACC1-GigabitEthernet0/0/2] quit
-
配置ACC1连接用户的接口,使用户加入VLAN,并将接口配置成边缘端口。
[ACC1] interface Ethernet 0/0/2 //配置连接PC1的接口 [ACC1-Ethernet0/0/2] port link-type access [ACC1-Ethernet0/0/2] port default vlan 10 [ACC1-Ethernet0/0/2] stp edged-port enable [ACC1-Ethernet0/0/2] quit [ACC1] interface Ethernet 0/0/3 //配置连接PC2的接口 [ACC1-Ethernet0/0/3] port link-type access [ACC1-Ethernet0/0/3] port default vlan 10 [ACC1-Ethernet0/0/3] stp edged-port enable [ACC1-Ethernet0/0/3] quit [ACC1] interface Ethernet 0/0/4 //配置连接打印机的接口 [ACC1-Ethernet0/0/4] port link-type access [ACC1-Ethernet0/0/4] port default vlan 10 [ACC1-Ethernet0/0/4] stp edged-port enable [ACC1-Ethernet0/0/4] quit
如果把ACC1下接入的用户都加入VLAN 10,为了配置简单,也可以ACC1上不配置VLAN,而是把CORE的Eth-Trunk1以access方式加入VLAN10,这样Eth-Trunk1接入的用户全部属于VLAN10。
-
配置BPDU保护功能,加强网络的稳定性。
[ACC1] stp bpdu-protection
配置核心层交换机
-
批量创建CORE与ACC1、ACC2以及园区出口路由器互通的VLAN。
<HUAWEI> system-view [HUAWEI] sysname CORE //修改设备名称为CORE [CORE] vlan batch 10 20 100 //批量创建VLAN
-
配置下行接口和VLANIF接口,VLANIF接口用于部门A与部门B之间互访。以CORE连接ACC1的Eth-Trunk1为例。
[CORE] interface eth-trunk 1 [CORE-Eth-Trunk1] port link-type trunk //配置为trunk模式,用于透传VLAN [CORE-Eth-Trunk1] port trunk allow-pass vlan 10 //配置Eth-Trunk1透传ACC1上的业务VLAN [CORE-Eth-Trunk1] mode lacp //配置为LACP模式 [CORE-Eth-Trunk1] quit [CORE] interface GigabitEthernet 0/0/1 //将成员接口加入Eth-Trunk1 [CORE-GigabitEthernet0/0/1] eth-Trunk 1 [CORE-GigabitEthernet0/0/1] quit [CORE] interface GigabitEthernet 0/0/2 [CORE-GigabitEthernet0/0/2] eth-Trunk 1 [CORE-GigabitEthernet0/0/2] quit [CORE] interface Vlanif 10 //配置VLANIF,使部门A与部门B之间三层互通 [CORE-Vlanif10] ip address 10.10.10.1 24 [CORE-Vlanif10] quit [CORE] interface Vlanif 20 //配置VLANIF,使部门B与部门A之间三层互通 [CORE-Vlanif20] ip address 10.10.20.1 24 [CORE-Vlanif20] quit
-
配置上行接口和VLANIF接口,使园区网络与Internet互通。
[CORE] interface GigabitEthernet 0/0/20 [CORE-GigabitEthernet0/0/20] port link-type access //配置为access模式 [CORE-GigabitEthernet0/0/20] port default vlan 100 [CORE-GigabitEthernet0/0/20] quit [CORE] interface Vlanif 100 //配置VLANIF,使CORE与路由器之间三层互通 [CORE-Vlanif100] ip address 10.10.100.1 24 [CORE-Vlanif100] quit
-
完成接口和VLAN的配置后,可以通过以下命令查看配置结果。
执行display eth-trunk 命令检查ACC1上的Eth-Trunk接口配置结果。可以看到,ACC1上, 接口GE0/0/1和GE0/0/2 加入了Eth-Trunk 1。[ACC1] display eth-trunk 1。Eth-Trunk1's state information is: Local: LAG ID: 1 WorkingMode: LACP Preempt Delay: Disabled Hash arithmetic: According to SA-XOR-DA System Priority: 32768 System ID: 00e0-fc12-6704 Least Active-linknumber: 1 Max Active-linknumber: 8 Operate status: up Number Of Up Port In Trunk: 1 -------------------------------------------------------------------------------- ActorPortName Status PortType PortPri PortNo PortKey PortState Weight GigabitEthernet0/0/1 Selected 1000M 32768 2 289 10111100 1 GigabitEthernet0/0/2 Selected 1000M 32768 3 289 10100010 1Partner:-------------------------------------------------------------------------------- ActorPortName SysPri SystemID PortPri PortNo PortKey PortState GigabitEthernet0/0/1 32768 00e0-fc12-2212 32768 2 289 10111100 GigabitEthernet0/0/2 32768 00e0-fc12-2212 32768 3 289 10111100 执行display vlan命令检查ACC1上的VLAN配置结果。可以看到,ACC1上,接口Eth0/0/2~Eth0/0/4以Untagged方式加入VLAN10,Eth-Trunk 1以Tagged方式加入VLAN10。 [ACC1] display vlan The total number of VLANs is : 1 -------------------------------------------------------------------------------- U: Up; D: Down; TG: Tagged; UT: Untagged; MP: Vlan-mapping; ST: Vlan-stacking; #: ProtocolTransparent-vlan; *: Management-vlan; -------------------------------------------------------------------------------- VID Type Ports -------------------------------------------------------------------------------- 10 common UT:Eth0/0/2(U) Eth0/0/3(U) Eth0/0/4(U)TG:Eth-Trunk1(U) VID Status Property MAC-LRN Statistics Description -------------------------------------------------------------------------------- 10 enable default enable disable VLAN 0010
执行display eth-trunk命令检查CORE上Eth-Trunk接口配置结果。可以看到,CORE上, 接口GE0/0/1和GE0/0/2 加入了Eth-Trunk 1。
[CORE] display eth-trunk 1 Eth-Trunk1's state information is: Local: LAG ID: 1 WorkingMode: LACP Preempt Delay: Disabled Hash arithmetic: According to SA-XOR-DA System Priority: 32768 System ID: 00e0-fc12-6703 Least Active-linknumber: 1 Max Active-linknumber: 8 Operate status: up Number Of Up Port In Trunk: 1 -------------------------------------------------------------------------------- ActorPortName Status PortType PortPri PortNo PortKey PortState Weight GigabitEthernet0/0/1 Selected 1000M 32768 2 289 10111100 1 GigabitEthernet0/0/2 Selected 1000M 32768 3 289 10100010 1Partner: -------------------------------------------------------------------------------- ActorPortName SysPri SystemID PortPri PortNo PortKey PortState GigabitEthernet0/0/1 32768 00e0-fc12-2211 32768 2 289 10111100 GigabitEthernet0/0/2 32768 00e0-fc12-2211 32768 3 289 10111100
执行display vlan命令检查CORE上VLAN配置结果。可以看到,CORE上,接口Eth-Trunk1、Eth-Trunk2分别以Tagged方式加入VLAN10和VLAN20;GE0/0/20以Tagged方式加入VLAN100。
[CORE] display vlan The total number of VLANs is : 3 -------------------------------------------------------------------------------- U: Up; D: Down; TG: Tagged; UT: Untagged; MP: Vlan-mapping; ST: Vlan-stacking; #: ProtocolTransparent-vlan; *: Management-vlan; ------------------------------------------------------------------------------- VID Type Ports -------------------------------------------------------------------------------- 10 common TG:Eth-Trunk1(U) 20 common TG:Eth-Trunk2(U) 100 common TG:GE0/0/20(U) VID Status Property MAC-LRN Statistics Description -------------------------------------------------------------------------------- 10 enable default enable disable VLAN 0010 20 enable default enable disable VLAN 0020 100 enable default enable disable VLAN 0100
配置DHCP
在CORE上配置DHCP Server,使部门A(VLAN10)和部门B (VLAN20)的用户都能获取到正确的IP地址。
以下以部门A为例,说明DHCP Server的配置步骤。
本文以基于全局地址池的DHCP Server举例。还可以配置基于接口地址池的DHCP Server。
-
创建全局地址池,配置出口网关、租期(采用缺省值1天,不需配置)并配置为打印机(MAC地址为a-b-c)分配固定的IP地址10.10.10.254。<CORE>system-view
[CORE] dhcp enable [CORE] ip pool 10 [CORE-ip-pool-10] network 10.10.10.0 mask 24 //配置部门A的用户可分配的地址池范围 [CORE-ip-pool-10] gateway-list 10.10.10.1 //配置部门A的用户的网关地址 [CORE-ip-pool-10] static-bind ip-address 10.10.10.254 mac-address a-b-c //配置为打印机分配固定的IP地址 [CORE-ip-pool-10] quit
-
配置部门A的用户从全局地址池获取IP地址。
[CORE] interface vlanif 10 [CORE-Vlanif10] dhcp select global //配置部门A的用户从全局地址池获取IP地址 [CORE-Vlanif10] quit
-
使用display ip pool命令,分别查看全局地址池10的配置和使用信息。
[CORE] display ip pool name 10 Pool-name : 10Pool-No : 0Lease : 1 Days 0 Hours 0 MinutesDomain-name : -DNS-server0 : -NBNS-server0 : -Netbios-type : -Position : Local Status : UnlockedGateway-0 : 10.10.10.1Network : 10.10.10.0Mask : 255.255.255.0VPN instance : -- ----------------------------------------------------------------------------- Start End Total Used Idle(Expired) Conflict Disable ----------------------------------------------------------------------------- 10.10.10.1 10.10.10.254 253 4 249(0) 0 0 -----------------------------------------------------------------------------
在DHCP服务器配置完成后,需要设置终端电脑网卡为自动获取地址,这样终端才能正常从DHCP服务器获取到地址,正常上网。
配置完动态分配地址之后,刚开电脑获取地址的时间比较长,这是因为对于开启了生成树协议的交换机,每当有电脑接入之后导致生成树重新收敛,所以需要的时间比较长;通过关闭接口的生成树协议或者把连接终端的交换机接口配置为边缘端口即可解决。
下面以ACC1为例,说明配置步骤。
# 关闭接口的生成树协议
[ACC1] interface Ethernet 0/0/2
[ACC1-Ethernet 0/0/2] stp disable //undo stp enable命令也可完成该功能# 配置连接终端设备的交换机接口为边缘端口[ACC1] interface Ethernet 0/0/2
[ACC1-Ethernet0/0/2] stp edged-port enable
[ACC1-Ethernet0/0/2] quit
以上两种方法选择一种进行配置,终端电脑刚开机获取地址速度慢的问题就可以有效解决。
配置核心交换机路由
-
在CORE上配置一条到园区出口网关的缺省静态路由,使内网数据可以发到出口路由器。
[CORE] ip route-static 0.0.0.0 0 10.10.100.2
-
在CORE上使用display ip routing-table命令查看IP路由表。能够查看到有一条下一跳地址为10.10.100.2的缺省静态路由,表示静态路由配置完成。三条直连路由是链路发现自动生成。
[CORE] display ip routing-table Route Flags: R - relay, D - download to fib ------------------------------------------------------------------------------ Routing Tables: Public Destinations : 5 Routes : 5 Destination/Mask Proto Pre Cost Flags NextHop Interface 0.0.0.0/0 Static 60 0 RD 10.10.100.2 Vlanif100 10.10.10.0/24 Direct 0 0 D 10.10.10.1 Vlanif10 10.10.10.1/32 Direct 0 0 D 127.0.0.1 Vlanif10 10.10.20.0/24 Direct 0 0 D 10.10.20.1 Vlanif20 10.10.20.1/32 Direct 0 0 D 127.0.0.1 Vlanif20 10.10.100.0/24 Direct 0 0 D 10.10.100.1 Vlanif100 10.10.100.1/32 Direct 0 0 D 127.0.0.1 Vlanif100
配置出口路由器
在配置出口路由器之前需要准备如下数据:公网IP地址:1.1.1.2/30,公网网关地址:1.1.1.1,DNS地址:8.8.8.8,这些参数在申请宽带的时候由运营商提供,实际网络中请以运营商提供的数据为准。
-
配置出口路由器内网接口和公网接口的IP地址。
[Router] interface GigabitEthernet 0/0/1 [Router-GigabitEthernet0/0/1] ip address 1.1.1.2 30 [Router] interface GigabitEthernet 1/0/0 [Router-GigabitEthernet1/0/0] ip address 10.10.100.2 24
-
配置允许上网的acl,将所有允许访问Internet的用户网段写入该acl 。
[Router] acl 2000 [Router-acl-basic-2000] rule permit source 10.10.10.0 0.0.0.255 [Router-acl-basic-2000] rule permit source 10.10.20.0 0.0.0.255 [Router-acl-basic-2000] rule permit source 10.10.100.0 0.0.0.255
-
在连接公网的接口配置NAT转换实现内网用户访问Internet。
[Router] interface GigabitEthernet 0/0/1 [Router-GigabitEthernet0/0/1] nat outbound 2000
-
配置到内网的明细路由和到公网的静态缺省路由。
[Router] ip route-static 10.10.10.0 255.255.255.0 10.10.100.1 [Router] ip route-static 10.10.20.0 255.255.255.0 10.10.100.1 [Router] ip route-static 0.0.0.0 0.0.0.0 1.1.1.1
-
配置DNS地址解析功能,DNS服务器地址为运营商给的。
[Router] dns resolve [Router] dns server 8.8.8.8 [Router] dns proxy enable
配置DHCP Snooping和IPSG
配置了DHCP功能之后,部门内用户主机可以自动获取地址。但是为了防止员工在内网私自接一个小路由器并开启DHCP自动分配地址的功能,导致内网合法用户获取到了私接的小路由器分配的地址而不能正常上网,还需要配置DHCP Snooping功能。
以下以部门A为例,说明DHCP Snooping的配置过程。
-
在接入交换机ACC1上开启DHCP Snooping功能。
<ACC1> system-view [ACC1] dhcp enable //使能DHCP功能 [ACC1] dhcp snooping enable //使能DHCP Snooping功能
-
在连接DHCP服务器的接口上使能DHCP Snooping功能,并将此接口配置为信任接口。
[ACC1] interface eth-trunk 1 [ACC1-Eth-Trunk1] dhcp snooping enable //使能DHCP Snooping功能 [ACC1-Eth-Trunk1] dhcp snooping trusted //配置为信任接口 [ACC1-Eth-Trunk1] quit
-
在连接终端的接口上使能DHCP Snooping功能。
[ACC1] interface ethernet 0/0/2 //配置连接PC1的接口 [ACC1-Ethernet0/0/2] dhcp snooping enable [ACC1-Ethernet0/0/2] quit [ACC1] interface ethernet 0/0/3 //配置连接PC2的接口 [ACC1-Ethernet0/0/3] dhcp snooping enable [ACC1-Ethernet0/0/3] quit [ACC1] interface ethernet 0/0/4 //配置连接打印机的接口 [ACC1-Ethernet0/0/4] dhcp snooping enable [ACC1-Ethernet0/0/4] quit
完成上述配置之后,部门A的用户就可以从合法的DHCP服务器获取IP地址,内网私接的小路由器分配地址不会干扰到内网正常用户。为了防止部门内用户私自更改IP地址后攻击网络,在接入交换机开启DHCP Snooping功能后,还需要开启IP报文检查功能,具体配置以ACC1为例。
-
在接入交换机ACC1上开启VLAN10的IP报文检查功能。
这样ACC1从VLAN10收到报文后会将报文与动态绑定表的表项进行匹配,放行匹配的报文,丢弃不匹配的报文。如果不想对整个VLAN收到的报文进行检查,可以只在连接某个终端的接口上开启IP报文检查功能。[ACC1] vlan10 [ACC1-vlan10] ip source check user-bind enable //使能IP报文检查功能 [ACC1-vlan10] quit
业务验证
-
部门内部选两台PC进行ping测试,验证部门内部二层互通是否正常。以部门A为例, PC1和PC2是通过ACC1实现二层互通的。如果PC1和PC2之间互ping测试正常则说明二层互通正常。
<PC1> ping 10.10.10.100 //假设PC2通过DHCP自动获取的IP地址为10.10.10.100PING 10.10.10.100 data bytes, press CTRL_C to breakReply from 10.10.10.100 : bytes=56 Sequence=1 ttl=253 time=62 msReply from 10.10.10.100 : bytes=56 Sequence=2 ttl=253 time=16 ms Reply from 10.10.10.100 : bytes=56 Sequence=3 ttl=253 time=62 msReply from 10.10.10.100 : bytes=56 Sequence=4 ttl=253 time=94 msReply from 10.10.10.100 : bytes=56 Sequence=5 ttl=253 time=63 ms--- 10.10.10.100 ping statistics --- 5 packet(s) transmitted 5 packet(s) received //能Ping通,说明PC1与PC2之间二层互通正常
-
从两个部门内各选一台PC进行ping测试,验证部门之间通过VLANIF实现三层互通是否正常。部门A和部门B之间的用户是通过CORE上的VLANIF实现三层互通的。如果PC1和PC3之间互ping测试正常则说明两个部门之间通过VLANIF实现三层互通正常。ping测试命令与步骤1类似。
-
每个部门各选一台PC进行ping公网地址测试,验证公司内网用户访问Internet是否正常。以部门A为例,一般可以通过在PC1上ping公网网关地址(即与出口路由器对接的运营商设备的IP地址)来验证是否可以访问Internet,如果ping测试正常则说明内网用户访问Internet正常。ping测试命令与步骤1类似。
保存配置
通过命令行配置的数据是临时性的。如果不保存,交换机重启后这些配置都会丢失。
如果要使当前配置在交换机重启后仍然有效,需要将当前配置保存为配置文件。
保存配置。(以CORE举例)
<CORE> save
The current configuration will be written to the device.
Are you sure to continue?[Y/N]y
Now saving the current configuration to the slot 0..
Save the configuration successfully.
1
相关文章:

【分享】小型园区组网场景
小型园区组网图 在小型园区中,S2700&S3700通常部署在网络的接入层,S5700&S6700通常部署在网络的核心,出口路由器一般选用AR系列路由器。 接入交换机与核心交换机通过Eth-Trunk组网保证可靠性。 每个部门业务划分到一个VLAN中&#…...

LeetCode 1267. 统计参与通信的服务器
【LetMeFly】1267.统计参与通信的服务器 力扣题目链接:https://leetcode.cn/problems/count-servers-that-communicate/ 这里有一幅服务器分布图,服务器的位置标识在 m * n 的整数矩阵网格 grid 中,1 表示单元格上有服务器,0 表…...
169. 多数元素(哈希表)
169. 多数元素 给定一个大小为 n 的数组 nums ,返回其中的多数元素。多数元素是指在数组中出现次数 大于 ⌊ n/2 ⌋ 的元素。 你可以假设数组是非空的,并且给定的数组总是存在多数元素。 class Solution { public:int majorityElement(vector<int&…...

微服务集成spring cloud sentinel
目录 1. sentinel使用场景 2. sentinel组成 3. sentinel dashboard搭建 4. sentinel客户端详细使用 4.1 引入依赖 4.2 application.properties增加dashboard注册地址 4.3 手动增加限流配置类 4.4 rest接口及service类 4.5 通过dashboard动态配置限流规则 1. sentinel使…...

2023年最新版Windows环境下|Java8(jdk1.8)安装教程
个人主页:平行线也会相交 欢迎 点赞👍 收藏✨ 留言✉ 加关注💓本文由 平行线也会相交 原创 收录于专栏【JavaSE_primary】 jdk1.8的下载和使用总共分为3个步骤: jdk1.8的下载、jdk1.8的安装、配置环境变量。 目录 一、jdk1.8下载…...
linux -- jdk 的安装
jdk 的安装 jdk包下载 链接: https://pan.baidu.com/s/1wa1TJGtCPKQqeCGDZWaP6g 密码: 8el6 安装及验证 ## jdk包上传次目录 /usr/local/software cd /usr/local/software tar -zxvf /usr/local/software/jdk-8u212-linux-x64.tar.gz -C /usr/local cd /usr/local mv jdk1…...

网络安全—黑客技术(学习笔记)
1.网络安全是什么 网络安全可以基于攻击和防御视角来分类,我们经常听到的 “红队”、“渗透测试” 等就是研究攻击技术,而“蓝队”、“安全运营”、“安全运维”则研究防御技术。 2.网络安全市场 一、是市场需求量高; 二、则是发展相对成熟…...
Java入职第十一天,深入了解静态代理和动态代理(jdk、cglib)
一、代理模式 一个类代表另一个类去完成扩展功能,在主体类的基础上,新增一个代理类,扩展主体类功能,不影响主体,完成额外功能。比如买车票,可以去代理点买,不用去火车站,主要包括静态代理和动态代理两种模式。 代理类中包含了主体类 二、静态代理 无法根据业务扩展,…...
Snappy算法:高速压缩和解压缩技术的顶尖玩家
文章首发地址 Snappy是一种快速压缩和解压缩数据的算法。它是由Google开发的,旨在提供高速的压缩和解压缩速度,同时保持较高的压缩比。 Snappy算法的设计目标是追求速度而不是最高的压缩率。相比于其他压缩算法(如Gzip或LZ77)&am…...

Python中的format()函数详细讲解
注:所以代码皆成功运行,可直接复制运行 一、基本使用 1、Python中的format()函数是一个格式字符串的函数,通过花括号{}识别替换字段,从而完成字符串的格式化。 #format后面放数字、字符串都可以 print("{}喜欢{}岁的{}&qu…...

11. 盛最多水的容器(c++题解)
11. 盛最多水的容器(c题解) 给定一个长度为 n 的整数数组 height 。有 n 条垂线,第 i 条线的两个端点是 (i, 0) 和 (i, height[i]) 。 找出其中的两条线,使得它们与 x 轴共同构成的容器可以容纳最多的水。 返回容器可以储存的最大…...

历史最佳二季度表现后,爱奇艺想为用户提供更多价值
以爱奇艺为首,随着长视频平台相继转变运营思路,走向盈利目标,最早完成蜕变的爱奇艺,已开始迈向下一阶段。 近日,爱奇艺发布了截至6月30日的2023年第二季度财报。除了依然亮眼的内容表现、业绩成果外,爱奇艺…...

HDLBits-Verilog学习记录 | Verilog Language-Basics(2)
文章目录 9.Declaring wires | wire decl10. 7458 chip 9.Declaring wires | wire decl problem:Implement the following circuit. Create two intermediate wires (named anything you want) to connect the AND and OR gates together. Note that the wire that feeds the …...
Ubuntu22.0网络/网卡丢失
Ubuntu22.0开机突然连不上网了,右上角网络图标消失了,设置里网络也没有了“有线”,只剩下VPN了,试了好多种办法,最终终于解决了。 看到有些直接用的下面的两条命令,有解决的,不过我这不行。 s…...
Linux 常用
系统信息 查看CPU信息(型号) cat /proc/cpuinfo | grep name | cut -f2 -d: | uniq -c查看物理CPU个数 cat /proc/cpuinfo | grep "physical id" | sort | uniq | wc -l查看每个物理CPU中core的个数(即核数) cat /proc/cpuinfo | grep "c…...

AWS 提示证书签名过期无法自动更新
如果域名没有通过验证的话,证书的过去是没有办法自动更新的。 验证的方式也非常简单,通过下面的配置,把 CNAME添加到你的域名上面,AWS 就可会自动完成验证了。 当添加完成后,AWS 验证需要的时间大致在 30 分钟到 1 个…...
Git版本管理(01) 简介 基本提交相关命令
1 git简介 Git是一种分布式版本控制工具,用于跟踪文件和代码的变化,协调多个开发者之间的协作,并提供版本控制和代码管理的功能。 官方学习可参考文档-> Git版本控制工具特点总结如下: 分布式版本控制:Git采用分…...
解决 vue项目报错:digital envelope routines::unsupported
出现这个错误是因为 node.js V17版本中最近发布的OpenSSL3.0, 而OpenSSL3.0对允许算法和密钥大小增加了严格的限制,可能会对生态系统造成一些影响. 方法1:运行前$ npm run serve前 先运行 export NODE_OPTIONS--openssl-legacy-provider 方法2…...

【Java基础增强】类加载器和反射
1.类加载器 1.1类加载器【理解】 作用 负责将.class文件(存储的物理文件)加载在到内存中 1.2类加载的过程【理解】 类加载时机 创建类的实例(对象) 调用类的类方法 访问类或者接口的类变量,或者为该类变量赋值 …...
【Java】数据类型变量
【Java】数据类型&变量 文章目录 【Java】数据类型&变量1、字面常量2、数据类型3、变量3.1 整型变量3.1.1 整型变量3.1.2 长短整型变量3.1.3 字节型变量 3.2 浮点型变量3.2.1 双精度浮点型3.2.2 单精度浮点型 3.3 字符型变量3.4 布尔型变量3.5 类型转换3.5.1 自动类型转…...

新能源汽车智慧充电桩管理方案:新能源充电桩散热问题及消防安全监管方案
随着新能源汽车的快速普及,充电桩作为核心配套设施,其安全性与可靠性备受关注。然而,在高温、高负荷运行环境下,充电桩的散热问题与消防安全隐患日益凸显,成为制约行业发展的关键瓶颈。 如何通过智慧化管理手段优化散…...

ElasticSearch搜索引擎之倒排索引及其底层算法
文章目录 一、搜索引擎1、什么是搜索引擎?2、搜索引擎的分类3、常用的搜索引擎4、搜索引擎的特点二、倒排索引1、简介2、为什么倒排索引不用B+树1.创建时间长,文件大。2.其次,树深,IO次数可怕。3.索引可能会失效。4.精准度差。三. 倒排索引四、算法1、Term Index的算法2、 …...
【Go语言基础【13】】函数、闭包、方法
文章目录 零、概述一、函数基础1、函数基础概念2、参数传递机制3、返回值特性3.1. 多返回值3.2. 命名返回值3.3. 错误处理 二、函数类型与高阶函数1. 函数类型定义2. 高阶函数(函数作为参数、返回值) 三、匿名函数与闭包1. 匿名函数(Lambda函…...
Java求职者面试指南:计算机基础与源码原理深度解析
Java求职者面试指南:计算机基础与源码原理深度解析 第一轮提问:基础概念问题 1. 请解释什么是进程和线程的区别? 面试官:进程是程序的一次执行过程,是系统进行资源分配和调度的基本单位;而线程是进程中的…...

【C++进阶篇】智能指针
C内存管理终极指南:智能指针从入门到源码剖析 一. 智能指针1.1 auto_ptr1.2 unique_ptr1.3 shared_ptr1.4 make_shared 二. 原理三. shared_ptr循环引用问题三. 线程安全问题四. 内存泄漏4.1 什么是内存泄漏4.2 危害4.3 避免内存泄漏 五. 最后 一. 智能指针 智能指…...

Git 3天2K星标:Datawhale 的 Happy-LLM 项目介绍(附教程)
引言 在人工智能飞速发展的今天,大语言模型(Large Language Models, LLMs)已成为技术领域的焦点。从智能写作到代码生成,LLM 的应用场景不断扩展,深刻改变了我们的工作和生活方式。然而,理解这些模型的内部…...

MacOS下Homebrew国内镜像加速指南(2025最新国内镜像加速)
macos brew国内镜像加速方法 brew install 加速formula.jws.json下载慢加速 🍺 最新版brew安装慢到怀疑人生?别怕,教你轻松起飞! 最近Homebrew更新至最新版,每次执行 brew 命令时都会自动从官方地址 https://formulae.…...
小木的算法日记-多叉树的递归/层序遍历
🌲 从二叉树到森林:一文彻底搞懂多叉树遍历的艺术 🚀 引言 你好,未来的算法大神! 在数据结构的世界里,“树”无疑是最核心、最迷人的概念之一。我们中的大多数人都是从 二叉树 开始入门的,它…...
智能职业发展系统:AI驱动的职业规划平台技术解析
智能职业发展系统:AI驱动的职业规划平台技术解析 引言:数字时代的职业革命 在当今瞬息万变的就业市场中,传统的职业规划方法已无法满足个人和企业的需求。据统计,全球每年有超过2亿人面临职业转型困境,而企业也因此遭…...

【免费数据】2005-2019年我国272个地级市的旅游竞争力多指标数据(33个指标)
旅游业是一个城市的重要产业构成。旅游竞争力是一个城市竞争力的重要构成部分。一个城市的旅游竞争力反映了其在旅游市场竞争中的比较优势。 今日我们分享的是2005-2019年我国272个地级市的旅游竞争力多指标数据!该数据集源自2025年4月发表于《地理学报》的论文成果…...