路由器重温——WAN接入/互联-DCC配置管理2_dialer-rule-程序员宅基地

技术标签: HCSE——构建企业级路由网络  

配置DCC拨号接口属性

拨号接口(包括物理拨号接口和Dialer接口)一旦创建,就会被赋予一系列属性参数的缺省值,因此本项配置任务为可选。

链路空闲时间

设置当链路空闲超过了指定时间后,DCC将断开链路。这个空闲时间也即是链路中不存在符合拨号访问控制列表的permit条件的报文传送时间。

下次呼叫发起前的链路断开时间

当DCC呼叫链路因故障或挂断等原因导致进入断开状态,必须经过指定时间后才能建立新的拨号连接(即进行下一次呼叫的间隔时间),从而避免对端PBX设备过载。

接口竞争时的链路空闲时间

当DCC开始发起新呼叫时,若所有通道都被占满则进入“竞争”状态。通常一条链路建立后Idle超时定时器将起作用。但若同时刻去往另一目的地址的呼叫发生,则会引起竞争,此时DCC使用Compete-idle超时定时器取代Idle超时定时器,即链路空闲时间达到Compete-idle超时定时器的规定后将自动断开。

呼叫建立超时的时间

和某些对端建立DCC呼叫时,呼叫发起到连接建立的时间长短不一,为了有效控制发起呼叫到呼叫连接建立之间允许等待的时间可以配置Wait-carrier定时器,规定若在指定时间内呼叫仍未建立则DCC将终止该呼叫。

拨号接口缓冲队列长度

没有为拨号接口配置缓冲队列的情况下,当拨号接口收到一个报文时,如果此时连接还没有成功建立,则这个报文将会被丢弃。如果为拨号接口配置了缓冲队列,则在连接成功建立之前报文将被缓存而不是被丢弃,待连接成功后再发送。

自动拨号时间间隔

启动自动拨号功能后,路由器启动后,DCC将自动尝试拨号连接对端,无需通过数据报文进行触发。若无法与对端正常建立拨号连接,则每隔一段时间DCC将再次自动尝试建立拨号连接。与数据触发的非自动拨号DCC相比,该连接建立后不会因超时而自动挂断(即dialer timer idle命令对自动拨号不起作用)。 

DCC拨号接口属性配置

system-view
interface interface-type interface-number  
interface dialer interface-number
dialer timer idle seconds
      配置拨号接口允许链路空闲时间。
dialer timer enable seconds   配置拨号接口下次呼叫发起前的链路断开时间。
dialer timer compete seconds  配置当拨号接口发生呼叫竞争后的接口空闲时间。
dialer timer wait-carrier seconds  配置拨号接口呼叫建立超时间隔。
dialer queue-length packets    配置拨号接口缓冲队列长度。
dialer timer autodial seconds   配置DCC自动拨号的时间间隔。

配置DCC呼叫MP捆绑

有时为了满足用户数据传输速率的需求,可以捆绑配置一次DCC呼叫使用多个PPP连接,即多条PPP链路绑定成一条MP链路。

system-view
interface dialer interface-number
link-protocol ppp
    配置拨号接口的链路层协议为PPP
ppp mp      配置封装PPP协议的接口工作在MP方式。这是按照PPP链路用户名查找VT实现MP的方式,根据验证通过的对端用户名查找对应的虚拟接口模板,相同用户名绑定到一个虚拟接口模板实现MP。配置本命令的同时,必须在接口下配置PPP双向认证。
ppp mp max-bind max-bind-number    配置MP最大捆绑链路数。

配置拨号串循环备份

在轮询DCC中,可以配置多个呼叫同一个对端的目的地址及拨号串,以用于拨号串的循环备份。拨号串循环备份的配置方法就是使用:

在Dialer接口视图下,执行命令dialer route ip next-hop-address [ user hostname | broadcast ] * [ dial-string [ autodial | interface interface-type interface-number ] * ]。

在物理拨号接口上(PRI/BRI接口)视图下,执行命令dialer route ip next-hop-address [ user hostname | broadcast ] * [ dial-string [ autodial ] ]。

为呼叫同一对端配置多条带有不同目的地址(next-hop-address)、不同拨号串(dial-string)(当然这要在对端提供了多个可用的目的地址和拨号串时才能进行配置)。

配置通过DCC实现动态路由备份

动态路由备份很好的集成了备份和路由功能,提供了可靠的连接和规范的按需拨号服务,有如下特点:

● 动态路由备份主要是针对动态路由协议产生的路由进行备份,也可对静态路由和直连路由进行备份
● 动态路由备份不对特定接口或特定链路进行备份,适用于多接口和多路由器的情况。
● 动态路由备份的主链路断开时备份链路将自动启动,不会导致拨号延迟(该延迟未包括路由收敛时间)
● 动态路由备份不依赖于具体的路由协议,但可以和RIP-1、RIP-2、OSPF、IS-IS、BGP等路由协议配合工作。

配置动态路由备份后自动拨号失效

DCC动态路由备份的配置

system-view
standby routing-rule group-number ip ip-address { mask | mask-length}
   创建动态路由备份组,并将被监控网段加入动态路由备份组。这样当到所有被监控网段都无有效路由时,则拨号启用备用链路。使用相同group-number重复执行本命令,可以配置一个路由备份组监控不同的网段,各网段之间为“或”的关系,即当到达备份组中指定的所有网络都不存在有效路由时,设备才拨通备份链路。
interface interface-type interface-number
interface dialer interface-number
standby routing-group group-number
  在以上拨号备份接口(可以是物理拨号接口或Dialer接口)上启用动态路由备份功能。配置本命令前,要确保备份拨号接口上已经配置基本DCC功能。
standby timer routing-disable seconds 配置主链路重新接通后断开备份链路的延迟时间。为0时,立即断开。
quit
dialer timer warmup seconds
 配置动态路由备份功能在系统启动多久后生效,在这段时间内不对备份链路进行呼叫。

通过轮询DCC中的接口备份和3G网络实现干线链路备份的配置实例

正常情况下,RouterA通过ADSL接口接入IP网络(假设是以PPPoA专线ADSL方式接入)。为了防止当ADSL接口出现故障,通过备份接口(3G接口)接入IP网络。

配置思路:就是配置一条用于备份ADSL上行线路的3G上行备份线路,需要做一下几方面配置:

● 配置企业内网,指定RouterA的LAN口IP地址作为内网主机默认网关。

● 配置RouterA的上行ADSL主用接口。本例中主接口采用PPPoA专线ADSL接入方式,需要承载ATM业务,所以需要创建应用ATM协议的VT(虚拟模板)接口,并指定3G Cellular接口作为VT的备份接口。

● 配置RouterA的上行3G 备份接口。假设对接的3G网络为WCDMA网络,现要接入WCDMA的PS域,需要配置拨号串为“*99#”,APN为“wcdma”。

● 配置两条通过不同上行接口,不同优先级的缺省路由,使得3G线路称为ADSL线路的备份线路。

具体配置步骤:

在RouterA上进行配置

上行主接口配置

acl number 3002
rule 5 permit ip source 192.168.100.0 0.0.0.255
quit
interface virtual-template 10
ip address ppp-negotiate
nat outbound 3002
quit
interface atm 1/0/0
pvc voip 1/35
map ppp virtual-template 10
quit
standby interface Cellular 0/0/0
standby timer delay 10 10
quit

上行备用接口配置

dialer-rule
dialer-rule 1 ip permit
quit
interface Cellular 0/0/0
profile create 1 static wcdma
link-protocol ppp
ip address ppp-negotiate
dialer enable-circular
dialer-group 1
dialer timer idle 0
dialer number *99#
nat outbound 3002
quit

配置两条优先级不一样的缺省路由

ip route-static 0.0.0.0 0.0.0.0 virtual-template 10 10
ip route-static 0.0.0.0 0.0.0.0 Cellular 0/0/0

配置共享DCC

共享DCC中一个物理接口可以属于多个Dialer bundle(拨号捆绑),服务于多个Dialer接口但一个Dialer接口只对应一个目的地址,只能使用一个Dialer bundle;一个Dialer bundle中可以包含多个物理接口,每个物理接口具有不同的优先级。

支持共享DCC的物理接口包括:ADSL接口、G.SHDSL接口、VDSL接口、E1-IMA接口、WAN侧以太网接口、ISDN PRI接口和ISDN BRI接口。

共享DCC的主要配置任务如下(必须的只有前三项)

● 配置链路层协议和IP地址
● 使能共享DCC并配置DCC拨号ACL及接口的关联。
● 配置共享DCC呼叫
● (可选)配置DCC拨号接口属性。
● (可选)配置DCC呼叫MP捆绑
● (可选)配置通过DCC实现动态路由备份

1)配置链路层协议和IP地址

与轮询DCC中的链路层协议配置相同,只是对于共享DCC,如果是主叫端,需要在Dialer接口下配置PPP的相关命令,但建议用户在物理拨号接口下也配置相同的PPP相关命令,以确保PPP链路参数协商的可靠性;如果被叫端,需要在物理拨号接口下配置PPP相关命令

对于ISDN PRI、ISDN BRI接口,当采用共享DCC时,B通道初始封装为PPP,一旦该B通道被选用,其封装协议跟随Dialer接口链路层协议动态改变,使得B通道能够被封装不同链路层协议的Dialer接口所选用,确保灵活性,当该B通道被释放,其封装协议自动恢复为PPP。

2)使能共享DCC并配置DCC拨号ACL及与接口的关联

在共享DCC中,使能共享DCC、配置DCC拨号ACL及与接口的关联仅能在Dialer接口下配置,不能在物理接口下配置。

system-view
dialer-rule
dialer-rule dialer-rule-number {acl acl-number | name acl-name} | ip {deny | permit} | ipv6 {deny | permit} }
  配置某个拨号访问组对应的拨号访问控制列表,指定引发DCC呼叫的条件。
quit
interface dialer interface-number
dialer user username
在dialer接口上使能共享DCC功能。username指定对端用户名,必须与对端配置的PPP用户名一致。
dialer bundle number 指定以上共享DCC的Dialer接口使用的Dialer bundle(拨号捆绑),Dialer bundle是用于指定有哪些物理端口进行捆绑与一个dialer接口对应的,一个Dialer接口只能对应一个Diler bundle。
dialer-group group-number 配置以上Dialer接口的拨号访问组。

3)配置共享DCC呼叫

使用共享DCC实现按需拨号时,由于物理接口随着拨号串的不同而具有不同属性,因此必须在Dialer接口上配置DCC参数,并且只能使用dialer number命令呼叫对端的拨号串。一个Dialer接口只能配置一个拨号串。

system-view
interface dialer interface-number
dialer number dial-number  
在Dialer接口上配置呼叫一个对端的拨号串。
quit
interface interface-type interface-number
dialer bundle-number number [priority priority]
 把以上物理拨号接口加入指定的Dialer bundle中,并设置优先级。

4)配置DCC拨号接口属性

参见DCC拨号接口属性配置,只是这里仅可在Dialer接口上配置。

5)配置DCC呼叫MP捆绑

参见配置DCC呼叫MP捆绑

6)配置通过DCC实现动态路由备份

参见DCC动态路由备份的配置,只是仅能在Dialer接口上配置。

如果为了缓解网络压力或调整拨号配置需要临时拆除拨号链路时,可通过dialer disconnect 【interface interface-type interface-number】任意视图命令手动拆除拨号链路。但此命令只是临时拆除拨号链路:如配置了自动拨号,当到达自动拨号时间时,会重新建立拨号链路;如未配置自动拨号,则当有报文传输时,会再次触发拨号。

网络上收集的资料:

DCC适用于PSTN和ISDN网络,这两种网络使用前都需要拨号,DCC不是协议,也没有国际标准,各厂商自己实现。

DCC涉及的术语:

物理接口:
Dialer接口:
拨号接口:
拨号串:即PSTN电话号码或ISDN电话号码
Dialer rule:配置能够触发拨号的条件。
DCC在系统中的位置:

DCC模块与链路层模块和CC/模拟拨号模块相互提供服务。DCC模块与网络层协议无关。

DCC支持点到点,点到多点和多点到多点的网络拓扑。

DCC的功能:

●承载IP、IPX网络层协议
●设定数据包触发拨号的条制
●支持端口的优先级配置
●提供自动拨号的功能
●提供流量控制
●支持回呼功能
●端口的缓冲队列的设定
●对接入请求进行识别
●对空闲链路的时间设定

●承载IP、IPX网络层协议

DCC可以单独承载IP、IPX网络层协议,也可以同时承载IP、IPX网络层协议。

●提供流量控制

当一个物理接口的流量超过设定的百分比,DCC会启动另一物理端口呼叫同一个目的地址。

●支持回呼功能

基于PPP的CALLBACK,基于ISDN主叫识别的CALLBACK。

●对接入请求进行识别

在建立连接的过程中,链路层模块PPP向DCC先后传递协商出的对端用户名和IP地址,DCC对此进行验证,只有二者验证都通过,才建立连接。

DCC应用

由于PSTN的开放性,任何一个具备电话线的终端都可以在备份系统启动时进入银行网络,使网络数据传输暴露在公网上,这时需要CALLBACK技术作为安全认证,CALLBACK是PPP协议中的标准扩展协议。

针对一个需要使用DCC的网络,用户可以根据下述流程进行配置准备:
● 确定网络中哪些路由器将要使用DCC,这些路由器中的哪些接口使用DCC,采用哪种传输介质,采用何种拓扑结构,这些接口是发出呼叫、接收呼叫还是既发出呼叫也接收呼叫。
● 确定使用的接口类型(异步串口或ISDN BRI/PRI接口等)。
● 确定使用的接口封装( PPP等)。
● 确定使用的网络协议(lP或lPX等)。
● 确定需要在DCC接口使用的动态路由协议(RIP等)。
● 选择使用标准DCC或灵活DCC两种配置方法之一来配置DCC
● 配置DCC。

标准DCC配置

一个物理接口可以直接配置成拨号接口,也可以配置成属于唯一一个逻辑接口dialer口(Dialer interface)从而继承该逻辑接口的DCC属性。
DCC的配置可以分为下列几个方面:
● 根据具体的组网方式决定要配置的端口是要向单点还是多点发出呼叫、是要接收单点还是多点的呼叫或者既要接收呼叫又要发出呼叫。
● 配置DCC的目的是为了实现按需拨号,即只在有数据要发送的时候才开始拨号建立连接,所以要配置一个开始拨号的触发条件:Dialer-rule。
● DCC还有‘个特点就是在已经建立了连接以后,如果过了段时间没有数据传送,DCC就会自动断开连接。这段时间到底是多少?当然可以使用系统的默认值,但是你也可以根据实际情况自己设置。类似这些参数部是DCC的相关参数。
● DIaler口是个逻辑拨号口,一个Dialer口可以包含多个物理接口,它们继承了Dialer口的特性。运用Dialer口可以简化DCC的配置。

两种方式配置DCC的接口,一个是直接在物理接口上使能DCC,另外一种是配置逻辑DCC接口:Dialer接口,并且使物理接口与Dialer接口绑定在一起。

Dialer interface是个逻辑接口,其中包含一组物理接口。对一个Dialer interface的配置将会继承给这个接口中的所有物理接口。在完成了Dialer interface的配置后,将某个物理接口置入其中,这个物理接口将会继承对dialer interface的所有配置。如上图所示,Dialer Interface 1包含三个理接口 Serial1、Serial 2和Seria13:Dialer Interface 2同样也包含三个物理接口: Seria14、Seria15和Seria16。对Dialer Interface 1 的配置将会继承给Serial1、Seria12和Seria13:  对Dialer Interface 2的配置将会继承给Seria14、Seria15和Seria16。一个dialer接口(dialer interface)可以包含多个物理接口,但是一个物理接口只能属于一个dialer口。属于同 一个Dialer interface的所有物理接口我们定义为一个dialer rotary group(与dialer-group命令功能相同)。

dialer-rule的作用是区分数据包是否是需要通过DCC传送的包。即只有经过Dialer-rule确认后的数据包才能触发DCC开始拨号建立连接。配置Dialer-rule要在全局模式下进行,一个配置好的Dialer-rule中可以被多个拨号端口(包括物理拨号端口和逻辑拨号端口Dialer口)使用。Dialer-rule也可以与访问控制列表相关联,灵活控制拨号触发条件。

Dialer-group命令用于接口模式下(包括Dialer口)将接口与dialer-rule关联起来,group-number参数与dialer-list命令中定义的dialer-group参数一致。(在华为的配置中,没有dialer-list,直接是dialer-rule视图下,dialer-rule-number)

DCC在发送数据报文时确定该报文是否为interesting报文:

● 对于不是interesting的报文,若当前没有可发送该报文的拨号链路建立,则DCC将丢弃报文。
● 对于interesting报文,若当前没有可发送该报文的拨号链路,则DCC将进行拨号,并缓存该报文。
● 若当前已有发送该报文的拨号链路,则无论该报文是否为interesting,DCC都将从此拨号链路上发送该报文。

dialer-rule有两种配置方式:

直接配置到protocol;通过access-list来配置。

接收单点呼叫,只需在接口模式下使能DCC即可,对于从多点接受呼叫可以配置验证(PAP/CHAP),配置验证的目的是使路由器知道本次呼叫是哪个用户发起的。这时呼叫发起方也应该配置验证的相关参数

(1)路由器A:

[Quidway]dialer-rule 1 ip permit
[Quidway]interface serial 0
[Quidway-Serial0]ip aDCCess ppp-negotiate
[Quidway-Serial0]standby interface serial 1
[Quidway-Senal0]standby tlmer enable-delay 10
[Quidway-Senal0]standby timer disable-delay  10
[Quidway-Serial0]interface serial 1
[Quidway-Senal1]physical-mode asyne
[Quidway-Senal1 ]modem
[Quidway-Senal1 ]dialer enable-legacy
[Quidway-Senal1]dialer-group 1
[Quidway-Senal1]dialer number 6688002
[Quidway-Serial1]ppp pap local-user quidwaya password simple quidwaya
[Quidway-Serial1]ip aDCCess ppp-negotiate
2) 路由器B:
[Quidway]dialer-rule 1 ip permit
[Quidway]interface serial 0
[Quidway-Serial0]ip aDCCess  1.0.0.2 255.0.0.0
[Quidway-Senal0]remote aDCCess 1.0.0.1 
[Quidway-Serial0]interface serial 1
[Quidway-Serial1]physical-mode async
[Quidway-Serial1]modem
[Quidway-Serial1]dialer enable-legacy
[Quidway-Serial1]dialer-group 1
[Quidway-Serial1]ppp authentication pap
[Quidway-Serial1]ip aDCCess 2.0.0.2 255.0.0.0
[Quidway-Serial1]remote aDCCess 2.0.0.1

以上是H3C的配置,主要想理解接受方的配置,可以看出,接受方只需要使能DC功能,同时根据需要给对方配置IP和PPP认证就行了,没有对方拨号串的配置及验证。

轮询DCC与共享DCC两者的二次路由过程一样,采用的接口一样以及支持的特性功能一样。不同之处,轮询DCC中,一个物理端口只能被一个dialer bundle使用,在dialer口上配置的DCC参数,作用于所有包含在该dialer bundle中的物理端口,所有通过这些物理端口建立的呼叫都采用同一组DCC配置参数。共享DCC允许物理端口的配置与一个呼叫的逻辑配置分开进行,其为每个不同目的地址或不同属性的呼叫建立独自的逻辑配置属性(dialer profile),每个dialer interface对应于一种呼叫配置。物理端口与dialer interface的逻辑配置在需要建立呼叫时才动态的捆绑在一起。

一个dialer profile包括以下元素:

● 一个dialer interface的配置,是一个逻辑端口的配置,包括一个IP网络地址,用以表明该接口所建立呼叫的目的网络;和一个dialer string,供拨号使用,用于到达一个目的网络。
● dialer interface的特性,如idle-timeout等。
● 一个dialer bundle,是物理端口的集合,并且有优先级,由dialer interface使用。

在一个dialer profile中,dialer interface、dialerbundle和物理端口之间的关系:

去往同一个目的网络的所有呼叫使用同一个dialer profiles。

每个dialer interface使用一个dialer bundle,一个dialer bundle中的每一个物理端口都具有不同的优先级。一个物理端口可以属于不同的dialer bundle。

一个dialer interface只能使用同一个dialer bundle,一个物理端口可以是几个dialer bundle的成员,一个dialer bundle可以包含一个或多个物理端口。

共享DCC配置步骤:

设置DCC端口的拨号触发条件:dialer-rule。
创建一个dialer interface,为其指定IP地址,拨号串,dialer bundle等参数。
定制dialer interface的DCC特性。
配置物理接口,使它成为dialer bundle的成员。

一个路由器中可以创建任意多个dialer interface,每个dialer interface包含到达一个目的网络所需的所有配置。

共享DCC中,IP地址所在网段为此dialer interface的目的网段,此IP地址将由使用该逻辑端口的物理接口继承。

如上图,可以配置一个串口,使其既可以用来拨号Internet,又可用来拨号连接远端的路由器,如局域网微机A可通过路由器A访问Internet或与远端路由器B拨号相连,假定用户通过163特服号访问Internet,其注册的用户名为163,口令163.

(1)路由器A配置:

[Quidway]acl 1
[Quidway-acl-1]rule deny source any
[Quidway-acl-1]rule permit source 20.0.0.0 0.0.0.255
[Quidway]dialer-rule 1 ip permit
[Quidway]local-user userb password simple userb
[Quidway]local-user userc password simple userc
[Quidway]interface ethernet 0
[Quidway-Ethernet0]ip aDCCess 20.0.0.1 255.0.0.0
[Quidway-Ethernet0]interface dialer 0
[Quidway-Dialer0]ip aDCCess 1.0.0.1 255.0.0.0
[Quidway-Dialer0]dialer bundle 1
[Quidway-Dialer0]dialer user userb
[Quidway-Dialer0]dialer-group 1
[Quidway-Dialer0]ppp authentication pap
[Quidway-Dialer0]ppp pap local usera password simple passa
[Quidway-Dialer0]dialer number 8810048
[Quidway-Dialer0]inte rface dialer 1
[Quidway-Dialer1 ]ip aDCCess ppp-negotiate
[Quidway-Dialer1 ]nat outbound 1  interface
[Quidway-Dialer1 ]ppp authentication pap
[Quidway-Dialer1 ]dialer bundle 2
[Quidway-Dialer1 ]dialer user userc
[Quidway-Dialer1 ]dialer-group 1
[Quidway-Dialer1 ]ppp pap local-user user163 password simple pass163
[Quidway-Dialer1 ]dialer number 163
[Quidway-Dialer1 ]interface serial 0
[Quidway-Serial0]physical-mode async
[Quidway-Serial0]modem
[Quidway-Senal0] dialer bundle-member 1
[Quidway-Serial0] dialer bundle-member 2             :J:
[Quidway-Serial0]link-protocol ppp
[Quidway-Serial0]ppp authentication pap
2) 配置路由器B:
[Quidway]dialer-rule 1 ip permit
[Quidway]local-user usera password simple passa
[Quidway]ip route 20.0.0.0 255.0.0.0 1.0.0.1
[Quidway]interface dialer 0
[Quidway-Dialer0]ip aDCCess 1.0.0.2 255.0.0.0
[Quidway-Dialer0]dialer bundle 1
[Quidway-Dialer0]dialer user usera
[Quidway-Dialer0]dialer number 8810052
[Quidway-Dialer0]dialer-group 1
[Quidway-Dialer0]ppp authentication pap
[Quidway-Dialer0]ppp pap local-user userb password simple passb
[Quidway-Dialer0]interface serial 0
[Quidway-Serial0]physical-mode async
[Quidway-Serial0]modem
[Quidway-Serial0]dialer bundle-member 1
[Quidway-Serial0]link-protocol ppp
[Quidway-Serial0]ppp authentication pap
3) 配置路由器 C(模拟接入服务,用轮询DCC配置):
[Quidway]dialer-rule 1 ip permit
[Quidway]local-user 163 password simple 163
[Quidwaylp pool 1  2.0.0.1  2.0.0.3
[Quidway]interface dialer 0
[Quidway-Dialer0]ip aDCCess 2.0.0.2 255.0.0.0
[Quidway-Dialer0]remote aDCCess pool 1
[Quidway-Dialer0]dialer enable-legacy
[Quidway-Dialer0]dialer-group 1
[Quidway-Dialer0]link-protocol ppp
[Quidway-Dialer0]ppp authentication pap
[Quidway-Dialer0]ppp pap local-user userc password simple passc
[Quidway-Dialer0]interface serial 0
[Quidway-Serial0]pahysical-mode async
[Quidway-Serial0]modem
[Quidway-Serial0]dialer circular-group 0

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/kaoa000/article/details/109236392

智能推荐

攻防世界_难度8_happy_puzzle_攻防世界困难模式攻略图文-程序员宅基地

文章浏览阅读645次。这个肯定是末尾的IDAT了,因为IDAT必须要满了才会开始一下个IDAT,这个明显就是末尾的IDAT了。,对应下面的create_head()代码。,对应下面的create_tail()代码。不要考虑爆破,我已经试了一下,太多情况了。题目来源:UNCTF。_攻防世界困难模式攻略图文

达梦数据库的导出(备份)、导入_达梦数据库导入导出-程序员宅基地

文章浏览阅读2.9k次,点赞3次,收藏10次。偶尔会用到,记录、分享。1. 数据库导出1.1 切换到dmdba用户su - dmdba1.2 进入达梦数据库安装路径的bin目录,执行导库操作  导出语句:./dexp cwy_init/[email protected]:5236 file=cwy_init.dmp log=cwy_init_exp.log 注释:   cwy_init/init_123..._达梦数据库导入导出

js引入kindeditor富文本编辑器的使用_kindeditor.js-程序员宅基地

文章浏览阅读1.9k次。1. 在官网上下载KindEditor文件,可以删掉不需要要到的jsp,asp,asp.net和php文件夹。接着把文件夹放到项目文件目录下。2. 修改html文件,在页面引入js文件:<script type="text/javascript" src="./kindeditor/kindeditor-all.js"></script><script type="text/javascript" src="./kindeditor/lang/zh-CN.js"_kindeditor.js

STM32学习过程记录11——基于STM32G431CBU6硬件SPI+DMA的高效WS2812B控制方法-程序员宅基地

文章浏览阅读2.3k次,点赞6次,收藏14次。SPI的详情简介不必赘述。假设我们通过SPI发送0xAA,我们的数据线就会变为10101010,通过修改不同的内容,即可修改SPI中0和1的持续时间。比如0xF0即为前半周期为高电平,后半周期为低电平的状态。在SPI的通信模式中,CPHA配置会影响该实验,下图展示了不同采样位置的SPI时序图[1]。CPOL = 0,CPHA = 1:CLK空闲状态 = 低电平,数据在下降沿采样,并在上升沿移出CPOL = 0,CPHA = 0:CLK空闲状态 = 低电平,数据在上升沿采样,并在下降沿移出。_stm32g431cbu6

计算机网络-数据链路层_接收方收到链路层数据后,使用crc检验后,余数为0,说明链路层的传输时可靠传输-程序员宅基地

文章浏览阅读1.2k次,点赞2次,收藏8次。数据链路层习题自测问题1.数据链路(即逻辑链路)与链路(即物理链路)有何区别?“电路接通了”与”数据链路接通了”的区别何在?2.数据链路层中的链路控制包括哪些功能?试讨论数据链路层做成可靠的链路层有哪些优点和缺点。3.网络适配器的作用是什么?网络适配器工作在哪一层?4.数据链路层的三个基本问题(帧定界、透明传输和差错检测)为什么都必须加以解决?5.如果在数据链路层不进行帧定界,会发生什么问题?6.PPP协议的主要特点是什么?为什么PPP不使用帧的编号?PPP适用于什么情况?为什么PPP协议不_接收方收到链路层数据后,使用crc检验后,余数为0,说明链路层的传输时可靠传输

软件测试工程师移民加拿大_无证移民,未受过软件工程师的教育(第1部分)-程序员宅基地

文章浏览阅读587次。软件测试工程师移民加拿大 无证移民,未受过软件工程师的教育(第1部分) (Undocumented Immigrant With No Education to Software Engineer(Part 1))Before I start, I want you to please bear with me on the way I write, I have very little gen...

随便推点

Thinkpad X250 secure boot failed 启动失败问题解决_安装完系统提示secureboot failure-程序员宅基地

文章浏览阅读304次。Thinkpad X250笔记本电脑,装的是FreeBSD,进入BIOS修改虚拟化配置(其后可能是误设置了安全开机),保存退出后系统无法启动,显示:secure boot failed ,把自己惊出一身冷汗,因为这台笔记本刚好还没开始做备份.....根据错误提示,到bios里面去找相关配置,在Security里面找到了Secure Boot选项,发现果然被设置为Enabled,将其修改为Disabled ,再开机,终于正常启动了。_安装完系统提示secureboot failure

C++如何做字符串分割(5种方法)_c++ 字符串分割-程序员宅基地

文章浏览阅读10w+次,点赞93次,收藏352次。1、用strtok函数进行字符串分割原型: char *strtok(char *str, const char *delim);功能:分解字符串为一组字符串。参数说明:str为要分解的字符串,delim为分隔符字符串。返回值:从str开头开始的一个个被分割的串。当没有被分割的串时则返回NULL。其它:strtok函数线程不安全,可以使用strtok_r替代。示例://借助strtok实现split#include <string.h>#include <stdio.h&_c++ 字符串分割

2013第四届蓝桥杯 C/C++本科A组 真题答案解析_2013年第四届c a组蓝桥杯省赛真题解答-程序员宅基地

文章浏览阅读2.3k次。1 .高斯日记 大数学家高斯有个好习惯:无论如何都要记日记。他的日记有个与众不同的地方,他从不注明年月日,而是用一个整数代替,比如:4210后来人们知道,那个整数就是日期,它表示那一天是高斯出生后的第几天。这或许也是个好习惯,它时时刻刻提醒着主人:日子又过去一天,还有多少时光可以用于浪费呢?高斯出生于:1777年4月30日。在高斯发现的一个重要定理的日记_2013年第四届c a组蓝桥杯省赛真题解答

基于供需算法优化的核极限学习机(KELM)分类算法-程序员宅基地

文章浏览阅读851次,点赞17次,收藏22次。摘要:本文利用供需算法对核极限学习机(KELM)进行优化,并用于分类。

metasploitable2渗透测试_metasploitable2怎么进入-程序员宅基地

文章浏览阅读1.1k次。一、系统弱密码登录1、在kali上执行命令行telnet 192.168.26.1292、Login和password都输入msfadmin3、登录成功,进入系统4、测试如下:二、MySQL弱密码登录:1、在kali上执行mysql –h 192.168.26.129 –u root2、登录成功,进入MySQL系统3、测试效果:三、PostgreSQL弱密码登录1、在Kali上执行psql -h 192.168.26.129 –U post..._metasploitable2怎么进入

Python学习之路:从入门到精通的指南_python人工智能开发从入门到精通pdf-程序员宅基地

文章浏览阅读257次。本文将为初学者提供Python学习的详细指南,从Python的历史、基础语法和数据类型到面向对象编程、模块和库的使用。通过本文,您将能够掌握Python编程的核心概念,为今后的编程学习和实践打下坚实基础。_python人工智能开发从入门到精通pdf

推荐文章

热门文章

相关标签