cisco设备的启动要点:

1、检测硬件(保存在rom)

2、载入软件(IOS)(保存在Flash)

3、调入配置文件(密码,IP地址,路由协议都保存在此)(此文件保存在NVRAM)



0x2102:正常调入配置文件到内存中

0x2142:不调入配置文件到内存中



即表示  
 :第六位(bit6)=0时就调入:第六位(bit6)=1时就不调入



CISCO设备的文件系统:

RAM/NVRAM/FLASH/TFTP



LAB1:路由器文件的备份:

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

step1:按图连接好电源线,Console,Ether-Net网线。



step2:配置IP地址,确认连接的正确性,并运行数据通信测试。



step3:在本机运行TFTP Server(TFTP是UDP的69号端口)(tftpd32)



step4:察看FLASH中的IOS文件

ROUTER#show flash:

ROUTER#dir
flash:      
(":"表示一个设备,有时不打会出问题)



step5:

ROUTER#dir nvram (察看nvram中有哪些文件)

ROUTER#more nvram :startup-config(具体察看某个文件的内容)



step6:

ROUTER#copy flash:tftp:

ROUTER#copy nvram:startup-config tftp



LAB2:路由器的文件升级

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

step1/2/3 与LAB1完全一致



step4:

ROUTER#copy tftp:flash:



2140 表进入ROMMON模式(按ctrl+break进入)

2141 表进入MINI IOS模式

2142 表进入正常模式



LAB3:路由器的密码恢复

step1:与lab1完全一致(无需网线)



step2:配置路由器的密码

config t

enable password cisco1

enable secret cisco2



step3:保存配置

  
 (将当前的内存中的配置信息,保存到NVRAM中的start-config)

copy run..start-config

write



step4:将配置寄存器设置为0x2102,在线路由器的标准配置

R1(config)#config-register 0x2102



step5:当忘记了密码时,就在启动路由器的5秒内按CTRL+BREAK,进入ROMMON模式

>

>

>



step6:

>o  察看当前寄存器的取值

>o/r 0x2142 修改寄存器取值为0x2142



step7:

>i  重启路由器



step8:

在system configuration dialog 中输入no



step9:

ROUTER#dir nvram

ROUTER#more nvram:startup-config



step10:

将startup-config copy到内存中

ROUTER#copy nvram:startup-config running-config

(通过手工将startup-config copy 到running-config时,接口全是关闭的,需要手工打开)



step11:删除原密码

R1(config)#no enable passwor

R1(config)#no enable secret



step12:将所有需要工作的接口,手工打开

R1(config)#int e0

R1(config-if)#no shut



step13:

R1#config-register 0x2102



step14:保存配置

R1#copy running-config startup-config

R1#write



LAB4:交换机的文件备份

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

step1:按图连接好电源线,Console Eether网线



step2:配置IP地址,确认连接的正确性,并进行数据通信测试

switch(config)#int vlan 1

switch(config)#ip add 192.168.1.180 255.255.255.0

switch(config)#no shut



step3:在本机运行tftp



step4:备份交换机的IOS

switch#copy flash:c........... tftp:



备份交换机的配置文件

switch#copy flash:config.text tftp:



LAB5:交换机的IOS的升级

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

step1/2/3 与LAB1完全一致



step4:升级IOS

switch#copy tftp:flash:



LAB6:交换机的密码恢复:

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
step1:先连接好Console,将交换机断电,然后按着交换机上的“MODE”不放,再重新接入电源,直到控制界面出现

    
交换机初始化失败为止,然后跟着它要求的初始化步骤执行



step2:对flash进行初始化

switch:flash_init

switch: load_helper

switch: dir flash: 查找flash中的config.text

switch: rename flash:config.text flash:co.t (将配置文件改名)



step3:让交换机继续启动,进入空白配置的交换机

switch:boot



step4:把配置文件copy到内存

switch#copy flash:co.t running-config



step5:删除原密码

switch(config)#no enable password

switch(config)#no enable secert



step6:打开交换机的接口(因为手工加入的是关闭的)

int vlan 1

no shut



step7:保存

switch#write





step8:删除不需要的原配置文件

switch#delete flash:co.t





switch交换的三种方式:

1、直通式:交换机一收到数据帧就立刻开始转发

2、存储转发:交换机要完整地接收到数据帧,并且经过校验后,才开始转发

3、Fragment-free:交换机对接收到是前64BYTES,进行校验,如果正确就开始转发。



交换机的地址学习:(交换机MAC表)

交换机总是学习数据帧的源地址(MAC),将此地址与进入与进入交换机的端口进行映射。



交换机对于数据帧的转发:

1、如果目标MAC是单播地址,交换机就按照MAC表进行单播。(已知MAC)

  
 (除了目标MAC所对应的那个接口,之外的所有接口,都是不转发数据帧的)

2、如果目标MAC是组播/广播地址,交换机就会向除了入口以外的接口进行广播。

3、如果目标MAC是单播地址,但是交换机没有此MAC的对应映射端口,交换机就会

   向除了入口以外的接口进行广播。(未知MAC)

4、如果目标MAC地址是单播地址,但此目标MAC所对应的接口就是数据帧进入交换机的端口,交换机会丢弃数据帧。



在BPDU信息当中有一段区域叫做bridge ID,Bridge ID=bridge
priority(优先级)+MAC(相加之和),交换机缺省

优先级为32768(16进制为8000)。如果两个bridge ID相等将以MAC地址为准,以MAC地址最小的bridge
ID值就小



当交换机运行stp协议,交换机的端口会存在如下状态 :

blocking(阻塞)、listening(监听)、learning(学习)、forwarding(转发)



blocking(阻塞)--listening(监听) 间隔20秒时间

listening(监听)--learning(学习) 间隔15秒时间

learning(学习)--forwarding(转发)间隔15秒时间

从listening到forwarding所经历的时间被称作转发延迟(默认30秒)



port在各个状态的功能:

blocking:不能接收转发任何数据

listening:不能接收转发数据,但是可以接收BPDU信息

learning:不能接收转发数据,但是能够通过接收BPUU信息创建MAC地址表

forwarding:可以接收转发数据







LAB7:交换机的基本配置

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

step1:为交换机配置网管ip(本网段网管)

SW1(config#)int vlan 1

           
ip add 192.168.1.1 255.255.255.0

           
no shut



step2:配置交换机的网关:(跨网段网管)

SW1(config)#ip default-gateway 192.168.1.10



step3:控制接口的速率

SW1(config)#int f0/1

  
      
switchport mode access(接入链路,一般连接主机)

  
   
 speed 10

  
   
 speed 100

  
   
 speed auto(默认)



step4:控制接口的双工模式:

sw1(config-if)#depulex full

sw1(config-if)#depulex half

sw1(config-if)#depulex auto(默认)



LAB8:Port/Security (端口安全)

step1:

sw1(config)#int f0/2

  
   
 switchport mode access(接入链路)

  
   
 switchport port-security(启动端口安全)

  
   
 switchport port-security mac-address
00c0.abcd.1234(绑定一个MAC)

  
   
 switchport port-security violation
shutdown(关闭接口,上报)

  
   
 switchport port-security violation
restrict(不转发数据,上报)

  
   
 switchport port-security violation
protect(不转发数据)



step2:在一个端口上绑定多个MAC地址

  
   
 switchport port-security macimum 3

  
   
 switchport port-security mac-address
00c0.abcd.1234

  
   
 switchport port-security mac-address
00c0.abcd.1235

  
   
 switchport port-security mac-address
00c0.abcd.1236



step3:  
   
 

  
   
 switchport port-security maximun 100

  
   
 switchport port-security mac-address sticky







VLAN:

实现vlan的主要目的:(segmentation)将网络分片,减少每个网络的规模,即缩减每一个广播域的大小。

一个vlan,对应着一个广播域,对应着一个逻辑子网:A VLAN=A Broadcast domain=logical
network(subnet)



HUB:所有端口都在一个冲突域,一个广播域中;

Switch:一个端口对应一个冲突域,所有端口都在一个广播域中;

Router:一个端口对应一个冲突域,一个端口对应一个广播域;



交换环境中的2 种连接类型:

1.access links:指的是只属于一个VLAN,且仅向该VLAN 转发数据帧的端口,也叫做native
VLAN.switches 把帧发送到

access-link 设备之前,移去任何的VLAN 信息.而access-link 设备不能与VLAN
外通信,除非数据包被路由



2.trunk links:指的是能够转发多个不同VLAN 的通信的端口.trunk link 必须使用100Mbps
以上的端口来进行点对点

连接,1 次最多可以携带1005 个VLAN 信息.trunk link 使你的单独的1个端口同时成为数个VLAN
的端口,这样可以不需

要层3 设备.当你在switches 之间使用了trunk link,多个VLAN 的信息将从这个连接上通过;如果在你switches
之间没

有使用 trunk link而使用一般的连接,那么只有VLAN1 的信息通过这个连接被互相传递.VLAN1
默认作为管理VLAN。



vlan分类:

静态Vlan

动态Vlan



sw1(config)#default int fa0/1(让一个接口恢复默认配置)



LAB9:静态Vlan的创建,修改,删除

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

step1:观察Vlan的配置信息:

SW1#sh vlan brief (默认情况下,交换机的所有的端口都在vlan 1)

pc2#sh arp



pc2#debug arp



pc2在ping通pc1后再观察“sh arp”



step2:创建vlan:

sw1#conf t

    vlan
10(创建vlan10)



sh vlan brief观察



step3:将端口放入vlan 10:

sw1(config)#int f0/1

           
switchport access vlan 10

测试:

在pc2上再ping pc1,无法ping通!

(在不同vlan中的用户,默认是不能通信的)



step4:

sw1(config)#int f0/2

  
      
switchport access vlan 10



此之后再进行测试,可通;(证明相同的vlan中的用户是可以互通的)



step5:修改vlan:

sw1(config)#vlan 10

sw1(config-vlan)#name ENG

sw1(config-vlan)#EXIT



sw1(config)#VLAN 20

sw1(config-vlan)#name sale

sw1(config-vlan)#exit



step6:删除vlan

sw1(config)#no vlan 20



LAB10:vlan间的路由

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

step1:按图配置vlan,ip



step2:将R1/R2的路由能力关闭

pc2(config)#no ip routing

pc1同上



step3:在多层交换上,创建两个与VLAN一一对应的vlan接口,以此两接口作为两个vlan的网关

sw1(config)#int vlan 10

sw1(config-if)#ip add 192.168.10.100 255.255.255.0

sw1(config-if)#no shut



sw1(config)#int vlan 20

sw1(config-if)#ip add 192.168.20.100 255.255.255.0

sw1(config-if)#no shut



step4:

所有在VLAN10中的网关,都以if vlan 10 为网关:

pc1(config)#ip default-gateway 192.168.10.100



所有在VLAN20中的网关,都以if vlan 20 为网关:

pc2(config)#ip default-gateway 192.168.20.100



测试:每个用户都必需ping通自己的网关!!!!!!!



step5:启动交换机的路由能力:

sw1(config)#ip routing



sw1#sh ip route



step6#不同vlan间的用户数据通信

测试:两个pc互通!!!!!!!!!





 Trunk:

在一条网络介质(网线/光纤)上,同时传输多个vlan的信息



trunk的种类:

1、cisco的私有标准:ISL

2、开放性的业界标准:802.1Q



LAB11:TRUNK

step1:

802.1Q的Trunk:

int f0/21

switchport trunk encapsulation dot1q

switchport mode trunk



ISL的Trunk:

int f0/21

switchport trunk encapsulation isl

switchport mode trunk



两个交换机配置相同。



step2:察看Trunk链路的连接状态:

SW1#sh int trunk



step3:

pc3(config)#ip default-gateway 192.168.10.100



PC3设置了网关后,可以实现跨vlan,跨交换机的通信的。



VTP(VLAN Trunk Protocol)

vtp只是用于构建富有效率的,便于管理的Vlan的网络

(让网络中的一个交换机VTP Server设定好Vlan信息,别的交换机都自动从这个交换机这里,动态地学习到VLAN信息)

cisco私有的协议

vtp信息,只能在trunk链路上传输。



VTP 是Cisco 创建的,但是现在已经不为Cisco 所私有.VTP 的主要目的是在一个交换性的环境中管理所有配置好的VLAN
使所有的VLAN 保持一致性VTP,允许增加,删除和重命名VLAN,然后这些修改后的信息传播到整个VTP 域里的所有switches
上。



LAB12:VTP

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

step1:确定网络中的VTP Server/Client

sw1(config)#vtp mode server

sw2(config)#vtp mode client



step2:确定在一个相同VTP域名:(CCNA)

sw2(config)#vtp domain CCNA



注意:所有vtp信息在sh run是看不到的



step3:检查vtp:

sw1/2#sh vtp status



step4:观察VTP信息的同步过程:

通过添加vlan观察版本号

Configuration Revision 2



当每改动一个属性时(如增加vlan,删除vlan,改名等动作),版本号就会改变







STP(Spanning-Tree Protocol)

1、每个交换网络,都有一个根桥(根交换机:BID最小的交换机)

2、每个非根桥,都只有一个根端口。(根端口即是去往根桥开销最小的端口)

3、每条网络介质,都必定有一个指定端口。(指定端口,根端口都是转发数据包的)

4、除了指定端口,根端口以外的端口,都被堵塞,不转发数据包。





LAB13:STP根桥的选定

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

所有交换机默认的BID优先级都是0x8000(32768)



step1:察看各个交换机的MAC地址

sw1#sh version

Base ethernet MAC Address:00:0F:.......



step2:察看优先级:

sw1#sh spanning-tree vlan 1

    Bridge id
priority 32768 (priority 32768 sys-id-ext 1)

 

step3:控制交换网络的根桥:

根桥:

sw1(config)#spanning-tree vlan 1 root primary(24576/0x6000)

备份根桥:

sw2(config)#spanning-tree vlan 1 root secondary(28672/0x7000)



sw1#sw1#sh spanning-tree vlan 1



通过spanning-tree vlan 1 priority 4096(0x1000)直接更改优先级





R1#sh controllers serial 1查看是DTE还是DCE!!!!



CDP

LAB1:CDP

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

step1:

R1#sh cdp neighbors



step2:在接口级别控制CDP的运行:

R3(config)#int s1

R3(config-if)#cdp enable(启动接口的CDP能力,默认)

R3(config-if)#no cdp enable(关闭接口CDP)



step3:在全局上,控制所有接口CDP运行

R3(config)#cdp run(在全局上启动CDP)

R3(config)#no cdp run(在全局上关闭CDP)



step4:

SW1#sh cdp neighbors detail

SW1#sh cdp neighbors f0/1 detail



CDP timer:CDP 包传给每个活跃接口的时间间隔,默认是60 秒 ,即每60s发送一次cdp更新

CDP holdtime:某设备从相邻设备收到的包的保持时间,默认是180 秒





Telnet:通过Telnet,实现远程网管



LAB2:Telnet

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

step1:

在进行telnet之前,首先确认能够与被telnet的设备正常通信(ping)



step2:

R1#ping 192.168.10.2!!!!!!!!!!!!!!!!!!!!!



step3:

R1#telnet 192.168.10.2(不成功)

出现这些字样:Password required,but none set(原因:VTY没有设置密码)



解决办法:

R2(config)#line vty 0 4

R2(config-line)#password 1234

R2(config-line)#login

R2(config-line)#exit



step4:再telnet

R1#telnet 192.168.10.2(此时只能进入用户模式,因为没有设置enable密码)

出现这些字样: User Access Verification

   
   
   
password:1234

R2>

R2>

R2>en

此时无法进入,因为R2没设enable密码



step5:第三次再R2设置了enable后,再telnet

R2(config)#enable password cisco



R1#telnet 192.168.10.2

Trying 192.168.10.2  Open



password:



R2>

R2>

R2>en

password:



R2#



R2#exit



回到R1



step6:对交换机的Telnet是一样操作的,即在交换机上也需先设line密码,enable密码



step7:察看已连接的telnet进程:

7-1:在telnet发起方,察看自己发起的进程

R1#sh  sessions

Conn    
host

 * 1  192.168.10.29

*表示此telnet是活动的  



7-2:在被telnt方,察看自己被telnet的进程

sw2#sh users

Line     
users      
host(s)      
idle    
location

1 vty
0              
idle                  
192.168.10.1



step8:发起telnet的设备,临时“挂起”(回到本设备上):(telnet进程是没有中断的)



用快捷键可临时挂起:1、ctrl+shift,不松手再按6;

                  
2、松手后再按下 ‘x’

               
通过这两步就可以在telnet时临时挂起。

         
当想回到被telnet的机器上时,只需在特权模式下按下“回车”即可回到被telnet方。



step9:彻底中断telnet

9-1:发起方主动中断:



sw2#

sw2#exit

R1#



即用“exit”即可中断



也可用R1#disconnect 1 选择性的中断某一条telnet



9-2:被telnet方强制中断

sw2#clear line 1

[confirm]

 [ok]

sw2#



step10:在多个被telnet设备之间进行切换:

R1#sh sessions

conn   host


1   
192.168.10.2

  
2   
192.168.10.29



R1#2

就可进入ip地址为192.168.10.29的主机。





ACL/访问列表

主要作用:控制数据包,对其进行过滤。

还可以完成:QOS,DDR,路由过滤;



ACL的分类:

标准ACL:控制数据包的源IP地址。

          
1~99,(1300~1999)



扩展ACL:控制数据包的源IP,目标IP,协议号,源端口口,目标端口号.....

          
100~199,(2000~2699)



命名ACL(标准/扩展ACL)

CCNA基础知识摘录的更多相关文章

  1. Map/Reduce应用开发基础知识-摘录

    Map/Reduce 这部分文档为用户将会面临的Map/Reduce框架中的各个环节提供了适当的细节.这应该会帮助用户更细粒度地去实现.配置和调优作业.然而,请注意每个类/接口的javadoc文档提供 ...

  2. http基础知识摘录

    HTTP是一个基于请求/响应模式的,无状态的协议 (只有客户端发送请求服务器才会响应,否则服务器不会主动发送信息的,无状态指客户端发过来一个请求服务端给你发回一个响应,接着你再去发送一个请求,服务器根 ...

  3. Quartz.NET基础知识概述

    Quartz.NET是什么 由于我现在使用的Quartz.NET2.2版本,相对2.x变化不大,主要是相对于1.x更新了很多东西,如下基础知识摘录网络. Quartz.NET是一个开源的作业调度框架, ...

  4. CCNA的基础知识及要点

    一.CCNA中的基础知识及要点: 2.网线的制作:568B:橙白,橙,绿白,蓝,蓝白,绿,棕白,棕 568A的排线顺序从左到右依次为:白绿.绿.白橙.蓝.白蓝.橙.白棕.棕.实验目的:初学者常为做网线 ...

  5. Java基础知识【下】( 转载)

    http://blog.csdn.net/silentbalanceyh/article/details/4608360 (最终还是决定重新写一份Java基础相关的内容,原来因为在写这一个章节的时候没 ...

  6. Runtime系列(一)-- 基础知识

    众所周知,Objective-C 是一种运行时语言.运行时怎么来体现的呢?比如一个对象的类型确定,或者对象的方法实现的绑定都是推迟到软件的运行时才能确定的.而运行时的诸多特性都是由Runtime 来实 ...

  7. [源码解析] 深度学习分布式训练框架 Horovod (1) --- 基础知识

    [源码解析] 深度学习分布式训练框架 Horovod --- (1) 基础知识 目录 [源码解析] 深度学习分布式训练框架 Horovod --- (1) 基础知识 0x00 摘要 0x01 分布式并 ...

  8. .NET面试题系列[1] - .NET框架基础知识(1)

    很明显,CLS是CTS的一个子集,而且是最小的子集. - 张子阳 .NET框架基础知识(1) 参考资料: http://www.tracefact.net/CLR-and-Framework/DotN ...

  9. RabbitMQ基础知识

    RabbitMQ基础知识 一.背景 RabbitMQ是一个由erlang开发的AMQP(Advanced Message Queue )的开源实现.AMQP 的出现其实也是应了广大人民群众的需求,虽然 ...

随机推荐

  1. python3.6成功安装scrapy

    本文基于环境:win10(64)+python3.6(64) 第一次直接pip install scrapy,安装出错,错误提示 error: Microsoft Visual C++ 14.0 is ...

  2. (6)UIView常见属性二

    例如创建一个view视图,view是最纯洁的控制,必须得指定它的位置,而不像其他的控件像UISwitch默认都有一个位置 在viewDidLoad方法中打印它的位置: 将控件放入一个视图中,只需移动白 ...

  3. Vue模板内容

    前面的话 如果只使用Vue最基础的声明式渲染的功能,则完全可以把Vue当做一个模板引擎来使用.本文将详细介绍Vue模板内容 概述 Vue.js使用了基于HTML的模板语法,允许声明式地将DOM绑定至底 ...

  4. Open-Falcon第一步环境准备(小米开源互联网企业级监控系统)

    1.环境安装 本文采取rpm安装方式,大家也可以用源码包安装. wget http://download.fedoraproject.org/pub/epel/6/i386/epel-release- ...

  5. android四大组件学习总结以及各个组件示例(1)

    android四大组件分别为activity.service.content provider.broadcast receiver. 一.android四大组件详解 1.activity (1)一个 ...

  6. 开机出现Oxc000000e故障的解决方法

    Oxc000000e故障 故障表现:开机时不能正常地登录系统,而是直接弹出图2所示的Oxc000000e故障提示. 原因分析:由于安装或卸载某些比较特殊的软件,往往会对Win7的引导程序造成非常严重的 ...

  7. HTML5基本标签

    一.HTML5文档类型说明  二.head部分-基本标签1.<head>标签head中主要放关于网页设置的相关语句.   2.<title>标签  3.<link> ...

  8. 浅谈C#中的斐波拉契数列

    突然对那些有趣的数学类知识感兴趣了,然后就简单研究了一下斐波拉契数列,看看它的有趣之处! 斐波拉契数列(Fibonacci Sequence),又称黄金分割数列,该数列由意大利的数学家列奥纳多·斐波那 ...

  9. How to resolve the truncate/drop/delete/join hang issue in ADW

    In some case, we found that when we execute the sql commands like truncate table, drop table, delete ...

  10. 包含常用功能的 gulpfile.js

    相关包安装 建议使用cnpm npm install --save-dev ***** 其中 ***** 部分表示所需要的包模块,如 gulpfile 中的 require('gulp-useref' ...