草庐IT

一篇文章搞懂华为的ACL

卓应 2023-05-23 原文

第十一章:ACL原理与配置

随着网络的飞速发展,网络安全问题日益突出。访问控制列表 (ACL, Access Control List)

可以通过对网络中报文流的精确识别,与其他技术结合,达到控制网络访问行为、防止网络攻击和提高网络带宽利用率的目的,从而切实保障网络环境的安全性和网络服务质量的可靠性。

11.1 ACL概述

访问控制列表简称为ACL,它使用包过滤技术,在路由器上读取第3层及第4层包头中的信息,如源地址、目的地址、源端口和目的端口等,根据预告定义好的规则对包进行过滤从而达到访问控制的目的。ACL分很多种,不同场合应用不同种类的ACL。

  1. 基本ACL

基本ACL最简单,是通过使用IP包中的源IP地址进行过滤,表号范围2000-2999。

  1. 高级ACL

高级ACL比基本ACL具有更多的匹配项,功能更加强大和细化,可以针对包括协议类型、源地址、目的地址、源端口、目的端口和TCP连接建立等进行过滤,表号范围3000-3999。

  1. 基于时间ACL

ACL的生效时间段可以规定ACL规则在何时生效,比如某个特定时间段或者每周的某个固定时间段。

  1. 自反ACL

通过自反ACL可以实现网络节点的单向访问。

5在访问控制列表的学习中,要特别注意以下两个术语。

①    通配符掩码:一个32比特位的数字字符串,它规定了当一个IP地址与其他的IP地址进行比较时,该IP地址中哪些位应该被忽略。通配符掩码中的”1”表示忽略IP地址中对应的位,而”0”则表示该位必须匹配。两种特殊的通配符掩码是”255.255.255.255”和”0.0.0.0”,前者等价于关键字”any”,而后者等价于关键字”host”。

②    Inbound和Outbound:当在接口上应用访问控制列表时,用户要指明访问控制列表是应用于流入数据,还是流出数据。

11.2 实验一:基本ACL

1、实验需求

  •     掌握ACL的配置方法
  •     掌握ACL在接口下的应用方法
  •     掌握流量过滤的基本方式

2、实验拓扑

实验拓扑如图11-1所示

图11-1 基本ACL

实验免费链接:【实战课】华为HCIA-Datacom认证实验教学-学习视频教程-腾讯课堂

  1. 实验步骤

(1)PC机的IP地址配置

PC1的配置,在ipv4下选择静态配置,输入对应的ip地址子网掩码和网关,然后点击应用。PC2、sever同理PC1的配置如图11-2所示:

  图11-2在PC1上手动添加IP地址

PC2的配置如图11-3所示:

                                              图11-3在PC2上手动添加IP地址

(2)在交换机LSW1上创建VLAN10和20,把g0/0/1划分到vlan10,把g0/0/2划分到vlan20,把g0/0/3设置成trunk。

<Huawei>system-view

[Huawei]sysname LSW1

[LSW1]undo info-center enable

[LSW1]vlan batch 10 20

[LSW1]interface g0/0/1

[LSW1-GigabitEthernet0/0/1]port link-type access

[LSW1-GigabitEthernet0/0/1]port default vlan 10

[LSW1-GigabitEthernet0/0/1]quit

[LSW1]interface g0/0/2

[LSW1-GigabitEthernet0/0/2]port link-type access

[LSW1-GigabitEthernet0/0/2]port default vlan 20

[LSW1-GigabitEthernet0/0/2]quit

[LSW1]interface g0/0/3

[LSW1-GigabitEthernet0/0/3]port link-type trunk

[LSW1-GigabitEthernet0/0/3]port trunk allow-pass vlan 10 20

[LSW1-GigabitEthernet0/0/3]quit

(3)如图11-1所示,在路由器上配置IP地址,并配置单臂路由让PC1和PC2可以相互访问R1的配置

<Huawei>system-view

[Huawei]undo info-center enable

[Huawei]sysname R1

[R1]interface g0/0/1

[R1-GigabitEthernet0/0/1]undo shutdown

[R1-GigabitEthernet0/0/1]quit

[R1]interface g0/0/1.10

[R1-GigabitEthernet0/0/1.10]dot1q termination vid 10

[R1-GigabitEthernet0/0/1.10]ip address 192.168.10.254 24

[R1-GigabitEthernet0/0/1.10]arp broadcast enable

[R1-GigabitEthernet0/0/1.10]quit

[R1]interface g0/0/1.20

[R1-GigabitEthernet0/0/1.20]dot1q termination vid 20

[R1-GigabitEthernet0/0/1.20]ip address 192.168.20.254 24

[R1-GigabitEthernet0/0/1.20]arp broadcast enable

[R1-GigabitEthernet0/0/1.20]quit

[R1]interface g0/0/0

[R1-GigabitEthernet0/0/0]ip address 10.1.1.254 24

[R1-GigabitEthernet0/0/0]undo shutdown

[R1-GigabitEthernet0/0/0]quit

(4)Server的配置如图11-4所示:

                                             图11-4在server上手动添加IP地址

(5)测试PC1是否可以访问server,结果如图11-5所示:

                           图11-5 PC1上显示的ping程序测试信息

通过以上输出可以看到PC1能访问server

(6)测试PC2是否可以访问server,测试结果如图11-6所示:

                       图11-6 PC2上显示的ping程序测试信息

通过以上输出可以看到PC2也可以访问server

(7)在R1上配置基本的ACL

[R1]acl 2000  // 创建ACL编号为2000

[R1-acl-basic-2000]rule 10 deny source 192.168.20.0 0.0.0.255 //拒绝192.168.20.0网段

[R1-acl-basic-2000]quit

[R1]interface g0/0/1

[R1-GigabitEthernet0/0/1]traffic-filter inbound acl 2000 //在g0/0/口的入方向配置流量过滤,当匹配到acl2000流量则执行相应的过滤掉动作

[R1-GigabitEthernet0/0/1]quit

【技术要点】

基本acl配置过程及参数详解

1、创建基本ACL

[Huawei] acl [ number ] acl-number [ match-order config ]

acl-number:指定访问控制列表的编号。

match-order config:指定ACL规则的匹配顺序,config表示配置顺序。

2、配置基本ACL规则

[Huawei-acl-basic-2000] rule [ rule-id ] { deny | permit } [ source { source-address source-wildcard | any } | time-range time-name ]

rule-id:指定ACL的规则ID。

deny:指定拒绝符合条件的报文。

permit:指定允许符合条件的报文。

source { source-address source-wildcard | any }:指定ACL规则匹配报文的源地址信息。如果不配置,表示报文的任何源地址都匹配。其中:

source-address:指定报文的源地址。

source-wildcard:指定源地址通配符。

any:表示报文的任意源地址。相当于source-address为0.0.0.0或者source-wildcard为255.255.255.255。

time-range time-name:指定ACL规则生效的时间段。其中,time-name表示ACL规则生效时间段名称。如果不指定时间段,表示任何时间都生效。

3、traffic-filter命令用来在接口上配置基于ACL对报文进行过滤。Inbound为针对接口入方向进行流量过滤,outbound为针对接口出方向流量进行过滤。

在接口下执行本命令,设备将会过滤匹配ACL规则的报文:

若报文匹配的规则的动作为deny,则直接丢掉该报文。

若报文匹配的规则的动作为permit,则允许该报文通过。

若报文没有匹配任何一条规则,则允许该报文通过。

4、实验调试

(1)测试PC1是否可以访问服务器,结果如图11-7所示:

                             图11-7 PC1上显示的ping程序测试信息

通过以上输出可以看到PC1不可以访问server

(2)测试PC2是否可以访问服务器,结果如图11-8所示:

                                             图11-8 PC2上显示的ping程序测试信息

通过以上输出可以看到PC2可以访问server1,实验结束

【技术要点】

华为ACL总结:如果配置在接口上,则默认规则为允许,如果配置在其他地方,则默认规则为拒绝。

思考:如果只拒绝PC2访问服务器,基本的ACL应该怎么配置?

11.3 实验二:高级ACL

  1. 实验需求
  • 掌握高级ACL的配置方法
  • 掌握高级ACL在接口下的应用方法
  • 掌握流量过滤的基本方式
  1. 实验拓扑

实验拓扑如图11-9所示:

图11-9高级ACL

  1. 实验步骤

(1)配置PC机的IP地址

PC1的配置,在ipv4下选择静态配置,输入对应的ip地址子网掩码和网关,然后点击应用。PC2同理

PC1的配置如图11-10所示:

  图11-10在PC1上手动添加IP地址

PC2的配置如图11-11所示:

                                                 图11-11在PC2上手动添加IP地址

(2)配置路由器R1的IP地址

<Huawei>system-view

[R1]undo info-center enable

[R1]interface g0/0/0

[R1-GigabitEthernet0/0/0]ip address 192.168.10.254 24

[R1-GigabitEthernet0/0/0]undo shutdown

[R1-GigabitEthernet0/0/0]quit

[R1]interface g0/0/1

[R1-GigabitEthernet0/0/1]ip address 192.168.20.254 24

[R1-GigabitEthernet0/0/1]undo shutdown

[R1-GigabitEthernet0/0/1]quit

(2) 测试:PC1访问PC2,结果如图11-12所示:

                           图11-12  PC1上显示的ping程序测试信息

通过以上输出,可以看到PC1可以访问PC2

(3)配置高级ACL()

[R1]acl 3000  //创建ACL编号为3000

[R1-acl-adv-3000]rule 10 deny ip source 192.168.10.0 0.0.0.255 destination 192.168.20.0 0.0.0.255  //拒绝192.168.10.0网段去访问192.168.20.0网段

[R1-acl-adv-3000]quit

[R1]interface g0/0/0

[R1-GigabitEthernet0/0/0]traffic-filter inbound acl 3000

[R1-GigabitEthernet0/0/0]quit

【技术要点】

高级acl配置过程及参数详解

1、创建高级ACL

[Huawei] acl [ number ] acl-number [ match-order config ]

acl-number:指定访问控制列表的编号。

match-order config:指定ACL规则的匹配顺序,config表示配置顺序。

2、配置高级ACL的规则

当参数protocol为IP时:

rule [ rule-id ] { deny | permit } ip [ destination { destination-address destination-wildcard | any } | source { source-address source-wildcard | any } | time-range time-name | [ dscp dscp | [ tos tos | precedence precedence ] ] ]

ip :指定ACL规则匹配报文的协议类型为IP。

destination { destination-address destination-wildcard | any }:指定ACL规则匹配报文的目的地址信息。如果不配置,表示报文的任何目的地址都匹配。

dscp dscp:指定ACL规则匹配报文时,区分服务代码点(Differentiated Services Code Point),取值为:0~63。

tos tos:指定ACL规则匹配报文时,依据服务类型字段进行过滤,取值为:0~15。

precedence precedence:指定ACL规则匹配报文时,依据优先级字段进行过滤。precedence表示优先级字段值,取值为:0~7。

当参数protocol为TCP时:

rule [ rule-id ] { deny | permit } { protocol-number | tcp } [ destination { destination-address destination-wildcard | any } | destination-port { eq port | gt port | lt port | range port-start port-end } | source { source-address source-wildcard | any } | source-port { eq port | gt port | lt port | range port-start port-end } | tcp-flag { ack | fin | syn } * | time-range time-name ] *

protocol-number | tcp:指定ACL规则匹配报文的协议类型为TCP。可以采用数值6表示指定TCP协议。

destination-port { eq port | gt port | lt port | range port-start port-end}:指定ACL规则匹配报文的UDP或者TCP报文的目的端口,仅在报文协议是TCP或者UDP时有效。如果不指定,表示TCP/UDP报文的任何目的端口都匹配。其中:

eq port:指定等于目的端口;

gt port:指定大于目的端口;

lt port:指定小于目的端口;

range port-start port-end:指定源端口的范围。

tcp-flag:指定ACL规则匹配报文的TCP报文头中SYN Flag。

4、实验调试

(1)测试PC1是否可以访问PC2,结果如图11-13所示:

                                  图11-13 PC1上显示的ping程序测试信息

通过以上输出我们可以看到PC1和PC2不能相互访问了。

(2)为了减少带宽浪费,在R1上作如下配置:

[R1]acl 3001

[R1-acl-adv-3001]rule 10 deny ip source 192.168.20.0 0.0.0.255 destination 192.168.10.0 0.0.0.255

[R1-acl-adv-3001]quit

[R1]interface g0/0/1

[R1-GigabitEthernet0/0/1]traffic-filter inbound acl 3001

[R1-GigabitEthernet0/0/1]quit

分析:PC2访问PC1的流量到达了PC1,PC1的回应包到达了R1的g0/0/0然后丢弃,这样会浪费带宽,所以要加上ACL 3001,这样PC2访问PC1的流量在R1的g0/0/1上就丢弃了。

11.4 实验三:基于时间ACL

  1. 实验需求

①    掌握高级ACL的配置方法

②    掌握高级ACL在接口下的应用方法

③    掌握流量过滤的基本方式

  1. 实验拓扑

实验拓扑如图11-14所示:

                                                   图11-14 基于时间的ACL

  1. 实验步骤

(1):配置IP地址

PC1的配置在ipv4下选择静态配置,输入对应的ip地址以及子网掩码,然后点击应用。如图11-15所示:

  图11-15在PC1上手动添加IP地址

R1的配置

<Huawei>system-view

[Huawei]undo info-center enable

[Huawei]sysname R1

[R1]interface g0/0/0

[R1-GigabitEthernet0/0/0]ip address 192.168.1.254 24

[R1-GigabitEthernet0/0/0]undo shutdown

[R1-GigabitEthernet0/0/0]quit

[R1]interface g0/0/1

[R1-GigabitEthernet0/0/1]ip address 100.1.1.1 24

[R1-GigabitEthernet0/0/1]undo shutdown

[R1-GigabitEthernet0/0/1]quit

R2的配置

<Huawei>system-view

[Huawei]undo info-center enable

[Huawei]sysname R2

[R2]interface g0/0/0

[R2-GigabitEthernet0/0/0]ip address 100.1.1.2 24

[R2-GigabitEthernet0/0/0]undo shutdown

[R2-GigabitEthernet0/0/0]quit

[R2]ip route-static 192.168.1.0 24 100.1.1.1   //配置去PC1所在网段的静态路由

(2)测试PC1是否可以访问R2,结果如图11-16所示:

                                 图11-16 PC1上显示的ping程序测试信息

通过以上输出,可以看到PC1可以访问 R2

(3):配置基于时间的ACL

[R1]time-range hw 8:00 to 17:00  working-day//配置时间段名字为‘hw’,设定时间为作日的早上八点到下午五点

[R1]acl 3000 

[R1-acl-adv-3000]rule 10 permit ip source 192.168.1.0 0.0.0.255 destination 100.1.1.0 0.0.0.255 time-range hw

//在acl3000中调用名字为hw的时间段,该规则表示的意义为匹配源ip为192.168.1.0/24目的ip为100.1.1.0/24在每个工作日早上八点到下午五点的流量,执行动作为允许

[R1-acl-adv-3000]rule 20 deny ip   //华为的ACL默认为允许所有,把以要设置这一条。

[R1]interface g0/0/0

[R1-GigabitEthernet0/0/0]traffic-filter inbound acl 3000   //在接口下调用

[R1-GigabitEthernet0/0/0]quit

  1. 实验调试

(1)查看路由器时间

[R1]display clock

2022-04-09 12:38:29

Saturday

Time Zone(China-Standard-Time) : UTC-08:00

通过以上输出, 可以看到设备显示为周六

(2)看PC1是否可以访问R2,结果如图11-17所示:

                                             图11-17PC1上显示的ping程序测试信息

通过以上输出可以看到,PC1不能访问R2,因为星期六不在time-range hw范围内。

(3)修改R1的时间

<R1>clock datetime 12:00:00 2022-04-08

(4)测试PC1是否可以访问R2,结果如图11-18所示:

                                     图11-18PC1上显示的ping程序测试信息

通过以上输出,我们可以看到PC1可以访问PC2,因为2022年4月8日12:00属于time-range的范围内。

11.5 实验四:使用基本ACL限制telnet登录

  1. 实验目的
  • 配置路由器的vty密码;
  • Tetnet程序的使用
  • 使用基本ACL限制telnet登录

  1. 实验拓扑

实验拓扑如图11-19所示:

图11-19使用基本ACL限制telnet登录

  1. 实验步骤

(1)IP地址的配置

R1的配置

<Huawei>system-view

[Huawei]undo info-center enable

[Huawei]sysname R1

[R1]interface g0/0/1

[R1-GigabitEthernet0/0/1]ip address 192.168.1.254 24

[R1-GigabitEthernet0/0/1]undo shutdown

[R1-GigabitEthernet0/0/1]quit

[R1]interface g0/0/0

[R1-GigabitEthernet0/0/0]ip address 192.168.2.254 24

[R1-GigabitEthernet0/0/0]undo shutdown

[R1-GigabitEthernet0/0/0]quit

R2的配置

<Huawei>system-view

[Huawei]undo info-center enable

[Huawei]sysname R2

[R2]interface g0/0/0

[R2-GigabitEthernet0/0/0]ip address 192.168.1.1 24

[R2-GigabitEthernet0/0/0]undo shutdown

[R2-GigabitEthernet0/0/0]quit

R3的配置

<Huawei>system-view

[Huawei]undo info-center enable

[Huawei]sysname R3

[R3]interface g0/0/1

[R3-GigabitEthernet0/0/1]ip address 192.168.2.1 24

[R3-GigabitEthernet0/0/1]undo shutdown

[R3-GigabitEthernet0/0/1]quit

(2)设置telnet

[R1]user-interface vty 0 4  //进入VTY界面,同时允许5条线路

[R1-ui-vty0-4]authentication-mode password  // 认证模式为密码认证

Please configure the login password (maximum length 16):1234  //密码为1234

[R1-ui-vty0-4]user privilege level 15  //设置用户权限为15

[R1-ui-vty0-4]quit

(3)基本ACL配置

[R1]acl 2000

[R1-acl-basic-2000]rule 10 deny source 192.168.2.1 0.0.0.0

[R1-acl-basic-2000]rule 20 permit  //因为不是应用在接口,所以ACL拒绝所有

[R1]user-interface vty 0 4

[R1-ui-vty0-4]acl 2000 inbound   //在VTY下调用 ACL 2000

[R1-ui-vty0-4]quit

  1. 实验调试

(1)查看R2是否可以telnet R1

<R2>telnet 192.168.1.254

  Press CTRL_] to quit telnet mode

  Trying 192.168.1.254 ...

  Connected to 192.168.1.254 ...

Login authentication

Password:

<R1>

通过以上输出,可以看到R2可以telnet R1。

(3)查看R3是否可以telnet R1

<R3>telnet 192.168.2.254

  Press CTRL_] to quit telnet mode

  Trying 192.168.2.254 ...

通过以上输出可以看到R3不能telnetR1,验证了实验的正确性。

11.6 实验五:自反ACL

  1. 实验需求

① 掌握高级自反ACL的配置方法

② 掌握自反ACL在接口下的应用方法

③掌握流量过滤的基本方式

  1. 实验拓扑

实验拓扑如图11-20所示:

图11-20自反ACL

  1. 实验步骤

(1)IP地址的配置

PC1的配置在ipv4下选择静态配置,输入对应的ip地址子网掩码和网关,然后点击应用。如图11-21所示:

             图11-21在PC1上手动添加IP地址

PC2的配置如图11-22所示:

  图11-22在PC2上手动添加IP地址

R1的配置

<Huawei>system-view

[Huawei]undo info-center enable

[Huawei]sysname R1

[R1]interface g0/0/0

[R1-GigabitEthernet0/0/0]ip address 192.168.1.254 24

[R1-GigabitEthernet0/0/0]undo shutdown

[R1-GigabitEthernet0/0/0]quit

[R1]interface g0/0/1

[R1-GigabitEthernet0/0/1]ip address 192.168.2.254 24

[R1-GigabitEthernet0/0/1]undo shutdown

[R1-GigabitEthernet0/0/1]quit

(2)测试PC1和PC2的连通性

PC1访问PC2,结果如图11-23所示:

                             图11-23PC1上显示的ping程序测试信息 

通过以上输出可以看到PC1可以访问PC2。

PC2访问PC1,结果如图11-24所示:

                                图11-24PC2上显示的ping程序测试信息 

通过以上输出可以看到PC2可以访问PC1。

(3)使用高级ACL实现单向访问控制

[R1]acl 3000

[R1-acl-adv-3000]rule 10 permit tcp source 192.168.2.0 0.0.0.255 destination 192.168.1.0 0.0.0.255 tcp-flag syn ack  //允许员工办公室到总裁办公室的syn+ack报文通过,即允许对总裁办公室发起的TCP连接进行回应

[R1-acl-adv-3000]rule 20 deny tcp source 192.168.2.0 0.0.0.255 destination 192.168.1.0 0.0.0.255 tcp-flag syn  //拒绝员工办公室到总裁办公室的syn请求报文通过,防止员工办公室主动发起TCP连接

[R1-acl-adv-3000]rule 30 deny icmp source 192.168.2.0 0.0.0.255 destination 192.168.1.0 0.0.0.255 icmp-type echo  //拒绝员工办公室到总裁办公室的echo请求报文通过,防止员工办公室主动发起ping连通性测试。

[R1]interface g0/0/1

[R1-GigabitEthernet0/0/1]traffic-filter inbound acl 3000

[R1-GigabitEthernet0/0/1]quit

  1. 实验调试

(1)测试PC1是否可以访问PC2,结果如图11-25所示:

                                     图11-25 PC1上显示的ping程序测试信息 

通过以上输出,可以看到PC1可以访问PC2。

(2)测试PC2是否可以访问PC1,结果如图11-26所示:

                                  图11-26PC2上显示的ping程序测试信息 

通过以上输出可以看到PC2不能主动访问PC1,达到实验目的,实验结束。

11.7 ACL命令汇总

同上表11-1列出了本章出现的命令

                                                                    表11-1 ACL命令汇总

命令

作用

acl 2000

创建ACL2000

rule deny source 192.168.1.0  0.0.0.255

拒绝192.168.1.0这个网段

traffic-filter inbound acl 2000

在接口上配置基于ACL对报文进行过滤。

display acl

查看ACL的配置信息

time-range

定义时间

display time-range

查看时间段信息

本文出自作者的《华为认证HCIA-datacom认证实验指南》

有关一篇文章搞懂华为的ACL的更多相关文章

  1. 使用 ACL 调用 upload_file 时出现 Ruby S3 "Access Denied"错误 - 2

    我正在尝试编写一个将文件上传到AWS并公开该文件的Ruby脚本。我做了以下事情:s3=Aws::S3::Resource.new(credentials:Aws::Credentials.new(KEY,SECRET),region:'us-west-2')obj=s3.bucket('stg-db').object('key')obj.upload_file(filename)这似乎工作正常,除了该文件不是公开可用的,而且我无法获得它的公共(public)URL。但是当我登录到S3时,我可以正常查看我的文件。为了使其公开可用,我将最后一行更改为obj.upload_file(file

  2. 华为OD机试用Python实现 -【明明的随机数】 2023Q1A - 2

    华为OD机试题本篇题目:明明的随机数题目输入描述输出描述:示例1输入输出说明代码编写思路最近更新的博客华为od2023|什么是华为od,od薪资待遇,od机试题清单华为OD机试真题大全,用Python解华为机试题|机试宝典【华为OD机试】全流程解析+经验分享,题型分享,防作弊指南华为o

  3. 华为常用命令 - 2

    system-view进入系统视图quit退到系统视图sysname交换机命名vlan20创建vlan(进入vlan20)displayvlan显示vlanundovlan20删除vlan20displayvlan20显示vlan里的端口20Interfacee1/0/24进入端口24portlink-typeaccessvlan20把当前端口放入vlan20undoporte1/0/10删除当前VLAN端口10displaycurrent-configuration显示当前配置02配置交换机支持TELNETinterfacevlan1进入VLAN1ipaddress192.168.3.100

  4. 华为OD机试真题 C++ 实现【带传送阵的矩阵游离】【2023 Q2 | 200分】 - 2

            所有题目均有五种语言实现。C实现目录、C++实现目录、Python实现目录、Java实现目录、JavaScript实现目录题目n行m列的矩阵,每个位置上有一个元素你可以上下左右行走,代价是前后两个位置元素值差的绝对值.另外,你最多可以使用一次传送阵(只能从一个数跳到另外一个相同的数)求从走上角走到右下角最少需要多少时间。输入描述:第一行两个整数n,m,分别代表矩阵的行和列。后面n行,每行m个整数,分别代表矩阵中的元素。输出描述:一个整数,表示最少需要多少时间。

  5. 西安华为OD面试体验 - 2

    西安华为OD面试体验开始投简历技术面试进展工作进展开始投简历去年一整年一直在考研和工作之间纠结,感觉自己的状态好像当时的疫情一样差劲。之前刚毕业的时候投了个大厂的简历,结果一面写算法的时候太拉跨了,虽然知道时dfs但是代码熟练度不够,放在平时给足时间自己可以调试通过,但是熟练度不够那面试当时就写不出来被刷了。说真的算法学到后期我感觉最重要的是熟练度和背板子(对于我这种普通玩家来说),面试题如果一上来短时间内想不出思路就完蛋了。然后由于当时找的工作不是很理想就又想考研了。但是考研是有风险的,我自我感觉自己可能冲不上那个学校,而找工作一个没成可以继续找嘛。本着抱着试试看的态度在boss上投了简历,

  6. ruby-on-rails - rails delete_if 使用哈希忽略当前文章(中间人) - 2

    我为你们准备了一个简单的。我想要一个特色内容部分,其中排除了当前文章所以这可以通过delete_if使用MiddlemanBlog:但是我使用的是中间人代理,所以我无法访问current_article方法...我有一个YAML结构,其中包含以下模拟数据(以及其他数据),文件夹设置如下:data>site>caseStudy>RANDOM-ID423536.yaml(由CMS生成)在每个yaml文件中,您会发现如下内容::id:2k1YccJrQsKE2siSO6o6ac:title:Heyplace我的config.rb看起来像这样data.site.caseStudy.eachdo

  7. 华为ensp详细安装包、安装教程及所遇问题 - 2

    目录一、安装包链接二、安装详细步骤1.安装Wireshark和WinPcap2.安装OracleVMVirtualBox3.安装ensp三、安装后注册四、启动路由器出现40错误怎么解决一、安装包链接二、安装详细步骤链接:https://pan.baidu.com/s/1QbUUYMOMIV2oeIKHWP1SpA?pwd=xftx提取码:xftx1.安装Wireshark和WinPcap找到Wireshark安装包所在文件夹,双击它,按照以下步骤安装。2.安装OracleVMVirtualBox找到OracleVMVirtualBox安装包所在文件夹,双击它,按照以下步骤安装。注:可自定义安装

  8. 中润光学在科创板IPO过会:拟募资4亿元,张平华为实际控制人 - 2

    近日,上海证券交易所科创板披露的信息显示,嘉兴中润光学科技股份有限公司(下称“中润光学”)获得上市委会议通过。这意味着,中润光学的上市之路获得实质性进展,接下来将提交注册。据贝多财经了解,中润光学的招股书于2022年5月20日获得科创板受理,5个月后便获得上市委会议通过,进度不可谓不快。本次冲刺科创板上市,中润光学拟募资4.05亿元,计划用于高端光学镜头智能制造项目、高端光学镜头研发中心升级项目等。天眼查信息显示,中润光学成立于2012年8月,是一家以从事非金属矿物制品业为主的企业。当前,该公司的注册资本为6600万元,法定代表人为张平华。穿透股权可知,张平华也是该公司的实际控制人。据招股书介

  9. 阿里云,华为云,腾讯云三大公有云厂商,香港地区主机测评 - 2

    三大公有云厂商,香港地区主机测评一、ping时延比对(厦门电信本地测试):Ping时延测试腾讯云阿里云华为云延迟率最低时延44ms,最高72ms,平均46ms47.242段:最低时延59ms,最高204ms,平均107ms最低时延45ms,最高93ms,平均47ms丢包率丢包率小有的ip段丢包率较大每个段都会有概率丢包阿里云:47.242段:最低时延59ms,最高204ms,平均107ms,有的ip段丢包率较大8.210段:最低时延64ms,最高232ms,平均119ms,丢包率较好腾讯云:最低时延44ms,最高72ms,平均46ms,丢包率小华为云:最低时延45ms,最高93ms,平均47m

  10. ruby - 在 Middleman 中移动博客文章位置 - 2

    我正在为我的网站使用MiddlemanBloggem,但默认情况下,博客文章似乎需要位于/source中,这在查看vim中的树时并不是特别好并尝试在其中找到其他文件之一(例如模板)。通过查看文档,我看不出是否有任何方法可以移动博客文章,以便将它们存储在其他地方,例如blog_articles文件夹或类似文件夹。这可能吗? 最佳答案 将以下内容放入您的config.rb文件中。activate:blogdo|blog|blog.permalink=":year-:month-:day-:title.html"blog.sources=

随机推荐