-----------------------------------------------------------------------
Routing TCP/IP Volume 1,Second Edition
------------------------------------------------------------------------
Routing TCP/IP Volume 2
-----------------------------------------------------------------------
-----------------------------------------------------------------------
Routing TCP/IP Volume 1,Second Edition
1. TCP/IP 回顾
OSI TCP/IP
应用层 应用层
表示层
会话层
传输层 主机到主机层
网络层 Internet层
数据链路层 网络接口层
物理层
一些众所周知的协议号
协议号 主机到主机层协议
1 Internet消息控制协议(ICMP)
2 Internet组管理协议(IGMP)
4 被IP协议封装的IP
6 传输层协议(TCP)
17 用户数据报协议(UDP)
45 域间路由选择协议(IDRP)
46 资源预留协议(RSVP)
47 通用路由封装(GRE)
54 NBMA下一跳解析协议(NHRP)
88 Cisco Internet网管路由选择协议(IGRP)
89 开放式最短路径优先(OSPF)
(config)#line vty 0 4
(config-line)#ip netmask-format [decimal | hexadecimal | bit-count]
#debug arp
常用的硬件类型码
编码 硬件类型
1 以太网
3 X.25
6 IEEE 802 网络
15 帧中继
16 异步传输模式(ATM)
17 高速数据链路控制(HDLC)
18 光纤信道
19 异步传输模式(ATM)
20 串行链路
#show arp
C:\windows>arp -a
Linux:~#arp -a
(config)#interface Ethernet 0
(config-if)#arp timeout 1800
(config)#arp 172.21.5.131 0000.00a4.b74c snap
//SNAP (Subnetwork Access protocl)
#clear arp-cache
(config-if)#no ip proxy-arp
(confif-if)#ip gratuitous-arps
#debug ip icmp
#no ip redirects
------------------------------------------------------------------
命令 | 描述
--------------------------------------------------------------------
arp ip-address hardware-address [alias] | 静态地映射IP地址到硬件地址
arp timeout seconds | 设置Cisco路由器保留ARP表项的时间值
clear arp-cache | 强制从ARP表中删除所有动态表项
debug ip icmp | 显示在路由器上出现的ICMP事件
ip address ip-address mask (secondary) | 为接口分配IP地址和掩码
ip gratuitous-arp | 启用无故ARP特性
ip netmask-format{bit-count|decimal|hexadecimal} | 配置路由器,使路由器可以用位计数,
| 点分十进制和十六进制方式表示IP(地址,掩码)对
ip proxy-arp | 启用代理ARP
ip redirects | 启用ICMP重定向功能
------------------------------------------------------------------------------
2. IPv6 概述
--------------------------------------------
报头 下一包头的值
逐跳可选项 0
路由选择 43
分段 44
封装安全有效载荷(ESP) 50
认证包头(AH) 51
目的地可选项 60
TCP/IP协议 由协议定义的协议号的值(例如 TCP=6,UDP=17,OSPF=89,等)
没有下一报头 59
C:\windows>ipv6 nc
#show ipv6 neighbors
C:\windows>ipv6 if 4
interface 4:Ethernet:Local Area Connetion 2
(config)#ipv6 unicast-routing
(config)#ipv6 nd ra-interval
(config)#ipv6 nd ra-lifetime
(config)#ipv6 nd reachable-time
(config)#ipv6 nd ns-interval
(config)#ipv6 nd managed-config-flag
(config)#ipv6 nd other-config-flag
(config-if)#ipv6 nd suppress-ra
(config-if)#ipv6 nd prefix
------------------------------------------------------
3. 静态路由
------------------------------------------------------
#show ip route
(config)#ip route 192.168.1.0 255.255.255.224 192.168.1.193
(config)#ip route 192.168.1.64 255.255.255.224 192.168.1.193
(config)#ip route 10.4.6.0 255.255.255.0 192.168.1.193
(config)#ip route 10.4.7.0 255.255.255.0 192.168.1.193
(config)#ip route 192.168.1.0 255.255.255.224 serial 0/0
(config)#ip route 10.4.7.0 255.255.255.0 serial 1/0
#show ip route
(config)#ip route 10.1.0.0 255.255.0.0 fastEthernet 0/1 192.168.1.194
#show ip route static
#show arp
(config)#ipv6 unicast-routing
#show cdp neighbor detail
#show ipv6 interface serial 0/0.1
(config)#ipv6 unicast-routing
(config)#interface serial 0/0.2 point-to-point
(config-if)#ipv6 address feco:0:0:3::/64 eui-64
(config)#ipv6 route feco::1:0:0:0:0/64 fec0::3:204:c1ff:fe50:f1c0
(config)#ipv6 route feco::a:0:0:0:0/64 fec0::3:204:c1ff:fe50:f1c0
#show ipv6 route
(config)#ipv6 route feco::a:0:0:0:0/64 serial 0/0.2
(config)#ipv6 route feco::8:0:0:0:0/64 fastEthernet 0/1 fe80::2b:64ff:1:1
#show ipv6 route static
(config)#ip route 192.168.1.0 255.255.255.0 192.168.1.193
(config)#ip route 10.4.0.0 255.255.0.0 192.168.1.193 //静态路由被汇总
(config)#ipv6 route feco::8:0:0:0:0/62 fec0::3:204:c1ff:fe50:f1c0 //汇总
#debug ip packet
//浮动静态路由(Floating Static Route)
(config)#ip route 10.4.0.0 255.255.0.0 10.1.10.1
(config)#ip route 10.4.0.0 255.255.0.0 10.1.20.1 50
(config)#ipv6 route fec0:0:0:5::/64 fec0::3:230:94ff:fe24:b780
(config)#ipv6 route fec0:0:0:5::/64 fec0::2:230:94ff:fe24:b780 50
#show ipv6 route static
//Equal-Cost Load Sharing/Unequal-Cost Load Sharing
(config)#ip route 10.1.30.0 255.255.255.0 10.1.10.2
(config)#ip route 10.1.30.0 255.255.255.0 10.1.20.2
#show ip route
#show ipv6 route static
#show ip cef
#show ipv6 cef
(config-if)#ip load-sharing per-packet
(config-if)#ip load-sharing per-destination
#show cef interface {interface}
#show ipv6 cef {interface} detail
#debug ip packet
(config)#interface fastethernet 0/1
(config-if)#no ip proxy-arp
or
(config)#arp 172.16.20.75 0002.6779.0f4c arpa
#show arp
#show ipv6 interface fastethernet 0/1
-----------------------------------------------------------------------
命令 | 描述
---------------------------------------------------------------------
arp ip-address hardware-address | 把IP类型(别名)地址静态地映射到硬件地址
debug ip packet | 显示有关接收,生成,转发IP数据包的信息。
| 而关于快速交换的数据包信息将不被显示
debug ipv6 packet | 显示有关接收,生成,转发IPv6 数据包的信息
ip cef | 为IPv4启用Cisco急速转发功能
ip load-sharing {per-packet|per-destination} | 在出站接口上配置负载均衡方式
ip proxy-arp | 启用代理ARP功能
ip route prefix mask {address|interface[next-hop-address]} [distance]
[permanent][name name][tag tag-number] | 向路由表添加静态路由
ip route-cache | 再接口上为IPv4配置交换高速缓冲的类型
ipv6 cef | 为Pv6启用Cisco急速转发功能。IPv4 的CEF功能必须在IPv6 CEF功能之前打开
ipv6 unicast-routing | 启用IPv6路由选择。缺省情况下IPv6 路由选择是关闭的
ipv6 route prefix/prefix-length {address|interface[next-hop-address]}
[distance][permanent][name name][tag tag-number | 静态添加IPv6路由
show cdp neighbor detail | 显示邻居路由器的IOS版本号以及IPv4和IPv6接口配置等信息
show ip cef | 显示CEF转发高速缓冲消息,包括CEF未启用消息
show ipv6 cef {interface} detail | 显示接口上CEF功能是否被打开
show ipv6 interface {interface} | 显示接口以及IPv6特定的接口信息
show ip route | 显示IP路由表
show ipv6 route | 显示IPv6路由表
-----------------------------------------------------------------------
4. 动态路由选择协议
---------------------------------------------------------------------
5. 路由选择信息协议(RIP)
--------------------------------------------------------------------
#show ip route
(config)#router rip
(config-router)#network 172.17.0.0
(config-router)#passive-interface fastethernet 0/1
(config-router)#neighbor 192.168.12.67
#debug ip rip
#debug ip rip events
(config)#interface fastethernet 0/0
(config-if)#ip address 10.33.55.2 255.255.240.0 secondary
(config)#offset-list {access-list-number|name}{in|out}offset[type number]
(config)#access-list 1 permit 10.33.0.0 0.0.0.0
(config)#router rip
(config-router)#network 10.0.0.0
(config-router)#network 192.168.12.0
(config-router)#offset-list 1 in 2 serial 0/0
#debug ip rip
(config)#interface serial 0/0
(config-if)#ip rip triggered //配置触发更新,而不是周期性的更新
#debug ip rip
#debug ip rip trigger
(config)#interface serial 0/1
(config-if)#ip rip triggered
-----------------------------------------------------------------
命令 | 描述
-----------------------------------------------------------------
debug ip rip [events] | 简要地显示路由器收发的RIP信息
ip address ip-address mask secondary | 在接口上指定一个IP地址作为辅助地址
ip rip triggered | 在某个接口上配置RIP的触发扩展特性
neighbor ip-address | 通过指定接口邻居的IP地址来建立邻接关系
network network-number | 指定一个需要运行RIP的网络
offset-list {access-list-number|name}{in|out} offset [type number]
| 指定路由表中一个与指定的访问列表匹配的
| 路由条目,将自己的度量值增加一个指定的
| 偏移量
output-delay delay | 指定一个指定延迟长度的延迟间隙,以便协调
| 高速路由器和低速路由器之间的延迟问题
passive-interface type number | 在指定类型和序列号的接口上阻止RIP广播
router rip | 启用RIP进程
timers basic update invalid holddown flush | 修改指定的计时器的值
--------------------------------------------------------------------
6. RIPv2,RIPng 和无类别路由选择
--------------------------------------------------------------------
(config)#router rip
(config-router)#version 2
(config-router)#network 172.25.0.0
(config-router)#no auto-summary
(config)#router rip
(config-router)#version 1
(config-router)#network 172.25.0.0
(config)#interface fastethernet 0/0
(config-if)#ip address 192.168.50.129 255.255.255.192
(config-if)#ip rip send version 1
(config-if)#ip rip receive version 1 2
(config-if)#no ip split-horizon //关闭水平分割
#debug ip rip
--------------------------------------------------
key chain Bruce
key 1
key-string Keychain1
accept-lifetime 16:30:00 Jul 1 2015 duration 43200
send-lifetime 16:30:00 Jul 1 2015 duration 43200
key 2
key-string Keychain2
accept-lifetime 12:30:00 Dec 31 2015 infinite
send-lifetime 12:30:00 Dec 31 2015 infinite
interface fastethernet 0/0
ip rip authentication key-chain Bruce
ip rip authentication mode md5
--------------------------------------------------
(config)#ipv6 unicast-routing
(config)#interface fastethernet 0/0
(config-if)#ipv6 address 2001:db8:0:6::1/64
(config-if)#ipv6 rip BigMountain enable
#show ipv6 route
(config)#ipv6 router rip SmallMountain
(config-router)#port 527 multicast ff02::9
(config)#ipv6 router rip BigMountain
(config-router)#port 521 multicast ff02::9 //缺省的RIPng端口号(UDP 521)
#show ipv6 rip
#show ipv6 route
#show ipv6 route rip
#debug ipv6 rip
(config)#ipv6 router rip BigMountain
(config-router)#timers 10 30 30 60
(config-rotuer)#maximum-paths 8
(config-router)#distance 200
#show ipv6 rip
(config)#ipv6 router rip BigMountain
(config-router)#no timers 10 30 30 60
(config-rotuer)#no maximum-paths 8
(config-router)#no distance 200
#show ipv6 route rip
(config)#interface fastethernet 1/0
(config-if)#ipv6 rip SmallMountain metric-offset 3
#show ipv6 route rip
(config)#interface fastethernet 0/0
(config-if)#ipv6 address 2001:db8:0:4::2/64
(config-if)#ipv6 rip BigMountain enable
(config-if)#ipv6 rip BigMountain summary-address 2001:db8:0:10::/62
#show ipv6 route rip
#debug ip rip events
linux:~#arp -a
#show ip route
---------------------------------------------------------------
命令 | 描述
---------------------------------------------------------------
accept-lifetime start-time {infinite|end-time|duration seconds}
| 设置一个时间段,用来指定钥匙链上的认证
| 钥匙可被接受的有效时间
auto-summary | 在网络边界打开或关闭自动路由汇总功能
debug ip rip [events] | 启动RIP处理消息的调试功能
debug ipv6 rip | 启动RIPng 处理消息的调试功能
ip classless | 使无类路由特性有效,即路由器能够找到最佳
| 的匹配路由去转发数据包到目的地址,而不考
| 虑到达目的地址的地址类别
ip rip authentication key-chain name-of-chain | 使接口上的RIPv2认证有效,并
| 指定一个所用的钥匙链的名字
ip rip authentication mode {text|md5} | 指定在一个接口上使用的是明文还是MD5认证
ip rip receive version [1|2] | 指定一个接口可以接收的RIP的版本
ip rip send version [1|2] | 指定一个接口可以发送的RIP的版本
ip split-horizon | 在接口上打开或关闭水平分割特性
ip subnet-zero | 允许接口的地址和路由选择更新使用全0子网
ipv6 rip process-name enable | 在使用该命令的接口上运行IPv6 RIPng进程,
| 并给它指定一个名字
ipv6 rip process-name metric-offset value | 更改与出站接口相关的度量值
ipv6 rip process-name summary-addres prefix | 把前缀长度较长的前缀汇总成较短的前缀
ipv6 router rip process-name | 在路由器上启用IPv6 RIPng 进程,并进入可以更改
| 全局RIPng参数的配置模式
port pot-num multicast multicast-value | 更改一个RIPng进程的UDP端口号和(或)多播地址
key number | 指定在钥匙链上的一个钥匙
key chain name-of-chain | 指定一组钥匙
key-string text | 指定钥匙使用的认证字符串或口令
network network-number | 指定覆盖一个和多个IGRP,EIGRP或RIP协议
| 进程的接口的网络地址
passive-interface type number | 使一个接口不再发送路由选择更新
router rip | 在路由器上启动RIP路由选择进程
send-lifetime start-time{infinite|end-time|duration seconds}
| 设置一个时间段,用来指定钥匙链上的认证
| 钥匙可被发送的有效时间
show ip route [address[mask][protocol][process-id] | 显示当前路由表的全部或某条路由
show ipv6 rip | 显示RIPng协议的信息
show ipv6 route rip | 显示通过RIPng协议注入到IPv6路由表中的路由信息
version | 指定RIP路由选择进程的版本号
-----------------------------------------------------------------------------------------
----------------------------------------------------------------------
7. 增强型内部网关路由选择协议(EIGRP)
-----------------------------------------------------------------
#show interfaces fastethernet 0/0
(config)#interface fastethernet 0/0
(config-if)#bandwidth 75000
(config-if)#delay 5
#show interfaces fastethernet 0/0
#show interface serial 1/1
#show ip route 172.20.40.0
(config-if)#ip hello-interval eigrp seconds
#show ip eigrp neighbors
#show ip eigrp topology
#show ip route
#debug eigrp packet update query reply
(config)#router eigrp 15
(config-router)#network 172.20.0.0
(config-router)#variance 5 //使用数值为5的差异变量来实现非等价负载均衡
(config-router)#maximum-paths 2
#clear ip rotue *
#show ip route
#debug eigrp neighbor
(config)#router eigrp 15
(config-router)#passive-interface fastethernet 0/1
(config-router)#network 172.20.0.0
(config)#router eigrp 10
(config-router)#passive-interface serial 0/0.1
(config-router)#passive-interface serial 0/0.2
(config-router)#network 10.0.0.0
#show ip eigrp neighbors
(config)#router eigrp 15
(config-router)#network 172.20.15.0 0.0.0.255
(config-router)#no auto-summary
(config-router)#eigrp stub
//eigrp stub {connected|redistributed|static|summary|receive-only}
#show ip eigrp neighbor detail
#show ip eigrp topology
(config)#interface fastethernet 2/2
(config-if)#ip summary-address eigrp 15 172.0.0.0 255.0.0.0
(config-if)#ip summary-address eigrp 15 192.168.16.0 255.255.240.0
#show ip route
key chain Bruce
key 1
key-string Hkey1
interface serial 0/0.1
ip authentication key-chain eigrp 15 Bruce
ip authentication mode eigrp 15 md5
#show ip route
#show ip eigrp neighbors
#debug eigrp packets
#debug ip eigrp neighbor 75 192.168.16.19 //EIGRP 75并且邻居是192.168.16.19
#debug eigrp neighbors
#debug eigrp packets
(config)#interface fastethernet 0/0
(config-if)#ip access-group 150 in
access-list 150 permit tcp any any established
access-list 150 permit icmp any any
access-list 150 permit eigrp 192.168.16.16 0.0.0.15 any //允许EIGRP数据包
#show ip eigrp neighbors
#show logging
#show ip eigrp topology
(config)#interface serial 3/1
(config-if)#bandwidth 14
(config-if)#ip bandwidth-percent eigrp 15 200 //14kbit/s 的200%,即28kbit/s
------------------------------------------------------------------------
命令 | 描述
------------------------------------------------------------------------
accept-lifetime start-time{infinite|end-time|duration seconds}
| 设置一个时间段,用来指定钥匙链上的
| 认证钥匙可被接收的有效时间
auto-summary | 在网络边界上打开或关闭自动路由汇总
| 功能,这个命令缺省的配置为打开
bandwidth kilobits | 在接口上指定带宽参数,单位是kbit/s.
| 在一些路由选择协议中用来计算度量值,
| 但它不影响数据链路实际的带宽
debug eigrp packets | 显示EIGRP数据包的活动行为
debug ip eigrp neighbor process-id address | 在命令debug eigrp packets 基础
| 上增加一个过滤器,告诉路由器只显示
| 选定的进程ID和邻居的IP数据包
delay tens-of-microseconds | 在接口上指定延时参数,单位是10us.
eigrp stub{connected|redistributed|static|summary|receive-only}
| 配置一台分支路由器作为EIGRP末梢
ip authentication key-chain eigrp process-id key-chain | 在一个运行EIGRP
| 协议的接口上配置一个钥匙链,并
| 指定一个钥匙链所使用的名字
ip authentication mode eigrp process-id md5| 在一个接口上启用EIGRP协议使用
| 的认证类型
ip bandwidth-percent eigrp process-id percent | 配置EIGRP协议使用的带宽百分比,
| 缺省配置是50%
ip hello-interval eigrp process-id seconds | 配置EIGRP的hello数据包的时间间隔
ip hold-time eigrp process-id seconds | 配置EIGRP的抑制时间
ip summary-address eigrp process-id address mask | 配置路由器发送一个汇总
| 的EIGRP通告
key number | 指定钥匙链上的一个钥匙
key chain name-of-chain | 指定一组认证钥匙
key-string text | 指定钥匙使用的认证字符或口令
metric weights tos k1 k2 k3 k4 k5 | 指定IGRP和EIGRP协议中计算复合
| 度量值时,对带宽,负载,延迟和
| 可靠性等参考所使用的权重
network network-number | 指定覆盖一或多个运行IGRP,EIGRP
| 或RIP协议进程接口的网络地址
passive-interface type number | 使一个接口不再发送广播或组播
| 的路由选择更新
router eigrp process-id | 在路由器上启动EIGEP路由选择进程
send-lifetime start-time{infinite|end-time|duration seconds} | 设置一个时间
| 段,用来指定钥匙链上的认证钥匙可
| 被发送的有效时间
show ip eigrp neighbors [type number] | 用来显示EIGRP的邻居表
show ip eigrp topology [process-id][[ip address]mask] | 用来显示EIGRP的拓扑
| 结构表
timer active-time {minutes|disabled} | 改变或关闭缺省的3min的活动计时
traffic-share{balanced|min} | 指定IGRP协议或EIGRP协议路由选择
| 进程是否使用非等价负载均衡或只
| 使用等价负载均衡
variance multiplier | 指定一个倍数来表示一条路由与最小
| 代价路径的度量值得差别程度,确定
| 是否可以依然包含在非等价负载均衡
| “组”中
----------------------------------------------------------------------------
---------------------------------------------------------------
8. 开放最短路径优先协议(OSPFv2)
----------------------------------------------------------------
#show ip ospf neighbor
#show ip ospf interface Serial 1/1.738
#show ip ospf neighbor 10.7.0.1
#debug ip ospf adj
#show ip ospf database
#show ip ospf database database-summary
#show ip ospf database router 192.168.30.10
#show ip ospf database network 192.168.17.18
#show ip ospf database summary 172.16.121.0
#show ip ospf database asbr-summary
#show ip ospf database external
#show ip ospf database external 10.83.10.0
#show ip ospf database nssa-external
#show ip route
#show ip ospf border-routers
(config)#router ospf 10
(config-router)#network 192.168.30.0 0.0.0.255 area 0
#show ip ospf 10
#show ip ospf neighbor
(config)#ip name-server 172.19.35.2
(config)#ip ospf name-lookup
#show arp
(config)#ip route 192.168.0.0 255.255.0.0 172.19.35.15
(config)#router ospf 10
(config-router)#network 0.0.0.0 255.255.255.255 area 1
(config-router)#area 1 stub no-summary
(config-router)#area 1 default-cost 20
#show ip ospf database database-summary
#show ip route
(config)#router ospf 20
(config-router)#redistribute rip metric 10 metric-type 1 subnets
(config-router)#area 2 nssa no-redistribution no-summary
#show ip route
(config)#router ospf 30
(config-router)#redistribute rip metric 10 metric-type 1 subnets
(config-router)#area 2 nssa no-redistribution default-information-originate
#show ip route
(config)#router ospf 1
(config-router)#area 15 range 10.0.0.0 255.248.0.0
!
(config)#ip route 10.0.0.0 255.248.0.0 Null 0
(config)#router ospf 1
(config-router)#area 15 172.17.0.0 255.255.0.0 not-advertise
(config-router)#area 15 nssa tranlate type 7 suppress-fa
#show ip route
#show ip ospf database external
(config)#router ospf 1
(config-router)#area 25 filter-list prefix area25outbound out
!
(config)#ip prefix-list area25outbound seq 10 deny 192.168.1.0/24
(config)#ip prefix-list area25outbound seq 20 permit 0.0.0.0/0 le 32
(config)#interface fastethernet 0/0
(config-if)#ip ospf authentication-key santafe
(config)#interface serial 0/0.1
(config-if)#ip ospf message-digest-key 10 md5 taos
!
(config)#router ospf 1
(config-router)#area 0 authentication message-digest
!
(config)#service password-encryption
(config)#router ospf 10
(config-router)#area 100 virtual-link 192.168.100.33
!
(config)#router ospf 10
(config-router)#area 100 virtual-link 192.168.100.29
!
#show ip ospf virtual-link
(config)#interface serial 0/0
(config-if)#encapsulation frame-relay
(config-if)#frame-relay map ip 172.16.2.2 100
(config-if)#frame-relay map ip 172.16.2.3 300
!
(config)#router ospf 1
(config-router)#neighbor 172.16.2.2
(config-router)#neighbor 172.16.2.3 priority 10
(config)#interface serial 0/1
(config-if)#encapsulation frame-relay
(config-if)#ip ospf network broadcast
(config-if)#ip ospf priority 0
(config-if)#ip address 172.16.2.1 255.255.255.0
(config-if)#frame-relay map ip 172.16.2.2 100 broadcast
(config-if)#frame-relay map ip 172.16.2.3 300 broadcast
(config)#interface serial 0/0
(config-if)#encapsulation frame-relay
(config-if)#ip ospf network point-to-multipoint non-broadcast
(config-if)#ip address 172.16.2.4 255.255.255.0
!
(config)#router ospf 1
(config-router)#neighbor 172.16.2.1 priority 10
(config)#interface serial 0/1
(config-if)#no ip address
(config-if)#encapsulation frame-relay
(config)#interface serial 0/1.100 point-to-point
(config-if)#description ---------------------------to Hals
(config-if)#ip address 172.16.2.1 255.255.255.252
(config-if)#frame-relay interface-dlci 100
(config)#interface serial 0/1.300 point-to-point
(config-if)#description ---------------------------to Vandyck
(config-if)#ip address 172.16.2.5 255.255.255.252
(config-if)#frame-relay interface-dlci 300
(config)#interface serial 0/0
(config-if)#ip address 172.16.2.1 255.255.255.0
(config-if)#encapsulation frame-relay
(config-if)#ip ospf network point-to-multipoint non-broadcast
(config-if)#ip ospf demand-circuit //运行在按需电路上的OSPF
#show ip ospf database
#debug ip ospf adj
#show logging
#show ip ospf database database-summary
#show ip ospf border-routers
#show ip ospf neighbor
#show ip route
#show ip ospf interface serial 0/0
----------------------------------------------------------------------
命令 | 描述
----------------------------------------------------------------------
area area-id authentication[message-digest] | 使一个区域的类型1或者类型2的认证有效
area area-id default-cost cost | 为ABR路由器发送到一个末梢区域的缺省
| 路由指定一个代价值
area area-id filter-list prefix prefix_list_name [out|in] | 定义一个类型3LSA的过滤列表
area area-id nssa [no-redistribution][default-information-originate][no-summary]
[translate type 7 suppress-fa] | 配置一个区域为非纯末梢区域(NSSA)
area area-id range address mask [advertise|not-advertise][cost] | 汇总地址进入或离开
| 一个区域,并可以指定汇总地址的代价
area area-id stub [no-summary] | 配置一个区域作为末梢区域或完全末梢区域
area area-id virtual-link router-id | 在ABR路由器之间定义一条虚链路
debug ip ospf adj | 显示有关一个OSPF邻接关系的创建或中断的事件
[no] discard-route {internal|external} | no discard-route去除了自动创建静态路由到Null接口
ip ospf authentication-key password | 使用类型1的认证方式分配一个口令给一个OSPF接口
ip ospf cost cost | 在一个OSPF接口上指定出站接口的代价大小
ip ospf dead-interval seconds | 在一个接口上指定OSPF的RouterDeadinterval大小
ip ospf demand-circuit | 配置一个接口作为OSPF按需链路
ip ospf hello-interval seconds | 为一个接口指定OSPF的HelloInterval的值
ip ospf message-digest-key key-id md5 key | 使用类型2的认证方式指定一个接口的密钥(口令)
ip ospf name-lookup | 使域名的反向DNS域名查找有效,以便在某些show
| 命令匹配路由器ID
ip ospf network [broadcast][nonbroadcast][point-to-multipoint] | 配置OSPF网络类型
ip ospf priority number | 设置一个接口的路由器优先级,以便用来
| 选取DR和BDR路由器
ip ospf retransmit-nterval seconds | 设置一个接口的OSPF RxmtInterval值
ip ospf transmit-delay seconds | 设置一个接口的OSPF InfTransDelay值
ip prefix-list prefix_list_name [seq num]{deny|permit} address/length
| 定义一个前缀列表,指定那些地址被允许或拒绝
log-adjacency-changes [detail] | 记录邻居状态的变化
maximum-paths | 设置OSPF执行负载均衡的最大路径数量
neighbor ip-address [priority number][poll-intervl seconds][cost cost]
| 在一个非广播网络上手工配置邻居路由器
network address inverse-mask area area-id | 指定运行OSPF协议的接口,并指定这些接
| 口相连的OSPF区域
ospf auto-cost reference-bandwidth reference-bandwidth | 为计算链路的代价,改变缺省
| 的OSPF参考带宽
router ospf process-id | 启动一个OSPF路由选择进程
show ip ospf [process-id] | 显示有关OSPF路由选择进程的一般信息
show ip ospf border-routers | 显示一台路由器的内部OSPF路由表
show ip ospf [process-id area-id] database | 显示OSPF链路状态数据库的所有条目
show ip ospf [process-id area-id] database router [link state-id]
| 显示OSPF链路状态数据库中类型1的LSA
show ip ospf [process-id area-id] database network [link state-id]
| 显示OSPF链路状态数据库中类型2的LSA
show ip ospf [process-id area-id] database summary [link state-id]
| 显示OSPF链路状态数据库中类型3的LSA
show ip ospf [process-id area-id] database asbr-summary [link state-id]
| 显示OSPF链路状态数据库中类型4的LSA
show ip ospf [process-id area-id] database nssa-external [link state-id]
| 显示OSPF链路状态数据库中类型7的LSA
show ip ospf [process-id] database external [link state-id]
| 显示OSPF链路状态数据库中类型5的LSA
show ip ospf [process-id area-id] database database-summary | 根据类型和区域ID
| 显示OSPF链路状态数据库中LSA的数量
show ip ospf interface [type number] | 显示一个接口具体的OSPF信息
show ip ospf neighbor [type number][neighbor-id][detail] | 显示OSPF邻居表的信息
show ip ospf virtual-links | 显示有关OSPF虚链路的信息
timer lsa-group-pacing seconds 或 timer pacing lsa-group seconds | 在重刷新计时器
| 超时的两组LSA之间设定的最小步调时间
---------------------------------------------------------------------------------
9. OPSFv3
----------------------------------------------------------------------
(config)#interface serial 0/0
(config-if)#ipv6 address 2001:db8:0:8::1/64
(config-if)#ipv6 ospf 1 area 1
(config)#interface fastethernet 0/0
(config-if)#ipv6 address 2001:db8:0:4::1/64
(config-if)#ipv6 ospf 1 area 0
#show ipv6 protocol
#show ipv6 ospf neighbor
(config)#ipv6 router ospf 1
(config-router)#area 1 stub no-summary
#show ipv6 route
(config)#interface fastethernet 0/0
(config-if)#ipv6 ospf 1 area 0 instance 1
#show ipv6 ospf interface fastethernet 0/0
(config)#interface serial 0/0
(config-if)#encapsulation frame-relay
(config-if)#ipv6 address 2001:db8:0:1::1/64
(config-if)#ipv6 ospf network broadcast
(config-if)#ipv6 ospf 1 area 1
(config-if)#ipv6 ospf priority 20
(config-if)#frame-relay map ipv6 fe80::206:28ff:feb6:5bc0 201 broadcast
(config-if)#frame-relay map ipv6 fe80::202:fdff:fe5a:a40 202 broadcast
(config-if)#ipv6 ospf neighbor fe80::206:28ff:feb6:5bc0 priority 5
#show ipv6 ospf interface serial 0/0
#show ipv6 ospf neighbor
#show ipv6 route
#debug ipv6 ospf hello
#debug ipv6 ospf adj
#debug ipv6 ospf packet
#show ipv6 interface serial 0/0
----------------------------------------------------------------------
命令 | 描述
----------------------------------------------------------------------
area area-id nssa [no-redistribution][default-information-originate[metric][metric-type]]
[no-summary] | 定义一个非纯末梢区域(NSSA区域),并提供一些相
| 关参数的配置选项
area area-id range {ipv6-prefix/prefix-length}[advertise|not-advertise][cost cost]
| 在指定的区域中创建一些具体路由的汇总前缀通告,
| 并扩散到(或者并不扩散,这依赖于选项[advertise|
| not-advertise])其他区域中去
area area-id stub [no-summary] | 定义一个末梢区域或完全末梢区域
debug ipv6 ospf packet | 提供路由器收到的每一个IPv6OSPF数据包的调试信息
debug ipv6 ospf [adj|database-timer|flood|hello|lsa-generation|retransmission]
| 提供具体类型的OSPF数据包的相关调试信息
ipv6 ospf process-id area area-id [instance instance-id] | 创建一个OSPFv3进程(如果还没有创
| 建的话),并在相应的接口上运行OSPF
ipv6 ospf neighbor ipv6-address [priority number][poll-interval seconds][cost number]
[detabase-filter all out ] | 手工配置OSPFv3的邻居
ipv6 ospf network {broadcast|non-broadcast}{point-to-multipoint[non-broadcast]|point-to-point}
| 配置OSPF的网络类型不同于给定传输介质支持的缺省类型
ipv6 ospf priority number-value | 配置给定路由器的OSPFv3的优先级,用于DR和BDR路由器
| 的选举
ipv6 router ospf process-id | 进入OSPFv3路由器配置模式
show ipv6 ospf [process-id][area-id] | 显示有关OSPFv3进程的一般信息
show ipv6 ospf [process-id][area-id] neighbor [interface-type interface-number][neighbor-id][detail]
| 显示有关OSPFv3邻居的一般信息
show ipv6 ospf [process-id][area-id] interface [interface-type interface-number]
| 显示有关某个具体接口的OSPF信息
summary-prefix prefix [not-avertise|tag tag-value] | 汇总重新分配到OSPFv3当中的前缀
-----------------------------------------------------------------------
10.集成IS-IS协议
-----------------------------------------------------------------------
--------------------------------------------------------------------
命令 | 描述
--------------------------------------------------------------------
address-family ipv6 | 指定跟在其后的命令应用于IPv6地址簇
area-password password | 配置IS-IS区域(第1层)认证
authentication key-chain name-of-chain [level-1 | level-] | 指定预先配置
| 的钥匙链,以便用于对L1或L2的路由器进行
| 认证。L1表示区域范围的认证,而L2表示
| 域范围的认证。
authentication mode {md5|text}[level-1|level-2] | 指定用于一个区域或域内路由器
| 之间的认证模式
authentication send-only [level-1|level-2] | 在配置认证而不需要使现有的数据库
| 无效时使用,这条命令发送认证信息,但不
| 要求接收匹配认证信息
debug isis adj-packets | 显示IS-IS Hello PDU的行为
debug isis spf-events | 显示触发一个IS-IS SPF计算的事件的详细信息
debug isis snp-packets | 显示路由器接收和发送SNP的有关信息
debug isis spf-statistics | 显示一个有关IS-IS SPF计算的统计信息
debug isis spf-triggers | 显示触发IS-IS SPF计算的事件
debug isis update-packets | 显示路由器接收和发送LSP,CSNP和PSNP的有关信息
default-information originate [route-map map-name] | 生成一条进入IS-IS域的缺省IP路由
domain-password password | 配置IS-IS域(L2)认证
ignore-lsp-errors | 配置一台IS-IS路由器忽略错误的LSP而不是触发一个LSP的清除
ip router isis [tag] | 在一个接口上启动IPv4的IS-IS路由选择
ipv6 router isis [tag] | 在一个接口上启动IPv6的IS-IS路由选择
isis authentication key-chain name-of-chain [level-1 | level-2] | 在某个接口上指定预先
| 配置的钥匙链,以便用于对L1或L2的路由器进行认证。
| L1表示区域范围的认证,而L2表示域范围的认证
isis authentication mode {md5|text}[level-1|level-2] | 在某个接口上指定它的认证模式
isis authentication send-only [level-1|level-2] | 在配置认证而不需要中断现有的邻接时使用,这条
| 命令发送认证信息,但不要求接收匹配的认证信息
isis csnp-interval seconds {level-1|level-2} | 指定一台IS-IS确定路由器发送CSNP的时间间隔,以秒数计
isis hello-interval seconds {level-1|level-2}| 指定IS-IS Hello PDU重传的时间间隔,以秒数计
isis hello-multiplier multiplier {level-1|level-2} | 指定一台邻居路由器在宣告它与始发路由器邻接关系失效之前,
| 必须错过的IS-IS Hello PDU的数目
isis lsp-interval milliseconds | 在一个接口上改变LSP的传输之间的缺省时延
isis mesh-group [number|blocked] | 给一个接口分配一个数值的mesh组,或在接口上完全阻塞LSP扩散
isis metric default-metric {level-1|level-2} | 指定一个接口的IS-IS缺省度量
isis password password {level-1|level-2} | 在两台IS-IS邻居路由器之间配置认证
isis priority value {level-1|level-2}| 指定一个接口用来选取指定路由器的优先级
isis retransmit-interval seconds | 指定一台路由器在一个点到点链路上发送一条LSP后需要等待确认
| 的时间,如果超过这个时间还没有收到确认,路由器将会重传这条LSP
is-type {level-1|level-1-2|level-2-only} | 配置一台路由器作为一台L1,L1/L2或者L2类型的IS-IS路由器
log-adjacency-changes | 发送所有的邻接变化事件到日志记录中
lsp-refresh-interval seconds | 改变本地始发LSP的刷新之间的缺省周期
lsp-gen-interval [level-1|level-2] lsp-max-wait [lsp-initial-wait lsp-second-wait]
| 改变调整LSP生成的指数补偿算法的缺省值
max-lsp-lifetime seconds | 改变本地始发LSP的剩余生存时间的缺省值
metric-style [narrow|wide|transition]{level-1|level-2|level-1-2} | 指定所使用的度量风格的类型
multi-topology {transition} | 启动IPv6的多拓扑
net network-entity-title | 配置一台IS-IS路由器的NET地址
prc-intervl prc-max-wait [pr-initial-wait prc-second-wait] | 指定用于部分路由计算的指数
| 补偿算法的缺省值
redistribute isis {ip} level-2 into level-2 distribute-list [access-list number|prefix-list name]
| 启动从IS-IS level-2进入level-1区域的路由泄漏
router isis [tag] | 启动一个IS-IS路由选择进程
set-overload-bit [on-startup{seconds} | wait-for-bgp][suppress{{interlevel}}[external]}]
| 在路由器的LSP中手工设置过载位为1
show clns is-neighbor [type number][detail] | 显示一个IS-IS邻居表
show clns protocol | 显示路由器上如何配置clns和集成IS-IS的信息
show isis database [level-1][level-2][l1][l2][detail][lspid] | 显示一个IS-IS链路状态数据库
show isis hostname | 显示网络中路由器的系统ID和主机名。这个信息是通过类型137的
| TLV获取的
show isis ipv6 topology | 显示IPv6 的拓扑
show isis spf-log | 显示路由器怎样以及为什么要运行一个完全的SPF计算
show isis topology | 显示IPv4/CLNS的拓扑
spf-interval [level-1|level-2] spf-max-wait [spf-initial-wait spf-second-wait] | 更改用于SPF计算的
| 指数补偿算法的缺省参数
summary-address address-mask {level-1|level-1-2|level-2} | 配置IP的地址汇总
summary-prefix ipv6_prefix/prefix_length{level-1|level-1-2|level-2} | 配置IPv6的地址汇总
which-route {nsap-address|clns-name} | 查找并显示一个指定的CLNS目的地址在路由表中对应的IP地址和
| 区域地址的详细信息
-----------------------------------------------------------------------------------------------
11.路由重新分配
---------------------------------------------------------------------------
-------------------------------------------------------------------------
命令 | 描述
------------------------------------------------------------------------
default-metric bandwidth delay reliability load mtu | 为重新分配到IGRP和EIGRP的路由指定缺省度量
default-metric number | 为指定分配到OSPF和RIP的路由指定缺省度量
ip summary-address eigrp autonomous-system-number address mask | 在接口上配置一条EIGRP汇总路由
redistribute connected | 重新分配所有直连网络
redistribute protocol [process-id]{level-1|level-1-2|level-2}[metric metric-value][metric-type type-value]
[match {internal|external 1|external 2}[tag tag-value][route-map map-tag]
[weight weight][subnets] | 配置向一个路由选择协议重新分配路由,并且指定被重新
| 分配路由的源
summary-address address mask {level-1|level-1-2|level-2} prefix mask[not-advertise][tag tag]
| 为IS-IS和OSPF配置路由汇总
summary-prefix prefix/length {level-1|level-1-2|level-2} | 为IPv6的IS-IS配置汇总路由
summary-prefix prefix/length [not-advertise| tag tag-value] | 为IPv6的OSPFv3配置汇总路由
-------------------------------------------------------------------------------------------
--------------------------------------------------------------------------
12.缺省路由和按需路由选择
------------------------------------------------------------------------
--------------------------------------------------------------------
命令 | 描述
-------------------------------------------------------------------
cdp enable | 在接口上启用CDP
cdp run | 在路由器上全局启用CDP
default-information originate [always][metric metric-value][metric-type metric-value]
{level-1|level-1-2|level-2}[route-map map-name]
| 向OSPF和IS-IS路由选择域输入缺省路由
ip classless | 启用无类别路由查询,以便路由器可以向直连网络
| 的未知子网转发数据包
ip default-network network-number | 在确定最后可选网关时指定一个网络作为候选路由
ip route address mask {address|interface}[distance][tag tag][permenent] | 指定缺省路由表项
router odr | 启用按需路由选择
------------------------------------------------------------------------------------------
------------------------------------------------------------------------
13.路由过滤
------------------------------------------------------------------------
------------------------------------------------------------------------
命令 | 描述
------------------------------------------------------------------------
access-list access-list-number{deny|permit}source [source-wildcard] | 定义标准IP访问列表表项
distance weight{address mask [access-list-number|name]] | 定义管理距离,该值不同于缺省值
distance eigrp internal-distance external-distance | 为EIGRP内部和外部路由定义管理距离,
| 该值不同于缺省值
distance ospf {[intra-area dist1][inter-area dist2][external dist3]}| 为域内,域间和外部路由定义管理
| 距离,该值不同于缺省值
distribute-list {access-list-number|name} in [interface-name] | 过滤入站IPv4更新路由
distribute-list {access-list-number|name} out [interface-name|routing-process|autonomous-system-number]
| 过滤出站IPv4更新路由
distribute-list prefix-list list_name [in|out] | 过滤IPv6入站或出站更新路由
ipv6 prefix-list list-name [seq num]{deny|permit} prefix/length [ge length|le length] | 定义IPv6前缀列表表项,允许或
| 禁止一个或一组IPv6前缀
redistribute protocol [process-id]{level-1|level-1-2|level-2}[metric metric-value] [metric-type type-value]
[match {internal|external 1|exteranl 2}][tag tag-value][route-map map-tag][weight weight]
[subnets]
| 配置向一路由选择协议重新分配路由,并指明被重新分配路由的源点
----------------------------------------------------------------------------------------------------------------------
------------------------------------------------------------------------
14.路由映射
-------------------------------------------------------------------------
-------------------------------------------------------------------------
命令 | 描述
------------------------------------------------------------------------
access-list access-list-number {deny|permit} source [source-wildcard] | 定义标准IP访问列表表项
access-list access-list-number {deny|permit} protocol source source-wildcard destination destination-wildcard
[precedence precedence][tos tos][log] | 定义扩展IP访问控制列表
ip local policy route-map map-tag | 为路由器产生的数据包定义策略路由
ip policy route-map map-tag | 为经过路由器的数据包定义策略路由
match interface type number [...type number] | 匹配路由,指定接口中的一个接口去往该路由的下一跳
match ip address {access-list-number|name}[...access-list-number|name]| 匹配路由,其中该路由的目标地址被访问列表指明
match ip next-hop {access-list-number|name}[...access-list-number|name] | 匹配路由,其中该路由的下一跳路由器地址被访问列表指明
match ip route-source{access-list-number|name}[...access-list-number|name] | 匹配路由,其中通告该路由的路由器被访问列表指明
match ipv6 address prefix-list {name} | 匹配路由,其中该路由的目标地址被前缀列表指明
match ipv6 next-hop prefix-list {name} | 匹配下一跳路由器地址,其中该路由的目标地址被前缀列表指明
match ipv6 route-source prefix-list{name}| 匹配被路由器通告的路由,其中该路由的目标地址被前缀列表指明
match length min max | 匹配数据包的第3层的长度
match metric metric-value | 匹配指定度量的路由
match route-type {internal|external[type 1|type 2]|level-1|level-2}| 匹配指定类型的OSPF,EIGRP或IS-IS路由
match tag tag-value[...tag-value] | 匹配指定标记的路由
ipv6 prefix-list list-name [seq seq-number]{deny ipv6-prefix/prefix-length|permit ipv6-prefix/prefix-length |
description text}{ge ge-value][le le-value]
| 定义IPv6前缀列表
redistribute protocol [protocol-id]{level-1|level-1-2|level-2}[metric metric-value][metric-type type-value]
[match {internal|external 1|external 2}[tag tag-value][route-map map-tag]
[weight weight][subnets] | 配置进入路由选择协议的重新分配,并且指明被重新分配路由的源点
set level {level-1|level-2|level-1-2|stub-area|backbone} | 设置IS-IS层或OSPF区域,其中匹配成功的路由将被重新
| 分配进入该区域
set default interface type number[...type number] | 当不存在到达目标网络的显示路由时,为匹配成功的数据包设置出站接口
set interface type number[...type number] | 当存在到达目标网络的显示路由时,为匹配成功的数据包设置出站接口
set ip default next-hop ip-address[...ip-address] | 当不存在到达目标网络的显示路由时,为匹配成功的数据包设置下一跳路由器地址
set ip next-hop ip-address[...ip-address] | 当存在到达目标网络的显示路由时,为匹配成功的数据包设置下一跳路由器地址
set ip precedence precedence | 设置被匹配IP数据包服务类型字段中的优先级位
set ip tos type-of-service | 设置被匹配数据包服务类型字段中ToS位
set metric{metric-value|bandwidth delay reliability loading mtu} | 为被匹配路由设置度量值
set metric-type{internal|external|type-1|type-2} | 为将要被重新分配到IS-IS或OSPF的被匹配路由设置度量类型
set next-hop next-hop | 为被匹配路由设置下一跳路由器地址
set tag tag-value | 为被匹配路由设置标记值
-------------------------------------------------------------------------------------------------------
------------------------------------------------------------------------
附录A 教程:二进制和十六进制
--------------------------------------------------------------------------
-------------------------------------------------------------------------
十六进制 十进制 二进制
0 0 0000
1 1 0001
2 2 0010
3 3 0011
4 4 0100
5 5 0101
6 6 0110
7 7 0111
8 8 1000
9 9 1001
A 10 1010
B 11 1011
C 12 1100
D 13 1101
E 14 1110
F 15 1111
-----------------------------------------------------------------------
-----------------------------------------------------------------------
附录B 教程:访问列表
--------------------------------------------------------------------------
------------------------------------------------------------------
Cisco访问列表编号
---------------------------------------------------------------
访问列表类型 | 范围
------------------------------------------------------------
标准IP | 1-99,1300-1999
扩展IP | 100-199,2000-2699
-----------------------------------------------------------------
总结:使用标准列表的过滤器必须被放置在尽可能靠近目标的地方,
而扩展访问列表可以放置在靠近源点的地方。
--------------------------------------------------------------------------
--------------------------------------------------------------------------
Routing TCP/IP Volume 2
第1章 外部网关协议
-------------------------------------------------------------------------
命令 | 作用
------------------------------------------------------------------------
autonomous-system local-as | 指定EGP路由器所驻留的本地自治系统
debug ip egp transactions | 显示EGP消息交换和状态交换的信息
default-information originate | 让EGP宣告默认路由
neighbor ip-address | 指定EGP邻居的IP地址
neighbor any [access-list-number|name] | 让EGP尝试与发起邻居获取协议的所有路由器建立对等关系
neighbor any third-party ip-address [internal|external] | 配置一个间接EGP邻居
neighbor ip-address third-party third-partyip-address [internal|external]
| 配置EGP发送有关间接邻居的更新信息
network network-number | 指定应该被宣告给EGP对等体的IGP路由表中的网络
router egp remote-as | 配置一个EGP路由进程
router egp 0 | 配置一个EGP核心网关进程
show ip egp | 显示EGP连接及邻居的相关信息
timers egp hello polltime | 将EGP hello间隔和Poll(轮询)间隔设置为不同于默认值的值
----------------------------------------------------------------------------------------------
第2章 BGP-4简介
-------------------------------------------------------------------------
-----------------------------------------------------------------------
第3章 BGP-4的配置及故障检测
-------------------------------------------------------------------------
命令 | 描述
-----------------------------------------------------------------------
aggregate-address address mask [as-set][summary-only][suppress-map mapname]
[advertise-map map-name][attribute-map map-name]
| 在BGP路由表中创建聚合路由项
auto-summary | 启用子网的自动汇总功能,汇总为主网地址
bgp always-compare-med | 比较由不同AS中的对等体宣告来的,去往同一目的地的多条路由的MED属性
bgp bestpath as-path ignore | 让BGP决策进程忽视AS_PATH的长度
bgp bestpath med confed | 比较由联盟EBGP对等体宣告来的路由的MED属性
bgp client-to-client reflection | 启用IBGP对等体之间的路由反射功能
bgp cluster-id cluster-id | 设置BGP路由反射簇的簇ID
bgp confederation identifier autonomoussystem | 指定联盟ID(联盟外部对等体所看见的AS号)
bgp confederation peers autonomoussystem [autonomous-system] | 列出路由器的联盟EBGP对等体的成员自治系统
bgp dampening [half-life reuse suppress max-suppress-time][route-map map] | 启用路由阻尼机制并更改路由阻尼的默认值
bgp default local-preference value | 更改LOCAL_PREF的默认值(默认值为100)
bgp deterministic-med | 比较由同一邻居成员AS中的联盟EBGP对等体宣告的路由的MED属性
bgp log-neighbor-changes | 启用邻居重置的日志功能
clear ip bgp {*|address|peer-group-name}[soft[in|out]] | 重置一个或多个BGP对等体连接
clear ip bgp dampening [address mask] | 清除BGP阻尼信息,不抑制被抑制路由
clear ip bgp flap-statistics [{regexp regexp}]|{filter-list list}|{address mask} | 清除BGP路由翻动统计
clear ip bgp peer-group peer-group-name | 删除对等体组中的全部成员
default-information originate | 让路由器将默认地址0.0.0.0 宣告给其他BGP对等体
default-metric number | 设置由BGP路由器加入到被宣告给EBGP对等体的路由的默认度量值(MED)
distance bgp external-distance internal-distance local-distance | 更改BGP路由的默认管理性距离
ip as-path access-list access-list-number {permit|deny} regexp | 定义一个检查BGP路由AS_PATH属性的访问列表
ip bgp-community new-format | 以AA:NN格式显示团体属性
ip community-list community-list-number {permit|deny} community-number | 定义一个利用COMMUNITY属性来标识BGP路由的访问列表
ip prefix-list prefix-list-name [seq sequence-number]{permit|deny}{ip-prefix/length}[ge|le] min/max-length
| 定义一个检查NLRI前缀和长度(在路由中宣告)的访问列表
match as-path path-list-number | 创建对AS_PATH访问列表的调用
match community-list community-list-number [exact] | 创建对COMMUNITY访问列表的调用
neighbor {ip-address|peer-group-name} advertisement-interval seconds | 更改向BGP对等体发送路由更新消息的默认最小宣告间隔
neighbor {ip-address|peer-group-name} default-originate [route-map map-name] | 让路由器将默认地址0.0.0.0 宣告给指定邻居或对等体组
neighbor {ip-address|peer-group-name} description text | 为邻居的配置关联一个描述文本
neighbor {ip-address|peer-group-name} distribute-list {access-list-number|prefixlist prefix-list-name}{in|out}
| 通过NLRI过滤去往/来自邻居或对等体组的路由
neighbor {ip-address|peer-group-name} ebgp-multihop hops | 用于更改数据包(携带了发送给邻居的BGP消息)的默认TTL
neighbor {ip-address|peer-group-name} filter-list access-list-number {in|out|weight weight}
| 通过AS_PATH过滤入站或出站BGP路由,或者设置入站路由的权重
neighbor {ip-address|peer-group-name} maximum-prefix maximum [threshold][warning-only]
| 设置最多可以由邻居或对等体组宣告的NLRI前缀数量
neighbor {ip-address|peer-group-name} next-hop-self | 让BGP路由器将其自己的地址宣告为学习自EBGP(宣告给IBGP对等体)的NEXT_HOP属性
neighbor {ip-address|peer-group-name} password string | 在对等体之间启用MD5验证机制
neighbor ip-address peer-group peer-group-name | 将某个邻居分配到对等体组中
neighbor peer-group-name peer-group | 创建一个对等体组
neighbor {ip-address|peer-group-name} prefix-list prefix-list-name {in|out} | 根据NLRI过滤去往/来自邻居的路由(与通过前缀列表来标识路由一样)
neighbor {ip-address|peer-group-name} remote-as as-number | 向BGP邻居表中加入一个邻居,并将该邻居标识为EBGP或IBGP邻居
neighbor {ip-address|peer-group-name} route-map map-name {in|out} | 为去往/来自邻居或对等体组的路由引用一个设置路由策略的路由映射
neighbor ip-address route-reflector-client | 将路由器配置为路由反射器,并将一个邻居标识为路由反射客户端
neighbor {ip-address|peer-group-name} send-community | 标识将那些COMMUNITY属性发送给邻居
neighbor {ip-address|peer-group-name} shutdown | 禁用一个邻居或对等体组
neighbor {ip-address|peer-group-name} soft-reconfiguration inbound | 让路由器存储来自指定邻居的未经修改的更新消息,以用于入站软重配置操作
neighbor {ip-address|peer-group-name} timers keepalive holdtime | 为邻居更改默认的保持激活间隔和保持时间间隔
neighbor {ip-address|peer-group-name} update-source interface | 用来标识IBGP更新消息被溯源的接口IP地址
neighbor {ip-address|peer-group-name} version version | 将BGP进程设置为某个版本
neighbor {ip-address|peer-group-name} weight weight | 为接收自邻居的路由分配权重
network network-number [mask networkmask] | 指定被BGP进程所宣告的网络
network network-address backdoor | 将指定EBGP路由的管理距离设置为200,并禁止该路由的EBGP宣告
network address mask weight weight [route-map map-name] | 为去往所标识目的地的路由分配权重
router bgp autonomous-system | 在路由器上启用BGP进程并指定本地AS号
set as-path {tag | prepend as-path-string} | 将被标识路由的AS_PATH设置为重分发标记,或者将指定的一个或多个AS号字符串附加到AS_PATH中
set comm-list community-list-number delete | 从被标识路由的删除由被调用团体列表所标识的团体属性
set community {community-number [additive]} |none | 为被标识路由设置团体属性
set dampening half-life reuse suppress max-suppress-time | 更改被标识路由的默认阻尼要素
set metric-type internal | 设置被标识路由的MED属性值,以匹配下一跳的IGP度量值
set origin {igp|egp autonomous-system | incomplete} | 更改被标识路由的ORIGIN属性
set weight weight | 设置被标识路由的权重
show ip bgp [network][networkmask][longer-prefixes] | 显示整个BGP表
show ip bgp cidr-only | 显示BGP表中所有携带非原始(无类别)网络掩码的表项
show ip bgp community {communityname|community-number}[exact] | 显示BGP表中所有携带指定团体属性的表项
show ip bgp community-list communitylist-number [exact] | 显示BGP表中所有被指定团体列表所允许的表项
show ip bgp dampened-paths | 显示被阻尼(被抑制)的路径
show ip bgp filter-list access-list-number | 显示BGP表中与指定访问列表相匹配额表项
show ip bgp flap-statistics [{regexp regexp}|{filter-list list-number}|{address mask}[longer-prefix]}]
| 显示BGP表中一条或多条表项的路由翻动统计情况
show ip bgp inconsistent-as | 显示BGP表中拥有多条去往同一目的地的路径且AS_PATH属性不一致的表项
show ip bgp neighbors [address][receivedroutes|routes|advertised-routes|{paths regex}|dampened-routes]
| 显示去往邻居的TCP连接和BGP连接的信息
show ip bgp paths | 显示数据库中的全部BGP路径
show ip bgp peer-group [peer-groupname][summary] | 显示被一个对等体组所共享的特性信息
show ip bgp regexp regexp | 显示BGP表中AS_PATH属性与指定正则表达式相匹配的表项
show ip bgp summary | 显示所有BGP连接的相关汇总信息
synchronization | 在BGP和本地IGP之间启用同步机制
table-map route-map-name | 调用路由映射,以修改进入到IGP路由表中的路由的度量值或标记值
timers bgp keepalive holdtime | 更改整个BGP进程的默认保持激活间隔和保持时间间隔
-------------------------------------------------------------------------------------------------------
------------------------------------------------------------------------
第4章 网络地址转换
-------------------------------------------------------------------------
--------------------------------------------------------------------------
命令 | 描述
--------------------------------------------------------------------------
clear ip nat translations {*|[inside[tcp{inside [global-ip [global-port] local-ip [local-port]}|
udp {inside[global-ip [global-port]local-ip [local-port]}]|
[inside global-ip localip][outside local-ip global-ip]
| 清除NAT表中的动态映射表项
ip nat {inside|outside} | 指定内部和外部接口。源自这些接口或发往这些接口的流量都要经过NAT的检查
ip nat inside destination list {access-listnumber|name} pool name | 启用内部目的地址的转换
ip nat inside source {list {access-listnumber|name} pool name [overload]| staticlocal-ip global-ip}
| 启用内部源地址的转换
ip nat outside source {list {access-listnumber|name} pool name | static global-ip local-ip}
| 启用外部源地址的转换
ip nat pool name start-ip end-ip {netmask netmask|prefix-length prefix-length} type {rotary |match-host}
| 定义一个用于地址转换的地址池
ip nat translation max-entries entries | 设置NAT表中最大所能允许的映射表项数
ip nat translation {timeout |udp-timeout|dns-timeout|tcp-timeout|finrst-timeout|icmp-timeout|sync-timeout|porttimeout{tcp|udp}} seconds
| 当动态映射表项从NAT表中被删除,地址又重新回到地址池中之后,更改默认超时周期
show ip nat statistics | 显示NAT配置的统计汇总信息
show ip nat translations [verbose] | 显示NAT表
------------------------------------------------------------------------------------------------------------------------------------------
-----------------------------------------------------------------------------
第5章 IP多播路由简介
--------------------------------------------------------------------------
--------------------------------------------------------------------------
命令 | 描述
--------------------------------------------------------------------------
clear ip cgmp [type number] | 导致发送一条CGMP Leave(离开)消息,作用是清除接收端Catalyst交换机高速缓存中的所有多播组表项
debug ip igmp | 显示已接收和已发送的IGMP消息以及与IGMP主机相关的事件
debug ip packet [access-list--number|detail] | 显示已接受和已发送的IP包,可选的访问列表用于过滤显示结果中不感兴趣的数据包
debug ip pim [group] | 显示已接收和已发送的PIMv消息以及与PIM相关的事件
ip igmp query-interval seconds | 更改IGMP查询消息的发送间隔(默认为60秒)
ip igmp query-max-response-time seconds | 更改IGMP查询消息中所宣告的最大相应时间(默认为10秒)
ip igmp query-timeout seconds | 更改路由器咋接管DR或查询路由器角色之前等待从DR或查询路由器接收到IGMP查询消息的时间(默认为查询消息的2倍)
ip igmp version {1|2} | 在接口上设置IGMP版本(默认为2)
ip multicast use-functional | 启用IP多播地址到令牌环功能地址0xC000.0004.0000 的映射
ip pim bsr-candidate type number hash-masklength [priority] | 配置路由器将自己宣告为C-BSR
ip pim message-interval seconds | 更改稀疏模式下Join-Prune消息的发送间隔(默认为30秒)
ip pim query-interval seconds | 更改PIMv2 Hello消息或PIMv1 Router Query(路由器查询)消息的发送间隔(默认30秒)
ip pim spt-threshold {kbps|infinity} [grouplistaccess-list-number] | 指定PIM-SM路由器从RPT切换到SPT的接收速率阀值(默认为接收到第一个多播包后就进行切换)
ip pim version [1|2] | 设置接口使用PIMv1或PIMv2(默认为2)
show ip igmp groups [group-name|groupaddress|type number] | 显示学习自IGMP的拥有直连组成员的多播组列表
show ip mroute [group-name|group-address][source][summary][sount][active kbps] | 显示IP多播路由表的内容
show ip pim neighbor [type number] | 显示由PIMv1 Router Query(路由器查询)消息或由PIMv2 Hello 消息发现的邻居列表
show ip pim rp [group-name|group-address|mapping] | 显示与多播组或多播路由相关的活动RP
show ip route [address[mask][longerpre fixes]]|[protocol[process-id]] | 显示单播IP路由表中的路由
--------------------------------------------------------------------------------------------------------------------------------------------------------
--------------------------------------------------------------------------
第6章 IP多播路由的配置及故障检测与排除
------------------------------------------------------------------------
-----------------------------------------------------------------------
命令 | 描述
-----------------------------------------------------------------------
ip multicast-routing | 启用IP多播路由功能
ip routing | 启用IP单播路由功能
ip pim sparse-mode | 在接口上启用PIM-SM
ip pim dense-mode | 在接口上启用PIM-DM
-------------------------------------------------------------------------
第7章 大规模多播路由
------------------------------------------------------------------------
------------------------------------------------------------------------
命令 | 描述
------------------------------------------------------------------------
address-family {ipv4|vpnv4}{multicast|unicast|vrf} | 启用MBGP
exit-address-family | 标记MBGP配置片段的结束
ip mroute source mask [protocol asnumber]{rpf-address|type number}[distance]
| 配置一条用于RPF检查的多播路由
ip msdp cache-sa-state [list access-listnumber] | 启用SA缓存
ip msdp default-peer ip-address|name [prefix-list list] | 指定一个不执行RPF检查即可
| 接收SA消息的MSDP对等体
ip msdp description {peer-name|peeraddress} text | 给MSDP对等体配置增加描述性文本
ip msdp filter-sa-request {ip-address|name} [list access-list-number]
| 为出站SA Request消息启用一个过滤器
ip msdp mesh-group name {ip-address|name} | 将对等体指派为网状多播组的成员,来自网状多播组某个成员的SA
| 消息不会转发给该网状多播组的其他成员
ip msdp originator-id type number | 更改MSDP消息中使用的默认RP地址
ip msdp peer {peer-name|peer-address}[connect-source type number][remote-as as-number]
| 将路由器指派为MSDP对等体
ip msdp redistribute [list access-list-name][asn aspath-access-list-number][routemap map]
| 为本地路由器发起的MSDP SA消息启用一个过滤器
ip msdp sa-filter in {ip-address|name}[list access-list-name][route-map map-tag] | 为入站MSDP SA消息启用一个过滤器
ip msdp sa-filter out {ip-address|name}[list access-list-name][route-map maptag] | 为出站MSDP消息启用一个过滤器
ip msdp sa-request {ip-address|name} | 让RP向指定的缓存对等体发送MSDP SA Request消息
ip msdp ttl-threshold {ip-address|name} ttl | 为本地路由器发起的MSDP消息设置TTL值
ip multicast boundary access-list-number | 将某接口指定为多播边界以进行多播定界
ip multicast ttl-threshold ttl-value | 将某接口指定为多播边界以进行TTL定界
neighbor {ip-address|name} activate | 将被激活的MBGP邻居指定为仅用于单播,仅用于多播或同时用于单播和多播
no bgp default ipv4-unicast | 禁用将所有BGP邻居都指派为单播邻居的默认行为,从而可以独立激活单播邻居
show ip msdp peer peer-address|name | 显示MSDP对等体的详细信息
show ip msdp sa-cache [group-address|source-address|group-name|source-name][group-address|source-address|groupname|source-name]
[autonomous-systemnumber] | 显示缓存在本地路由器中的SA状态信息
show ip msdp summary | 显示MSDP对等体的汇总信息
-------------------------------------------------------------------------------------------------------------------------------
-------------------------------------------------------------------------
第8章 IPv6
------------------------------------------------------------------------
------------------------------------------------------------------------
命令 | 描述
-------------------------------------------------------------------------
ipv6 unicast-routing | 在全局命令模式启用IPv6
ipv6 enable | 在接口上启用IPv6
-------------------------------------------------------------------------
----------------------------------------------------------------------------
第9章 路由器管理
-------------------------------------------------------------------------
------------------------------------------------------------------------
命令 | 描述
-------------------------------------------------------------------------
snmp-server community communitystring [view view-name][ro|rw][accesslist number]
| 定义团体字符串,使用该团体字符串的可用预定义视图,该团体字符串所允许的接入类型(ro|或rw),
| 相关联的访问列表,并指定允许使用该团体字符串的设备
snmp-server view view-name oid-tree [included|excluded} | 限制SNMP管理器可以访问的MIB对象
snmp-server system-shutdown | 让SNMP管理器通过SNMP向登录到路由器的用户发送一条消息,之后再重启该路由器
snmp-server tftp-server-list accesslist_number | 限制TFTP服务器通过SNMP将配置文件加载到访问列表所指定的服务器上的能力
snmp-server host host [version{1|2c}] community-string [udp-port port][trap-type] | 指定trap所要发送到的主机
snmp-server enable traps trap-type trap-option | 让所列类型的trap都可以被发送
snmp trap link-status | 在接口上启用链路有效/失效trap
show snmp | 显示SNMP统计情况
rmon alarm number variable interval {delta|absolute} rising-threshold value [event-number]falling-threshold value [event-number][owner string]
| 定义一个告警,并指定何时触发和清除告警,以及什么事件将触发告警
rmon event number [log][trap community][description string][owner string]
| 定义一个RMON事件并指定在何时记录该事件(当该事件被某个告警触发后)
show rmon alarms | 显示已定义告警的信息
show rmon events | 显示事件表
logging buffered [size] | 启用有缓存的登录路由器并指定日志的大小
show logging | 显示已被缓存的日志
clear logging | 清除已被缓存的日志
logging host | 指定将要接收syslog消息的主机名或主机的IP地址
terminal monitor | 将日志消息发送到当前终端行
service timestamps log uptime | 为日志增加时间戳
service timestamps log datetime[msec][localtime][show-timezone] | 为日志增加时间戳
logging console level | 限定记录到控制台的消息
logging monitor level | 限制记录到终端行的消息
logging trap level | 限制记录到Syslog服务器的消息
logging facility facility-type | 定义将日志消息发送给Syslog服务器所使用的服务类型
snmp-server enable traps syslog | 启用Syslog消息的SNMP trap
logging history level | 指定通过SNMP发送的Syslog消息的等级
ntp server ip_address [version number][key keyid][source interface][prefer] | 创建一个服务器关联,以便让路由器能将其时钟与其他NTP时钟源实现同步
ntp peer ip_address [version number][key keyid][source interface][prefer] | 创建一个对等体关联,以便让该路由器能将其时钟与其他设备实现同步,
| 或者让其他设备能够与其实现同步
ntp access-group {query-only|serveronly|serve|peer} access-list-number | 控制对路由器的NTP服务的访问
clock calendar-valid | 将路由器的日历启用为一个授权时间源
ntp master [stratum] | 将IOS配置为NTP主时钟(对等体与其进行同步)
ntp update-calendar | 利用学习自NTP的时间/日期来更新路由器的日历
ntp authenticate | 在全局范围启用NTP认证密钥
ntp authentication-key number md5 key | 定义NTP认证密钥
ntp trusted-key number | 该命令列出了已在命令ntp authentication-key 中定义了的密钥号,在该路由器与NTP服务器
| 实现同步之前,该NTP服务器必须包含在其NTP包中
ip accounting | 在接口上启用IP记账功能
ip accounting-threshold threshold | 设置记账表中可以存储的最大表项数
show ip accounting [checkpoint][access-violations] | 显示IP记账数据
clear ip accounting | 清除IP记账数据
ip route-cache flow | 在接口上启用NetFlow机制
ip flow-export destination ip-address udp-port | 为接收NetFlow数据的主机指定IP地址和UDP端口号
ip flow-export [version 1|version 5[origin-as|peer-as]] | 指定向流采集器发送数据时使用NetFlow版本以及发送那些AS号、流量的发信AS或路由器的对等体AS
show ip flow export | 显示数据导出方式的相关信息
show ip cache flow | 显示被导出的数据
ip cef | 在全局范围内以及所有支持CEF的接口上启用CEF
ip flow-aggregation cache {as|destination-prefix|prefix|protocol-port|source-prefix}
| 定义一个聚合NetFlow缓存
cache entries number_of_entries | 定义聚合缓存中的最大表项数
cache timeout inactive seconds | 定义聚合缓存中非活动表项的超时值
cache timeout active minutes | 修改活动表项保持有效的分钟数
export destination ip_address udp_port | 为聚合缓存指定导出目的地
enabled | 启用聚合缓存
show ip cache flow aggregation as | 显示AS缓存数据
show ip cache flow aggregation destination-prefix | 显示目的前缀缓存数据
show ip cache flow aggregation source-prefix | 显示源前缀缓存数据
show ip cache flow aggregation protocol-port | 显示协议端口缓存数据
enable-secret password | 定义启动级密码
service password-encryption | 在查看配置时对密码进行加密
access-class access-list_1-199_or_1300_2699[in|out] | 在允许入站或出站终端会话前指定一个所要使用的访问列表
transport input telnet ssh | 限制允许建立终端会话的协议
transport input none | 在所配置的命令行上禁止所有的终端协议
exec-timeout | 为非活动终端会话定义超时值
service tcp-keepalives-in | 在入站连接中启用TCP保持激活消息
no ip directed-broadcast | 在接口上禁用定向广播
scheduler interval milliseconds | 配置路由器停止处理中断请求的间隔,并按照此间隔处理其他商业事务
scheduler allocate interrupt-time process-time | 定义路由器在任意网络中断上下文中完成快速交换所需的最大时间,以及禁用网络
| 中断时路由器在进程级所需的最短时间
no service tcp-small-servers | 禁用TCP小型服务器
no service udp-small-servers | 禁用UDP小型服务器
no service finger | 禁用Finger服务器
no ip bootp server | 禁用BOOTP服务器
aaa new-model | 启用AAA
aaa authentication login {default|list_name} group auth_type [auth_type ...] | 定义AAA认证方法列表
login authentication list_name | 指定在认证连接用户时所使用的已定义的AAA认证方法列表
tacacs-server host ip_address | 定义TACACS服务器
radius-server host ip_address | 执行RADIUS服务器
tacacs-server key key | 定义路由器与TACACS服务器之间使用的共享密钥
radius-server key key | 定义路由器与RADIUS服务器之间使用的共享密钥
aaa authentication enable default group auth_type [auth_type] | 定义启用级访问所使用的认证类型
aaa authorization {network|exec|commands level|reverse-access}{default|list-name}[method1[method2...]]
| 定义AAA认证方法列表
authorization {arap|exec|commands level|reverse-access}{default|listname} | 指定在认证连接用户时所使用
| 的已定义的AAA授权方法列表
aaa accounting {system|network|exec|connection|commands level}{default|list-name}{start-stop|wait-start|stoponly|none}
{method1[method2...]] | 定义AAA记账方法列表,定义所要记账的信息类型
accounting {arap|exec|connection|commands level}{default|list-name} | 指定在认证连接用户时所使用的已定义的AAA记账方法列表
hostname hostname | 定义路由器的主机名(生成RSA密钥时需要)
ip domain-name domainname | 定义路由器的域名(生成RSA密钥时需要)
crypto key generate rsa | 生成RSA密钥(并启用SSH)
ip ssh {[timeout seconds]|authentication-retries integer]} | 修改SSH参数
standby [group-number] ip [ip-address[secondary]] | 为指定备用组定义HSRP地址
standby [group-number] timers hellotime holdtime | 为指定备用组修改定时器
standby [group-number] priority priority [preempt[delay delay]] | 修改指定备用组中的路由器的优先级,并指定抢占特性
standby [group-number] [priority priority] preempt [delay delay]| 指定抢占特性,并修改指定备用组中的路由器的优先级
standby [group-number] track type number [interface-priority] | 标识一个备用被跟踪的接口
standby [group-number] authentication string | 定义一个备用认证字符串
standby use-bia [scope interface] | 将固化(burnt-in)地址作为备用MAC地址
show standby | 显示当前的HSRP属性
-------------------------------------------------------------------------------------------------------------------------
-------------------------------------------------------------------------
附录A 命令 show ip bgp neighbors 的显示内容
------------------------------------------------------------------------
show ip bgp neighbors 10.100.1.1
-----------------------------------------------------------------------
附录B 正则表达式教程
--------------------------------------------------------------------------
------------------------------------------------------------------------
表B-1 与AS_PATH 访问列表相关的正则表达式中的元字符
------------------------------------------------------------------------
元字符 | 匹配什么
------------------------------------------------------------------------
. | 任何单字符,包括空格
[] | 任何列于方括号内的字符
[^] | 任何字符(列于方括号之内的除外)(^要位于直接量序列之前)
- | (连字符)位于被连字符分割的两个直接量之间的任何字符
? | 0或一个字符(或模式)实例
* | 0或多个字符(或模式)实例
+ | 一个或多个(或模式)实例
^ | 行起始
$ | 行结束
| | 被元字符隔开的两个直接量之一
_ | (下划线)逗号、行的起始、行的结束或空格
--------------------------------------------------------------------------
--------------------------------------------------------------------------
符录C 保留的多播地址
------------------------------------------------------------------------
-----------------------------------------------------------------------
224.0.0.1 All Systems on this Subnet
224.0.0.2 All Routers on this Subnet
224.0.0.4 DVMRP Routers
224.0.0.5 OSPFIGP OSPFIGP All Routers
224.0.0.6 OSPFIGP OSPFIGP Designated Routers
224.0.0.9 RIP2 Routers
224.0.0.10 IGRP Routers
224.0.0.12 DHCP Server/Relay Agent
224.0.0.13 All PIM Routers
224.0.0.18 VRRP
224.0.0.22 IGMP
224.0.0.25 router-to-switch
224.0.1.1 NTP Network Time Protocol
224.0.1.9 MTP Multicast Trandport Protocol
224.0.1.24 microsoft-ds
224.0.1.39 cisco-rp-announce
224.0.1.40 cisco-rp-discovery
224.0.1.141 DHCP-SERVERS
-----------------------------------------------------------------------
-----------------------------------------------------------------------