CCNP路由实验之十四 路由器的访问控制ACL

【信息科学与工程学】【通信工程】第八十六篇 通信网络设备及通信网络组网的所有学科知识01 编号001类型网络虚拟化与覆盖技术网络领域数据中心网络子领域大二层网络 / 网络虚拟化核心数学方程式/算法模型核心算法:VXLAN封装与解封装。关键在于24位VNI(虚拟网络标识符)到物理网络的三层IP地址的映射。封装:收到原始以太帧后,为其添加 VXLAN 头部(含 VNI)、外层 UDP 头(目的端口 4789)、外层 IP 头(源 IP 为本地 VTEP IP,目的 IP 为对端 VTEP IP)以及外层 MAC 头。解封装:对端 收到报文后,剥离外层头部,根据内层帧的目的 MAC 和 VNI 进行二 阅读详情


                 CCNP路由实验之十四 路由器的访问控制ACL

ACL(Access Control List,访问控制列表) 是路由器接口的指令列表,用来控制端口进出的数据包。ACL适用于所有的路由协议,如IP、IPX、AppleTalk等。这张表中包含了匹配关系、条件和查询语句,表只是一个框架结构,其目的是为了对某种访问进行控制。访问控制列表使用包过滤技术,在路由器上读取第三层及第四层包头中的信息如源地址,目的地址,源端口,目的端口等,根据预先定义好的规则对包进行过滤,从而达到访问控制的目的,该技术初期仅在路由器上支持,现在已经支持三层交换机和二层交换机。ACL的定义是基于每一种协议的,如果路由器接口配置成为支持三种协议(IP、AppleTalk以及IPX)的情况,那么用户必须定义三种ACL来分别控制这三种协议的数据包。

  1. ACL可以限制网络流量、提高网络性能。例如,ACL可以根据数据包的协议,指定数据包的优先级。

  2. ACL提供对通信流量的控制手段。例如,ACL可以限定或简化路由更新信息的长度,从而限制通过路由器某一网段的通信流量。

  3. ACL是提供网络安全访问的基本手段。ACL允许主机A访问网络,而拒绝主机B访问。

  4. ACL可以在路由器端口处决定哪种类型的通信流量被转发或被阻塞。例如,用户可以允许E-mail通信流量被路由,拒绝所有的Telnet通信流量。

  5. 注意,并不是越多ACL就越好,因为ACL会消耗路由器的资源,影响路由器的性能

ACL执行过程:

ACL执行顺序是从上往下执行的,一个包只要遇到一条匹配的ACL语句后,就会停止后续语句的执行.一个端口执行哪条ACL,这需要按照列表中的条件语句执行顺序来判断。如果一个数据包的报头跟表中某个条件判断语句相匹配,那么后面的语句就将被忽略,不再进行检查。数据包只有在跟第一个判断条件不匹配时,它才被交给ACL中的下一个条件判断语句进行比较。如果匹配(假设为允许发送),则不管是第一条还是最后一条语句,数据都会立即发送到目的接口。如果所有的ACL判断语句都检测完毕,仍没有匹配的语句出口,则该数据包将视为被拒绝而被丢弃。这里要注意,ACL不能对本路由器产生的数据包进行控制。如果设备使用了TCAM,比如aute U3052交换机,那么所有的ACL是并行执行的。举例来说,如果一个端口设定了多条ACL规则,并不是逐条匹配,而是一次执行所有ACL语句。

ACL分类

  1. 标准ACL:使用 1-99 以及1300-1999之间的数字作为表号。标准ACL只检查源地址,可以阻止来自某一网络的所有通信流量,或者允许来自某一特定网络的所有通信流量,或者拒绝某一协议簇(比如IP)的所有通信流量。标准ACL要尽量靠近目的端

  2. 扩展ACL:使用 100 ~ 199以及2000~2699之间的数字作为表号。扩展ACL通过启用基于IP源地址和目的地址、传输层协议(TCP、UDP)和应用端口号的过滤,您也可以使用逻辑运算,例如等于 (eq)、不等于 (neq)、大于 (gt) 和小于 (lt),这样可以提供比标准ACL更细致、更高程度的数据流选择控制。扩展ACL要尽量靠近源端.

  3. 命名ACL是以列表名称代替列表编号来定义ACL,同样包括标准和扩展两种列表。命名ACL还可以被用来从某一特定的ACL中删除个别的控制条目,这样可以使网络管理员方便修改ACL。在使用命名访问控制列表时,要求路由器的IOS在11.2以上的版本,并且不能以同一名字命名多个ACL,不同类型的ACL也不能使用相同的名字。命名ACL中的允许为每一条目添加sequnce number,这样更加简化我们修改和维护(推荐使用)。注意其实

    标准Access-list1 等于标准命名式ip access-liststandard 1 ;扩展Access-list 100等于扩展命名式ip access-list extended 100

  4. 基于时间的ACL:就是在原来的标准访问列表和扩展访问列表中,加入有效的时间范围来更合理有效地控制网络。首先定义一个时间范围,然后在原来的各种访问列表的基础上应用它。要配置这样的时间范围,就要通过time-range来实现的,在time-range中定义好时间,再将此time-range跟在某ACL的条目之后,那么此条目就在该时间范围内起作用,其它时间是不起作用的。在定义time-range时,常用的时间简单分为两种,第一种叫做绝对时间(absolute),即这个时间只生效一次,比如2014年9月1月12:00;另一种时间叫做周期时间(periodic),即这个时间是会多次重复的,比如每周一,或者每周一到周五

  5. 自反(reflexive)访问列表基于上层会话(session)信息过滤数据包,它允许起源于内网(受保护网络)的数据流通过路由器,外网(非信任网络)响应起源于内网的会话的数据流也可以通过路由器,但禁止起源于外网的数据通过路由器进入内网。自反ACL只使用扩展命名IP访问列表定义,不能使用代码或标准命名访问列表定义。 自反ACL和其他ACL相似:包含一系列条件语句,并安装条件语句的顺序逐一检查,一旦某个条件匹配,就不再检查后面的条件。 不同的是,自反ACL只包含临时的条件语句,当一个IP会话发起时,这些临时条件自动建立;当会话结束,这些临时条件将被路由器删除。自反ACL不能直接应用在接口上,需要由另一个扩展命名IP访问列表调用, 另外,自反ACL不包含系统隐含的deny all 语句。自反ACL只能在命名的扩展ACL里定义

  6. 动态ACL:用户必须通过提供用户名和口令,开启一个到路由器的telnet会话。(也可以配置路由器,让其只需要口令,而不需要用户名,但并不推荐这样做)在用户被认证之后,路由器会自动关闭telnet会话,并自动将一个动态访问表项置于某个访问表中,以允许源地址为认证用户工作站地址的报文通过。这样,我们可以在安全边界上配置访问表,只允许那些能够通过用户认证的工作站才能发送向内的报文。这种配置很像网页认证后才能上网的行为。注意当用户验证后,telnet就会被关闭,这样会带来一个问题,网络管理员将不能通过Telnet对路由进行管理,解决的方法是使用rotary命令开启其他Telnet端口,如”rotary 1″命令开启的端口是3001,”rotary 2″开启3002以此类推。

ACL的原则

  1. 每种协议一个 ACL:要控制接口上的流量,必须为接口上启用的每种协议定义相应的 ACL。

  2. 每个方向一个 ACL :一个 ACL 只能控制接口上一个方向的流量。要控制入站流量和出站流量,必须分别定义两个 ACL。

  3. 每个接口一个 ACL :一个 ACL 只能控制一个接口上的流量。

ACL定义规范

  1. ACL的列表号指出了是哪种的ACL。各种协议有自己的ACL,而每个协议的ACL又分为标准ACL和扩展ACL。这些ACL是通过ACL列表号区别的。如果在使用一种访问ACL时用错了列表号,那么就会出错误。

  2. 一个ACL的配置是每协议、每接口、每方向的。路由器的一个接口上每一种协议可以配置进方向和出方向两个ACL。也就是说,如果路由器上启用了IP和IPX两种协议栈,那么路由器的一个接口上可以配置IP、IPX两种协议,每种协议进出两个方向,共四个ACL。

  3. ACL中的通配符,也称作反掩码,它是将原子网的掩码0变成1,1变成0,0为绝对匹配,而1为表示任意,通过这样用来进行地址块匹配的。反掩码可以通过使用255.255.255.255减去正常的子网掩码得到,当相减为0.0.0.0时表示一台主机;例如对于单一网段10.10.10.0/24的反掩码等于255.255.255.255-255.255.255.0=0.0.0.25;对于连续的网段可以先进行汇总再相减,例如192.168.32.0/24、192.168.33.0/24、192.168.34.0/24,此时汇总的网段为192.168.32.0/22,即255.255.255.255-255.255.252.0=0.0.3.255;另外192.168.32.0/24的ACL反转掩码写成0.0.0.254表示过滤网络中的所有偶数地址,如果192.168.34.1/24的ACL返掩码写成0.0.0.254即表示网络中的奇数地址。如果是网段内的特定连续的几台主机如192.168.1.17/24、192.168.1.18/24、192.168.1.19/24即反掩码为192.168.1.17 0.0.0.3.

  4. ACL的语句顺序决定了对数据包的控制顺序。在ACL中各描述语句的放置顺序是很重要的。当路由器决定某一数据包是被转发还是被阻塞时,会按照各项描述语句在ACL中的顺序,根据各描述语句的判断条件,对数据报进行检查,一旦找到了某一匹配条件就结束比较过程,不再检查以后的其他条件判断语句。

  5. 最有限制性的语句应该放在ACL语句的首行。把最有限制性的语句放在ACL语句的首行或者语句中靠近前面的位置上,把“全部允许”或者“全部拒绝”这样的语句放在末行或接近末行,可以防止出现诸如本该拒绝(放过)的数据包被放过(拒绝)的情况。

  6. 对于标准或扩展ACL中新的表项只能被添加到ACL的末尾,这意味着不可能改变已有访问控制列表的功能。如果必须改变,只有先删除已存在的ACL,然后创建一个新ACL,将新ACL应用到相应的接口上。

  7. 在将ACL应用到接口之前,一定要先建立ACL。首先在全局模式下建立ACL,然后把它应用在接口的出方向或进方向上。在接口上应用一个不存在的ACL是不可能的。

  8. 标准和扩展的ACL语句不能被逐条的删除,只能一次性删除整个ACL。命名式ACL可以

  9. 在ACL的最后,有一条隐含的“全部拒绝”的命令,所以在 ACL里一定至少有一条“允许”的语句。

  10. ACL只能过滤穿过路由器的数据流量,不能过滤由本路由器上发出的数据包。

  11. 在路由器选择进行以前,应用在接口进入方向的ACL起作用。

  12. 在路由器选择决定以后,应用在接口离开方向的ACL起作用。

 

 

 

 

实验一、标准ACL

PC1配置:

PC1#conf t

PC1(config)#no ip routing

PC1(config)#int fa0/0

PC1(config-if)#ip add192.168.1.1 255.255.255.0

PC1(config-if)#no sh

PC1(config-if)#exit

PC1(config)#ip default-gateway192.168.1.11

 

PC2配置:

PC2#conf t

PC2(config)#no ip routing

PC2(config)#ip default-gateway192.168.2.22

PC2(config)#int fa0/0

PC2(config-if)#ip add192.168.2.2 255.255.255.0

PC2(config-if)#no sh

PC2(config-if)#exit

 

R1配置:

R1#conf t

R1(config)#int lo 1

R1(config-if)#ip add 1.1.1.1255.255.255.0

R1(config-if)#exit

R1(config)#int fa0/0

R1(config-if)#ip add192.168.12.1 255.255.255.0

R1(config-if)#no sh

R1(config-if)#exit

R1(config)#int fa0/1

R1(config-if)#ip add192.168.1.11 255.255.255.0

R1(config-if)#no sh

R1(config-if)#exit

R1(config)#access-list 1 deny2.2.2.0 0.0.0.255 //创建ACL 1拒绝所有2.2.2.0网段的流量

R1(config)#access-list 1 permitany//设置ACL 1放行其他流量

R1(config)#int fa0/0

R1(config-if)#ip access-group 1in //将ACL 1放在接口的进方向

R1(config-if)#exit

R1(config)#router rip

R1(config-router)#version 2

R1(config-router)#noauto-summary

R1(config-router)#network1.1.1.0

R1(config-router)#net192.168.1.0

R1(config-router)#net192.168.12.0

R1(config-router)#exit

 

 

R2配置:

R2#conf t

R2(config)#int lo 1

R2(config-if)#ip add 2.2.2.2255.255.255.0

R2(config-if)#exit

R2(config)#int fa0/0

R2(config-if)#ip add192.168.12.2 255.255.255.0

R2(config-if)#no sh

R2(config-if)#exit

R2(config)#int fa0/1

R2(config-if)#ip add192.168.2.22 255.255.255.0

R2(config-if)#no sh

R2(config-if)#exit

R2(config)#router rip

R2(config-router)#version 2

R2(config-router)#noauto-summary

R2(config-router)#net 2.2.2.0

R2(config-router)#net 192.168.2.0

R2(config-router)#net192.168.12.0

R2(config-router)#exit

R2(config)#int fa0/0

R2(config-if)#ip access-group 1in

R2(config-if)#exit

 

检查测试:

PC1#ping 192.168.2.2

Type escape sequence to abort.

Sending 5, 100-byte ICMP Echosto 192.168.2.2, timeout is 2 seconds:

!!!!!

Success rate is 100 percent(5/5), round-trip min/avg/max = 60/96/192 ms

 

PC1#ping 2.2.2.2

Type escape sequence to abort.

Sending 5, 100-byte ICMP Echosto 2.2.2.2, timeout is 2 seconds:

.....

Success rate is 0 percent (0/5)

 

 

R2#ping 192.168.1.1 source2.2.2.2 //2.2.2.0网段被R1的fa0/0接口掉弃

Type escape sequence to abort.

Sending 5, 100-byte ICMP Echosto 192.168.1.1, timeout is 2 seconds:

Packet sent with a sourceaddress of 2.2.2.2

UUUUU

Success rate is 0 percent (0/5)

 

R1#debug ip packet

IP packet debugging is on

*Mar  1 00:03:42.039: IP: s=2.2.2.2(FastEthernet0/0), d=192.168.1.1, len 100, access denied

*Mar  1 00:03:42.047: IP: tableid=0, s=192.168.12.1(local), d=2.2.2.2 (FastEthernet0/0), routed via FIB

*Mar  1 00:03:42.047: IP: s=192.168.12.1 (local),d=2.2.2.2 (FastEthernet0/0), len 56, sending

*Mar  1 00:03:42.175: IP: s=2.2.2.2(FastEthernet0/0), d=192.168.1.1, len 100, access denied

*Mar  1 00:03:42.179: IP: tableid=0, s=192.168.12.1(local), d=2.2.2.2 (FastEthernet0/0), routed via FIB

*Mar  1 00:03:42.183: IP: s=192.168.12.1 (local),d=2.2.2.2 (FastEthernet0/0), len 56, sending

*Mar  1 00:03:42.255: IP: s=2.2.2.2(FastEthernet0/0), d=192.168.1.1, len 100, access denied

 

 

 

 

实验二、扩展ACL

PC1配置:

PC1#conf t

PC1(config)#no ip routing

PC1(config)#ip default-gateway192.168.0.1

PC1(config)#int fa0/0

PC1(config-if)#ip add192.168.0.2 255.255.255.0

PC1(config-if)#no sh

PC1(config-if)#exit

 

R1配置:

R1#conf t

R1(config)#int fa0/0

R1(config-if)#ip add192.168.0.1 255.255.255.0

R1(config-if)#no sh

R1(config-if)#exit

R1(config)#int fa0/1

R1(config-if)#ip add202.100.100.1 255.255.255.0

R1(config-if)#no sh

R1(config-if)#exit

 

Server配置:

Server(config)#username ciscoprivilege 15 password cisco

Server(config)#line vty 0 4

Server(config-line)#login local

Server(config-line)#exit

Server(config)#ip http server

Server(config)#int fa0/1

Server(config-if)#ip add202.100.100.80 255.255.255.0

Server(config-if)#no sh

Server(config-if)#exit

Server(config)#ip route 0.0.0.00.0.0.0 202.100.100.1

Server(config)#access-list 100permit tcp any 202.100.100.80 0.0.0.0 eq www

Server(config)# access-list 100permit tcp host 192.168.0.254 host 202.100.100.80 eq 23

Server(config)#access-list 100deny  ip any any

erver(config)#int fa0/1

Server(config-if)#ipaccess-group 100 in

Server(config-if)#exit

 

测试检查:

PC1#ping 202.100.100.80 //拒绝telnet和web之外的一起流量进入

Type escape sequence to abort.

Sending 5, 100-byte ICMP Echosto 202.100.100.80, timeout is 2 seconds:

UUUUU

Success rate is 0 percent (0/5)

PC1#telnet 202.100.100.80 //只允许192.168.0.254的主机telnet到服务器上

Trying 202.100.100.80 ...

% Destination unreachable;gateway or host down

 

PC1#telnet 202.100.100.80 80 //可以访问网站端口80(www)

Trying 202.100.100.80, 80 ...Open

HTTP/1.1 400 Bad Request

Date: Fri, 01 Mar 2002 00:22:11GMT

Server: cisco-IOS

Accept-Ranges: none

400 Bad Request

[Connection to 202.100.100.80closed by foreign host]

 

 

 

 

实验三、命名式的ACL

PC1配置:

PC1#conf t

PC1(config)#no ip routing

PC1(config)#int fa0/0

PC1(config-if)#ip add192.168.1.100 255.255.255.0

PC1(config-if)#no sh

PC1(config-if)#exit

PC1(config)#ip default-gateway192.168.1.1

 

PC2配置:

PC2#conf t

PC2(config)#int fa0/0

PC2(config-if)#ip add172.168.2.22 255.255.255.0

PC2(config-if)#no sh

PC2(config-if)#exit

PC2(config)#ip route 0.0.0.00.0.0.0 172.168.2.1

 

Server配置:

Server#conf t

Server(config)#int fa0/0

Server(config-if)#ip add202.100.100.100 255.255.255.0

Server(config-if)#no sh

Server(config-if)#exit

Server(config)#ip route 0.0.0.00.0.0.0 202.100.100.1

Server(config)#username ciscoprivilege 15 password cisco

Server(config)#line vty 0 4

Server(config-line)#login local

Server(config-line)#exit

Server(config)#ip http server

 

R1配置:

R1#conf t

R1(config)#int fa0/0

R1(config-if)#ip add192.168.1.1 255.255.255.0

R1(config-if)#no sh

R1(config-if)#exit

R1(config)#int fa0/1

R1(config-if)#ip add202.100.100.1 255.255.255.0

R1(config-if)#no sh

R1(config-if)#exit

R1(config)#int fa1/0

R1(config-if)#ip add 172.168.2.1255.255.255.0

R1(config-if)#no sh

R1(config-if)#exit

R1(config)#ip access-liststandard pc1-to-pc2 //创建一条pc1到pc2的标准命名ACL

 R1(config-std-nacl)#10 deny 192.168.1.00.0.0.255 log//拒绝pc1的访问

R1(config-std-nacl)#20 permitany //其他流量全部允许

R1(config-std-nacl)#exit

R1(config)#ip access-listextended client-to-server //创建一条客户端到服务器的扩展命名ACL

R1(config-ext-nacl)#10 permittcp any host 202.100.100.100 eq 80//所有主机可以访问服务器的80

R1(config-ext-nacl)# 20 permittcp 172.168.2.0 0.0.0.255 host 202.100.100.100 eq 23 //只允许172.168.2.0可以telnet设备。

R1(config-ext-nacl)#30 deny ipany any //其他流量全部掉弃

R1(config-ext-nacl)#exit

R1(config)#int fa1/0

R1(config-if)#ip access-grouppc1-to-pc2 out //把pc1-to-pc2应用到fa1/0的出方向

R1(config-if)#exit

R1(config)#int fa0/1

R1(config-if)#ip access-groupclient-to-server out //把client-to-server应用到fa0/1的进方向

R1(config-if)#exit

 

检查测试:

PC1#ping 172.168.2.22 //PC1无法访问PC2

Type escape sequence to abort.

Sending 5, 100-byte ICMP Echosto 172.168.2.22, timeout is 2 seconds:

U.U.U

Success rate is 0 percent (0/5)

 

PC1#telnet 202.100.100.100//PC1不能访问server的telnet服务(23端口)

Trying 202.100.100.100 ...

% Destination unreachable;gateway or host down

 

PC1#telnet 202.100.100.100 80//PC1可以访问server的www服务(80端口)

Trying 202.100.100.100, 80 ... Open

HTTP/1.1 400 Bad Request

Date: Fri, 01 Mar 2002 00:57:16GMT

Server: cisco-IOS

Accept-Ranges: none

400 Bad Request

[Connection to 202.100.100.100closed by foreign host]

 

PC2#telnet 202.100.100.100//PC2可以telnet服务器的23端口

Trying 202.100.100.100 ... Open

User Access Verification

Username: cisco

Password:

Server#q

[Connection to 202.100.100.100closed by foreign host]

 

 

 

实验四、基于时间的ACL

PC1配置:

PC1#conf t

PC1(config)#no ip routing

PC1(config)#int fa0/0

PC1(config-if)#ip add192.168.0.11 255.255.255.0

PC1(config-if)#no sh

PC1(config-if)#exit

PC1(config)#ip default-gateway192.168.0.1

 

Boss配置:

Boss#conf t

Boss(config)#no ip routing

Boss(config)#ip default-gateway192.168.0.1

Boss(config)#int fa0/0

Boss(config-if)#ip add192.168.0.22 255.255.255.0

Boss(config-if)#no sh

Boss(config-if)#exit

 

Internet配置:

nternet#conf t

Internet(config)#int fa0/1

Internet(config-if)#ip add202.100.100.1 255.255.255.0

Internet(config-if)#no sh

Internet(config-if)#exit

Internet(config)#ip route0.0.0.0 0.0.0.0 202.100.100.100

 

R1配置:

R1#conf t

R1(config)#int fa0/0

R1(config-if)#ip add192.168.0.1 255.255.255.0

R1(config-if)#no sh

R1(config-if)#exit

R1(config)#int fa0/1

R1(config-if)#ip add202.100.100.100 255.255.255.0

R1(config-if)#no sh

R1(config-if)#exit

R1(config)#time-range T1 //创建时间段T1

R1(config-time-range)#periodicdaily 09:00 to 18:00 //定义T1的时间为每天9点到18点

R1(config-time-range)#exit

R1(config)#ip access-listextended go-internte //创建go-internet的扩展命名ACL

R1(config-ext-nacl)#10 deny ip192.168.0.3 0.0.0.254 any time-range T1//T1时间禁止奇数IP地址的客户机上网

R1(config-ext-nacl)#20 permitip any any //其他全部允许

R1(config-ext-nacl)#exit

R1(config)#int fa0/1

R1(config-if)#ip access-groupgo-internet out //将go-internet的ACL应用到fa0/1的出方向

R1(config-if)#exit

 

测试检查:

R1#clock set 17:00:00 27 sep2014 //将R1的系统时间改到T1范围内

PC1#ping 202.100.100.1 //在T1时间段不能上网

Type escape sequence to abort.

Sending 5, 100-byte ICMP Echosto 202.100.100.1, timeout is 2 seconds:

UUUUU

Success rate is 0 percent (0/5)

 

R1#clock set 19:00:00 27 sep2014//将R1的时间改到T1范围外

PC1#ping 202.100.100.1 //在T1范围外PC1可以上网

Type escape sequence to abort.

Sending 5, 100-byte ICMP Echosto 202.100.100.1, timeout is 2 seconds:

!!!!!

Success rate is 100 percent(5/5), round-trip min/avg/max = 56/164/288 ms

 

Boss#ping 202.100.100.1 //Boss机永远可以上网

Type escape sequence to abort.

Sending 5, 100-byte ICMP Echosto 202.100.100.1, timeout is 2 seconds:

!!!!!

Success rate is 100 percent(5/5), round-trip min/avg/max = 64/137/308 ms

 

 

 

实验五、ACL中的establish实现TCP的单向通信

PC1配置:

C#conf t

PC(config)#no ip routing

PC(config)#ip default-gateway192.168.0.1

PC(config)#int fa0/0

PC(config-if)#ip add192.168.0.11 255.255.255.0

PC(config-if)#no sh

PC(config-if)#exit

PC(config)#line vty 0 4

PC(config-line)#login local

PC(config-line)#exit

PC(config)#username cisco privilege15 password cisco

 

Internet配置:

Internte#conf t

Internte(config)#int fa0/0

Internte(config-if)#ip add202.100.100.100 255.255.255.0

Internte(config-if)#no sh

Internte(config-if)#exit

Internte(config)#ip route0.0.0.0 0.0.0.0 202.100.100.1

Internte(config)#line vty 0 4

Internte(config-line)#loginlocal

Internte(config-line)#exit

Internte(config)#username ciscoprivilege 15 password cisco

 

R1配置:

R1#conf t

R1(config)#int fa0/0

R1(config-if)#ip add192.168.0.1 255.255.255.0

R1(config-if)#no sh

R1(config-if)#exit                    ^

R1(config)#int fa0/1

R1(config-if)#ip add202.100.100.1 255.255.255.0

R1(config-if)#no sh

R1(config-if)#exit

R1(config)#ip access-listextended tcp-establish

R1(config-ext-nacl)#10 permittcp any 192.168.0.0 0.0.0.255 established//允许已经建立连接的从外网返回的TCP数据通过

 R1(config-ext-nacl)#20 deny ip any any //拒绝所有流量

R1(config-ext-nacl)#exit

R1(config)#int fa0/1

R1(config-if)#ip access-grouptcp-establish in

R1(config-if)#exit

 

检查测试:

PC#ping 202.100.100.100 //内部发起的icmp出不去

Type escape sequence to abort.

Sending 5, 100-byte ICMP Echosto 202.100.100.100, timeout is 2 seconds:

.....

Success rate is 0 percent (0/5)

 

PC#telnet 202.100.100.100 //内部发起tcp的telnet可以出去

Trying 202.100.100.100 ... Open

User Access Verification

Username: cisco

Password:

Internte#q

[Connection to 202.100.100.100closed by foreign host]

 

Internte#ping 192.168.0.11 //外部发起的ICMP进不来

Type escape sequence to abort.

Sending 5, 100-byte ICMP Echosto 192.168.0.11, timeout is 2 seconds:

UUUUU

Success rate is 0 percent (0/5)

 

Internte#telnet 192.168.0.11 //外部发起TCP的telnet进不来

Trying 192.168.0.11 ...

% Destination unreachable;gateway or host down

 

  Establish参数利用TCP握手发起方未设置ACK位来匹配控制列表。ACK=0的将不符合控制列表。

当在ACL中加上establish参数后,路由器会滤除IP报头中SYNC置位的包(也就是连接请求的包)。而如果请求是内部用户发起的包,则不受影响。达到了控制外部用户的目的。即用户对外网请求的TCP数据允许通过;而禁止从外网主动发起的TCP连接数据通过,这样允许单向通信的效果,更符合安全需要。注意Establish对UDP无效。

 

 

 

实验六、自反ACL,真正实现单向通信

PC配置:

PC#conf t

PC(config)#no ip routing

PC(config)#ip default-gateway192.168.0.1

PC(config)#int fa0/0

PC(config-if)#ip add192.168.0.11 255.255.255.0

PC(config-if)#no sh

PC(config-if)#exit

PC(config)#username ciscoprivilege 15 password cisco

PC(config)#line vty 0 40

PC(config-line)#login local

PC(config-line)#exit

 

Internte配置:

Internet#conf t

Internet(config)#int fa0/0

Internet(config-if)#ip add202.100.100.100 255.255.255.0

Internet(config-if)#no sh

Internet(config-if)#exit

Internet(config)#ip route0.0.0.0 0.0.0.0 202.100.100.1

Internet(config)#ip http server

 

R1配置:

R1#conf t

R1(config)#int fa0/0

R1(config-if)#ip add192.168.0.1 255.255.255.0

R1(config-if)#no sh

R1(config-if)#exit

R1(config)#int fa0/1

R1(config-if)#ip add202.100.100.1 255.255.255.0

R1(config-if)#no sh

R1(config-if)#exit

R1(config)#ip access-listextended reflect //创建扩展命名的ACL

R1(config-ext-nacl)#permit ip192.168.0.0 0.0.0.255 any reflect getout//设置内网访问外网自反ACL,名字为getout

R1(config-ext-nacl)#deny ip anyany

R1(config-ext-nacl)#exit

R1(config)#ip access-listextended getin

R1(config-ext-nacl)#evaluategetout//根据getout自反ACL的规则,自动生成自反列表允许外部流量准入

R1(config-ext-nacl)#deny ip anyany

R1(config-ext-nacl)#exit

R1(config)#int fa0/1

R1(config-if)#ip access-groupreflect out //将自反ACL应用到fa0/1的出方向

R1(config-if)#ipaccess-group  getin in//将自动生成的ACL应用到fa0/1的进方向

R1(config-if)#exit

 

检查测试:

PC#ping 202.100.100.100 //PC可ping外网

Type escape sequence to abort.

Sending 5, 100-byte ICMP Echosto 202.100.100.100, timeout is 2 seconds:

.!!!!

Success rate is 80 percent(4/5), round-trip min/avg/max = 60/117/216 ms

PC#telnet 202.100.100.100 80//PC可以上网页

Trying 202.100.100.100, 80 ...Open

HTTP/1.1 400 Bad Request

Date: Fri, 01 Mar 2002 00:18:33GMT

Server: cisco-IOS

Accept-Ranges: none

400 Bad Request

[Connection to 202.100.100.100closed by foreign host]

 

Internet#ping 192.168.0.11 //外网无法ping内网

Type escape sequence to abort.

Sending 5, 100-byte ICMP Echosto 192.168.0.11, timeout is 2 seconds:

UUUUU

Success rate is 0 percent (0/5)

Internet#telnet 192.168.0.11 //外网无法telnet内网

Trying 192.168.0.11 ...

% Destination unreachable;gateway or host down

 

R1#sh access-list //检查access-list状态,注意自动产生的几条ACL在会话结束后消失

Extended IP access list getin

    10 evaluate getout

    20 deny ip any any (24matches)

Reflexive IP access list getout

     permit tcp host202.100.100.100 eq www host 192.168.0.11 eq 26055 (7 matches) (time left 293)

     permit icmp host202.100.100.100 host 192.168.0.11  (18matches) (time left 54)

Extended IP access list reflect

    10 permit ip 192.168.0.0 0.0.0.255any reflect getout (62 matches)

20 deny ip any any

 

  自反 ACL 允许最近出站数据包的目的地发出的应答流量回到该出站数据包的源地址。这样您可以更加严格地控制哪些流量能进入您的网络,并提升了扩展访问列表的能力。使用自反 ACL 来允许从内部网络发起的会话的 IP 流量,同时拒绝外部网络发起的 IP 流量。此类 ACL 使路由器能动态管理会话流量。路由器检查出站流量,当发现新的连接时,便会在临时 ACL 中添加条目以允许应答流量进入。自反 ACL 仅包含临时条目。当新的 IP 会话开始时(例如,数据包出站),这些条目会自动创建,并在会话结束时自动删除。与前面介绍的带established 参数的扩展 ACL 相比,自反 ACL 能够提供更为强大的会话过滤。尽管在概念上与established 参数相似,但自反 ACL 还可用于不含 ACK 或 RST 位的 UDP 和 ICMP。established 选项还不能用于会动态修改会话流量源端口的应用程序。permit established 语句仅检查 ACK 和 RST 位,而不检查源和目的地址。

自反 ACL 具有以下优点:

  1. 帮助保护您的网络免遭网络黑客攻击,并可内嵌在防火墙防护中。

  2. 提供一定级别的安全性,防御欺骗攻击和某些 DoS 攻击。自反 ACL 方式较难以欺骗,因为允许通过的数据包需要满足更多的过滤条件。例如,源和目的地址及端口号都会检查到,而不只是 ACK 和 RST 位。

  3. 自反ACL永远是permit的;

  4. 自反ACL允许高层Session信息的IP包过滤;

  5. 利用自反ACL可以只允许出去的流量,但是阻止从外部网络产生的向内部网络的流量,从而可以更好地保护内部网络;

  6. 自反ACL是在有流量产生时(如出方向的流量)临时自动产生的,并且当Session结束时条目就自动删除;

  7. 自反ACL不是直接被应用到某个接口下的,而是嵌套在一个扩展命名访问列表下的。

  8. 自反 ACL 仅可在扩展命名 IP ACL 中定义。自反 ACL 不能在编号 ACL 或标准命名ACL 中定义,也不能在其它协议 ACL 中定义。自反 ACL可以与其它标准和静态扩展 ACL 一同使用。

 

 

 

实验七、动态ACL

PC1配置:

PC#conf t

PC(config)#no ip routing

PC(config)#ip default-gateway 192.168.0.1

PC(config)#int fa0/0

PC(config-if)#ip add 192.168.0.11255.255.255.0

PC(config-if)#no sh

PC(config-if)#exit

 

Internet配置:

Internet#conf t

Internet(config)#int fa0/0

Internet(config-if)#ip add 202.100.100.100255.255.255.0

Internet(config-if)#no sh

Internet(config-if)#exit

ternet(config)#ip route 0.0.0.0 0.0.0.0202.100.100.1

Internet(config)#ip http server

 

R1配置:

R1#conf t

R1(config)#int fa0/0

R1(config-if)#ip add 192.168.0.1255.255.255.0

R1(config-if)#no sh

R1(config-if)#exit

R1(config)#int fa0/1

R1(config-if)#ip add 202.100.100.1255.255.255.0

R1(config-if)#no sh

R1(config-if)#exit

R1(config)#username cisco password cisco

R1(config)#line vty 0 2

R1(config-line)#login local

R1(config-line)#autocommand access-enablehost timeout 5//设置当telnet身份认证完成就触发激活动态ACL,如果2分钟内没有匹配该条目的流量出现,则条目失效。

R1(config-line)#exit

R1(config)#line vty 3 4

R1(config-line)#login local

R1(config-line)#rotary 1

R1(config-line)#exit

R1(config)#ip access-list extended DY //创建扩展命名的ACL

R1(config-ext-nacl)#10 permit ip 192.168.0.00.0.0.255 host 192.168.0.1//允许内网到网关的访问,可telnet认证

R1(config-ext-nacl)#20dynamic internet timeout 120 permit ip 192.168.0.0 0.0.0.255 any//telnet认证后动态创建acl,允许内网主机有120分钟时间访问外网,一旦它超过120分钟,即使有流量正在传输,所有会话都会被切断,如果还需要通信,就需要重新建立连接

R1(config-ext-nacl)#30 deny ip any any //其他流量全部拒绝

R1(config-ext-nacl)#exit

R1(config)#int fa0/0

R1(config-if)#ip access-group DY in

R1(config-if)#exit

 

检查测试:

PC#ping 202.100.100.100 //未认证前出不了外网

Type escape sequence to abort.

Sending 5, 100-byte ICMP Echos to202.100.100.100, timeout is 2 seconds:

UUUUU

Success rate is 0 percent (0/5)

 

PC#telnet 192.168.0.1 //telnet到路由器进行认证

Trying 192.168.0.1 ... Open

User Access Verification

Username: cisco

Password:

[Connection to 192.168.0.1 closed by foreignhost]

 

PC#ping 202.100.100.100 //完成认证后正常ping外网

Type escape sequence to abort.

Sending 5, 100-byte ICMP Echos to202.100.100.100, timeout is 2 seconds:

!!!!!

Success rate is 100 percent (5/5), round-tripmin/avg/max = 60/122/268 ms

 

PC#telnet 202.100.100.100 80////完成认证后正常访问外网

Trying 202.100.100.100, 80 ... Open

HTTP/1.1 400 Bad Request

Date: Fri, 01 Mar 2002 00:47:04 GMT

Server: cisco-IOS

Accept-Ranges: none

400 Bad Request

[Connection to 202.100.100.100 closed byforeign host]

 

R1#show access-lists //查看ACL状态

Extended IP access list DY

    10permit ip any host 192.168.0.1 (333 matches)

    20Dynamic internet permit ip 192.168.0.0 0.0.0.255 any

       permit ip host 192.168.0.11 any (21matches) (time left 7138)//只允许认证成功的主机出去

    30deny ip any any (60 matches)

 

动态ACL(AccessControl List)是对传统访问表的一种重要功能增强。动态ACL是能够自动创建动态访问表项的访问列表。传统的标准访问列表和扩展的访问列表不能创建动态访问表项。一旦在传统访问列表中加入了一个表项,除非手工删除,该表项将一直产生作用。而在动态访问表中,可以根据用户认证过程来创建特定的、临时的访问表项,一旦某个表项超时,就会自动从路由器中删除。用户首先通过提供用户名和口令,开启一个到路由器的telnet会话。在用户被认证之后,路由器会自动关闭telnet会话,同时将一个动态访问表项置于某个访问表中,以允许源地址为认证用户工作站地址的报文通过。这样,我们可以在安全边界上配置访问表,只允许那些能够通过用户认证的工作站才能发送向内的报文。由于动态ACL需要telent认证,所以要注意以下几点配置:

  1. Router(config-line)# rotary 1//如果一旦开启动态ACL,那么所有发起的telnet会话都会触发一个动态ACL表项,但是telnet会马上关闭,如果我们想要管理一台设备的话,就需要在vty 0-4的其中一个进程中输入该命令,然后在telnet的时候地址后面打上3001。

  2. Router(config-line)# password xxxx //在VTY下配置即只进行密码认证

  3. Router(config)# username name password xxxx//指定认证时需要输入的用户名和密码

  4. Router(config-line)# autocommand access-enable [host][timeout minutes] //输入该命令就是允许认证成功后自动建立一个动态ACL,如果不加host,一旦一台主机认证成功以后,那么其他主机就不需要认证了,这样是不好的。timeout指定空闲超时时间,单位是分钟。空闲超时时间是针对单独的一个表项的时间,如果该表现在指定的时间内没有流量通过,那么它就会超时,并且自动从ACL中删除。另外autocommand access-enable既可以在vty进程下面打,也可以在特权模式下打,不同的是,特权模式下可以打?看到命令的详细解释,而vty下面看不到

Docker “docker login“ 失败? 登录阿里云镜像仓库仓库 unauthorized: authentication required 文章目录听说你 login fail?来,让我们解决一下!登录,撒花 听说你 login fail? 美滋滋的在服务器上安装完成Docker应用,开始配置阿里云镜像加速?然后被阿里云官方文档蹂躏?别急别急,让我来拯救你。 我们先来看看 阿里云官方文档 Docker镜像基本操作: 好家伙,emmm… 上来直接就Login Succeeded,这不简直so easy?我们也来照着操作操作: docker@default-online:~$ docker login registry.cn-hangzhou.a 阅读详情

相关推荐

AD9361数字调制入门:从IQ调制原理到动手实现第一个ASK信号(Vivado工程详解)

本文详细介绍了如何使用AD9361射频收发器实现ASK数字调制,从IQ调制原理到Vivado工程实现。通过Verilog代码示例和FPGA架构设计,帮助开发者理解纯逻辑实现数字调制解调的关键技术,特别适合软件无线电(SDR)初学者入门实践。

weixin_29158047的博客 374

网络原理与应用——访问控制列表

访问控制列表(ACL) ACL概述 访问控制列表(Access Control List,ACL)是应用在路由器接口的指令列表,就是用来告诉路由器哪些数据可以接收,哪些数据不能接收,哪里来的数据可以接收,哪里来的数据不能接收。 ACL原理主要分为两个方向 出:已经过路由器的处理,正离开路由器接口的数据包 入:已经到达路由器接口的数据包,将被路由器处理 ACL的分类 标准ACL:根据数据...

feili12138的博客 2743

【VMware篇】7-通过ISO镜像升级VMware Esxi

本文主要介绍Dell服务器上安装的ESXi升级的方法之一(采用ISO升级)。

chen_yunan的博客 5518

cisco的访问控制列表ACL的基本使用(大白话版)(基于cisco packet tracer)

ACL语句实现IP地址过滤,access-list 1 permit XXXX.XXXX.XXXX.XXXX XXXX.XXXX.XXXX.XXXX

fly_view的博客 1万+

详解卷积神经网络(CNN)

卷积神经网络(Convolutional Neural Network, CNN)是一种前馈神经网络,它的人工神经元可以响应一部分覆盖范围内的周围单元,对于大型图像处理有出色表现。

qq_25762497的博客 25万+

思科,基本命令总结

1、思科 基本端口设置命令 no ip routing //二层交换关闭路由功能 configure terminal (conf t) //进入全局模式 interface fastEthernet 1/0 (int f1/0) //进入端口1/0 简写int f1/0 speed 100 //设置速率为100MB duple...

Parhoia的博客 6128

2024年电气工程师最新面试题及答案

1. **基本电气工程原理**:包括电流、电压、电阻、功率等基本概念。2. **欧姆定律**:V = IR,描述电压、电流和电阻之间的关系。42. **风力发电系统组成**:包括风力涡轮机、发电机、控制系统等。44. **智能电网技术**:包括自动化控制、通信技术、数据分析等。10. **减少EMI**:使用屏蔽、滤波、合理布线等方法。40. **光伏系统组成**:包括光伏板、逆变器、控制器等。48. **能量存储技术**:包括电池、超级电容器、飞轮等。

guo162308的博客 6565

ACL-in-out的区别

1.access-list 与ip access-list的区别 access-list 是用数字来定义----acl(标准或扩展ACL,用数字定义)  ip access-list 是用名字来定义acl(命名ACL 命名前面要加 standard or extended 2.应用在端口上的访问控制列表 1、如果在路由器R1上配置标准的访问控制列表,阻止PC1访问PC3,如配置的ACL为acce...

seaship的博客 7482

s8654

The official Snapdragon Ride SX 4.0 development board provides standardized hardware support for the secondary development and functional verification of the s8654 platform.

qq_39257814的博客 6835

YOLOv11原创改进专栏|原创自研篇|DAA模块手把手添加教程

个人简介:大家好!我是 DAA 注意力机制,堪称深度学习中的“聚光灯”。我的任务是帮助模型聪明地识别关键特征,就像一位经验丰富的侦探,能够在繁杂的数据中找到重要线索。通过结合通道和空间的注意力,我能确保模型把重点放在最有价值的信息上,从而提升识别准确率。简单来说,我就是帮助你的模型变得更加专注、敏锐,让它在一堆数据中轻松找到“宝藏”,为检测精度加分!动态适应性特征提取DAA通过动态生成卷积核来适应输入特征的变化,从而实现针对不同数据的自适应特征提取。

mywhyyds的博客 380

CCNP路由实验之十四 路由器的訪问控制ACL

CCNP路由实验之十四 路由器的訪问控制ACL CCNP路由实验之十四 路由器的訪问控制ACLACL(Access Control List,訪问控制列表) 是路由器接口的指令列表,用来控制port进出的数据包。ACL适用于全部的路由协议,如IP、IPX、AppleTalk等。这张表中包括了匹配关系、条...

weixin_30502157的博客 167

100天精通Python(可视化篇)——第80天:matplotlib绘制不同种类炫酷柱状图代码实战(簇状、堆积、横向、百分比、3D柱状图)

0. 专栏导读 1. 普通柱状图 2. 簇状柱形图 3. 堆积柱形图 4. 横向柱状图 5. 横向双向柱状图 6. 百分比堆积柱形图 7. 3D柱形图 8. 3D堆积柱形图 9. 3D百分比堆积柱形图

努力让自己发光,对的人才能迎着光而来 2万+

CCNP_第十四章_访问控制列表

1.为什么需要使用访问控制列表? 管理网络中逐步增长的 IP 数据 当数据通过路由器时进行过滤 允许、拒绝数据包通过路由器 允许、拒绝Telnet会话的建立 没有设置访问列表时,所有的数据包都会在网络上传输 基于数据包检测的特殊数据通讯应用   2.配置访问控制列表的注意点 访问列表的编号指明了使用何种协议的访问列表 每个端口、每个方向、每条协议只能对应于一条访问列

hengfanz的专栏 614

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

Data-Structures-and-Algorithm-Analysis-in-Java.pdf

作者: Weiss, Mark A. 出版社: Addison Wesley Data Structures and Algorithm Analysis in Java is an “advanced algorithms” book that fits between traditional CS2 and Algorithms Analysis courses. In the old ACM Curriculum Guidelines, this course was known as CS7. This text is for readers who want to learn good programming and algorithm analysis skills simultaneously so that they can develop such programs with the maximum amo...

Cisco:组网技术-IP基本配置

目标 配置 以路由器R1为例 配置各interface的地址 命令:(config)#ip add ip地址 掩码地址 如:R1(config)#int e0/1 R1(config)#ip add 1.1.1.1 255.255.255.252 R1(config)#no shut 都配置好之后退出保存至enable的#状态,使用命令show config就可以看到各interface的ip地址...

katniss688的博客 3258

Statistics and Machine Learning Toolbox

Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具

CCNA-ACL实验(标准ACL,扩展ACL,命名ACL,基于时间ACL,动态ACL,自反ACL)

ACL 随着大规模开放式网络的开发,网络面临的威胁也就越来越多。网络安全问题成为网络管理员最为头疼的问题。一方面,为了业务的发展,必须允许对网络资源的开发访问,另一方面,又必须确保数据和资源的尽可能安全。网络安全采用的技术很多,而通过访问控制列表(ACL)可以对数据流进行过滤,是实现基本的网络安全手段之一。本章只研究基于IP的ACL。 ACL 概述 访问控...

weixin_34418883的博客 704

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

CCNA学习笔记(五) 安全(访问控制列表)

访问控制列表(ACL)实例详解 引言 这篇文章介绍访问控制列表的作用;分别介绍标准、扩展、命名访问控制列表的配置和需要注意的问题。文章后半部分会实例演示一些高级访问控制列表的配置,包括动态、反射、和基于时间的访问控制列表(本文中所有配置都可以在GNS3中完成,使用的路由ios为c3640)。 文章目录 0×1.ACL概述 a.ACL的作用 b.ACL的工作流程 c.通配符掩码在A

warm77的专栏 3377

出现Destination Host Unreachable,应如何解决

为虚拟机联接网络,用 ping www.baidu.com 来测试虚拟机是否可以连上网,一直显示:unknown host www.baidu.com,但是我之前已经把网卡文件配置好了,执行ifconfig后IP地址也没有错,在查询了一般之后,问题应该出现在网关(GATEWAY)、DNS设置、网线未接好,排错步骤可以是这样的: 1、ping 127.0.0.1ping的通说明tcp协议栈没有问题 2、ping 主机地址 ping的通说明网卡没有问题 3、ping 路由器默认网关 ping的通说明包可以到达路

lhh_qrsly的博客 7万+

自反访问控制列表

自反访问控制列表(转) 自反访问控制列表(转)自反访问控制列表 1.一个面临的控制问题我们首先看下图图片: 1.一个面临的控制问题我们首先看下图有这样一个要求,就是我们要允许内部的机器可以访问外部,可是不允许外部的主机访问内部,有人说,这个简单,用一个访问控制列表,在Seial1上做如下配置router(...

weixin_34384915的博客 579

CCNA-静态路由实验

实验要求: 1、根据实验要求,我们首先在Ciscopackettracer模拟器中搭建此网络拓扑图 2、然后我们就要开始做很重要的一步,就是地址规划。 R1-R4各需要4个环回,然后路由器的每一个接口需要一个网段,则一共需要14个网段。 常规思路: 将172.16.0.0/16借4位然后进行子网划分,从划分出来的16个子网中拿14进行使用。 但是这样会出现一种弊端,在实际...

Slash的博客 1631

access-group和access-class的区别

ip access-group用在接口下;access-class用在VTY线下 access-class命令前面没有“ip” 例子: 先配置access-list: access-list 1 permit host 192.168.1.1 access-list 1 permit host 192.168.2.1 情况一:line vty 0 4(最多允许5...

weixin_34240657的博客 1990

Manually Summarizing EIGRP Routes

实验目的: 1、理解EIGRP 的自动汇总的缺点。 2、掌握EIGRP 的手工自动总结的配置方法。 实验拓扑图: 16 实验步骤及要求: 1、配置各台路由器的IP 地址,并且使用Ping 命令确认各路由器的直连口的互 通性。 2、配置各台路由器的EIGRP 协议,并且不关闭自动总结。 3、在R2 上使用ping 测试网络路由,会发现R2 路由器无法p...

weixin_33929309的博客 152

思科CISCO ACL配置详解

思科ACL控制访问列表详细信息

weixin_64312503的博客 2万+

ACL访问控制列表

1、如果在路由器R1上配置标准的访问控制列表,阻止PC1访问PC3,如配置的ACL为access-list 1 deny 192.168.1.254 0.0.0.0 access-list1 permit any。如果将此访问列表应用到f0/1接口int f0/1  ip access-group 1 (in/out)不管此处是in还是out PC1都将无法访问PC2,但是这两种情况下,数据

阿亮的小仓库 631
上一篇: CCNP路由实验之十三 Qos
下一篇: CCNP路由实验之十五 NAT(网络地址转换)
kkfloat
博客等级 码龄17年 923粉丝 201原创
评论 2
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值