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

【分享】小型园区组网场景

小型园区组网图

 

图片

  • 在小型园区中,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的方法。

  1. 配置管理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
    
  2. 将管理接口加入到管理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
    
  3. 配置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
    
  4. 在维护终端上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

配置接入层交换机

  1. 以接入交换机ACC1为例,创建ACC1的业务VLAN 10。

    <HUAWEI> system-view 
    [HUAWEI] sysname ACC1              //修改设备名称为ACC1
    [ACC1] vlan batch 10                //批量创建VLAN
    
  2. 配置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
    
  3. 配置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。

  4. 配置BPDU保护功能,加强网络的稳定性。

    [ACC1] stp bpdu-protection
    

配置核心层交换机

  1. 批量创建CORE与ACC1、ACC2以及园区出口路由器互通的VLAN。

    <HUAWEI> system-view 
    [HUAWEI] sysname CORE                            //修改设备名称为CORE
    [CORE] vlan batch 10 20 100                      //批量创建VLAN
    
  2. 配置下行接口和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
    
  3. 配置上行接口和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
    
  4. 完成接口和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. 创建全局地址池,配置出口网关、租期(采用缺省值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
    
  2. 配置部门A的用户从全局地址池获取IP地址。

    [CORE] interface vlanif 10
    [CORE-Vlanif10] dhcp select global      //配置部门A的用户从全局地址池获取IP地址     
    [CORE-Vlanif10] quit
    
  3. 使用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

以上两种方法选择一种进行配置,终端电脑刚开机获取地址速度慢的问题就可以有效解决。

 

配置核心交换机路由

  1. 在CORE上配置一条到园区出口网关的缺省静态路由,使内网数据可以发到出口路由器。

    [CORE] ip route-static 0.0.0.0 0 10.10.100.2
    
  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,这些参数在申请宽带的时候由运营商提供,实际网络中请以运营商提供的数据为准。

  1. 配置出口路由器内网接口和公网接口的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
    
  2. 配置允许上网的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
    
  3. 在连接公网的接口配置NAT转换实现内网用户访问Internet。

    [Router] interface GigabitEthernet 0/0/1
    [Router-GigabitEthernet0/0/1] nat outbound 2000
    
  4. 配置到内网的明细路由和到公网的静态缺省路由。

    [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
    
  5. 配置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的配置过程。

  1. 在接入交换机ACC1上开启DHCP Snooping功能。

    <ACC1> system-view
    [ACC1] dhcp enable  //使能DHCP功能
    [ACC1] dhcp snooping enable //使能DHCP Snooping功能
    
  2. 在连接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
    
  3. 在连接终端的接口上使能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为例。

  4. 在接入交换机ACC1上开启VLAN10的IP报文检查功能。

    [ACC1] vlan10
    [ACC1-vlan10] ip source check user-bind enable //使能IP报文检查功能
    [ACC1-vlan10] quit
    
    这样ACC1从VLAN10收到报文后会将报文与动态绑定表的表项进行匹配,放行匹配的报文,丢弃不匹配的报文。如果不想对整个VLAN收到的报文进行检查,可以只在连接某个终端的接口上开启IP报文检查功能。

业务验证

  1. 部门内部选两台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之间二层互通正常
    
  2. 从两个部门内各选一台PC进行ping测试,验证部门之间通过VLANIF实现三层互通是否正常。部门A和部门B之间的用户是通过CORE上的VLANIF实现三层互通的。如果PC1和PC3之间互ping测试正常则说明两个部门之间通过VLANIF实现三层互通正常。ping测试命令与步骤1类似。

  3. 每个部门各选一台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

相关文章:

【分享】小型园区组网场景

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

LeetCode 1267. 统计参与通信的服务器

【LetMeFly】1267.统计参与通信的服务器 力扣题目链接&#xff1a;https://leetcode.cn/problems/count-servers-that-communicate/ 这里有一幅服务器分布图&#xff0c;服务器的位置标识在 m * n 的整数矩阵网格 grid 中&#xff0c;1 表示单元格上有服务器&#xff0c;0 表…...

169. 多数元素(哈希表)

169. 多数元素 给定一个大小为 n 的数组 nums &#xff0c;返回其中的多数元素。多数元素是指在数组中出现次数 大于 ⌊ n/2 ⌋ 的元素。 你可以假设数组是非空的&#xff0c;并且给定的数组总是存在多数元素。 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)安装教程

个人主页&#xff1a;平行线也会相交 欢迎 点赞&#x1f44d; 收藏✨ 留言✉ 加关注&#x1f493;本文由 平行线也会相交 原创 收录于专栏【JavaSE_primary】 jdk1.8的下载和使用总共分为3个步骤&#xff1a; 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.网络安全是什么 网络安全可以基于攻击和防御视角来分类&#xff0c;我们经常听到的 “红队”、“渗透测试” 等就是研究攻击技术&#xff0c;而“蓝队”、“安全运营”、“安全运维”则研究防御技术。 2.网络安全市场 一、是市场需求量高&#xff1b; 二、则是发展相对成熟…...

Java入职第十一天,深入了解静态代理和动态代理(jdk、cglib)

一、代理模式 一个类代表另一个类去完成扩展功能,在主体类的基础上,新增一个代理类,扩展主体类功能,不影响主体,完成额外功能。比如买车票,可以去代理点买,不用去火车站,主要包括静态代理和动态代理两种模式。 代理类中包含了主体类 二、静态代理 无法根据业务扩展,…...

Snappy算法:高速压缩和解压缩技术的顶尖玩家

文章首发地址 Snappy是一种快速压缩和解压缩数据的算法。它是由Google开发的&#xff0c;旨在提供高速的压缩和解压缩速度&#xff0c;同时保持较高的压缩比。 Snappy算法的设计目标是追求速度而不是最高的压缩率。相比于其他压缩算法&#xff08;如Gzip或LZ77&#xff09;&am…...

Python中的format()函数详细讲解

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

11. 盛最多水的容器(c++题解)

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

历史最佳二季度表现后,爱奇艺想为用户提供更多价值

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

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开机突然连不上网了&#xff0c;右上角网络图标消失了&#xff0c;设置里网络也没有了“有线”&#xff0c;只剩下VPN了&#xff0c;试了好多种办法&#xff0c;最终终于解决了。 看到有些直接用的下面的两条命令&#xff0c;有解决的&#xff0c;不过我这不行。 s…...

Linux 常用

系统信息 查看CPU信息&#xff08;型号&#xff09; 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 提示证书签名过期无法自动更新

如果域名没有通过验证的话&#xff0c;证书的过去是没有办法自动更新的。 验证的方式也非常简单&#xff0c;通过下面的配置&#xff0c;把 CNAME添加到你的域名上面&#xff0c;AWS 就可会自动完成验证了。 当添加完成后&#xff0c;AWS 验证需要的时间大致在 30 分钟到 1 个…...

Git版本管理(01) 简介 基本提交相关命令

1 git简介 Git是一种分布式版本控制工具&#xff0c;用于跟踪文件和代码的变化&#xff0c;协调多个开发者之间的协作&#xff0c;并提供版本控制和代码管理的功能。 官方学习可参考文档-> Git版本控制工具特点总结如下&#xff1a; 分布式版本控制&#xff1a;Git采用分…...

解决 vue项目报错:digital envelope routines::unsupported

出现这个错误是因为 node.js V17版本中最近发布的OpenSSL3.0, 而OpenSSL3.0对允许算法和密钥大小增加了严格的限制&#xff0c;可能会对生态系统造成一些影响. 方法1&#xff1a;运行前$ npm run serve前 先运行 export NODE_OPTIONS--openssl-legacy-provider 方法2&#xf…...

【Java基础增强】类加载器和反射

1.类加载器 1.1类加载器【理解】 作用 负责将.class文件&#xff08;存储的物理文件&#xff09;加载在到内存中 1.2类加载的过程【理解】 类加载时机 创建类的实例&#xff08;对象&#xff09; 调用类的类方法 访问类或者接口的类变量&#xff0c;或者为该类变量赋值 …...

【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 自动类型转…...

将对透视变换后的图像使用Otsu进行阈值化,来分离黑色和白色像素。这句话中的Otsu是什么意思?

Otsu 是一种自动阈值化方法&#xff0c;用于将图像分割为前景和背景。它通过最小化图像的类内方差或等价地最大化类间方差来选择最佳阈值。这种方法特别适用于图像的二值化处理&#xff0c;能够自动确定一个阈值&#xff0c;将图像中的像素分为黑色和白色两类。 Otsu 方法的原…...

跨链模式:多链互操作架构与性能扩展方案

跨链模式&#xff1a;多链互操作架构与性能扩展方案 ——构建下一代区块链互联网的技术基石 一、跨链架构的核心范式演进 1. 分层协议栈&#xff1a;模块化解耦设计 现代跨链系统采用分层协议栈实现灵活扩展&#xff08;H2Cross架构&#xff09;&#xff1a; 适配层&#xf…...

九天毕昇深度学习平台 | 如何安装库?

pip install 库名 -i https://pypi.tuna.tsinghua.edu.cn/simple --user 举个例子&#xff1a; 报错 ModuleNotFoundError: No module named torch 那么我需要安装 torch pip install torch -i https://pypi.tuna.tsinghua.edu.cn/simple --user pip install 库名&#x…...

Linux C语言网络编程详细入门教程:如何一步步实现TCP服务端与客户端通信

文章目录 Linux C语言网络编程详细入门教程&#xff1a;如何一步步实现TCP服务端与客户端通信前言一、网络通信基础概念二、服务端与客户端的完整流程图解三、每一步的详细讲解和代码示例1. 创建Socket&#xff08;服务端和客户端都要&#xff09;2. 绑定本地地址和端口&#x…...

Java + Spring Boot + Mybatis 实现批量插入

在 Java 中使用 Spring Boot 和 MyBatis 实现批量插入可以通过以下步骤完成。这里提供两种常用方法&#xff1a;使用 MyBatis 的 <foreach> 标签和批处理模式&#xff08;ExecutorType.BATCH&#xff09;。 方法一&#xff1a;使用 XML 的 <foreach> 标签&#xff…...

初探Service服务发现机制

1.Service简介 Service是将运行在一组Pod上的应用程序发布为网络服务的抽象方法。 主要功能&#xff1a;服务发现和负载均衡。 Service类型的包括ClusterIP类型、NodePort类型、LoadBalancer类型、ExternalName类型 2.Endpoints简介 Endpoints是一种Kubernetes资源&#xf…...

协议转换利器,profinet转ethercat网关的两大派系,各有千秋

随着工业以太网的发展&#xff0c;其高效、便捷、协议开放、易于冗余等诸多优点&#xff0c;被越来越多的工业现场所采用。西门子SIMATIC S7-1200/1500系列PLC集成有Profinet接口&#xff0c;具有实时性、开放性&#xff0c;使用TCP/IP和IT标准&#xff0c;符合基于工业以太网的…...

9-Oracle 23 ai Vector Search 特性 知识准备

很多小伙伴是不是参加了 免费认证课程&#xff08;限时至2025/5/15&#xff09; Oracle AI Vector Search 1Z0-184-25考试&#xff0c;都顺利拿到certified了没。 各行各业的AI 大模型的到来&#xff0c;传统的数据库中的SQL还能不能打&#xff0c;结构化和非结构的话数据如何和…...

python打卡第47天

昨天代码中注意力热图的部分顺移至今天 知识点回顾&#xff1a; 热力图 作业&#xff1a;对比不同卷积层热图可视化的结果 def visualize_attention_map(model, test_loader, device, class_names, num_samples3):"""可视化模型的注意力热力图&#xff0c;展示模…...

算法250609 高精度

加法 #include<stdio.h> #include<iostream> #include<string.h> #include<math.h> #include<algorithm> using namespace std; char input1[205]; char input2[205]; int main(){while(scanf("%s%s",input1,input2)!EOF){int a[205]…...