烽火2640路由器命令行手册-04-网络协议配置命令

第1章   IP寻址配置命令

1.1  IP寻址配置命令

IP寻址配置命令包括:

l   arp

l   arp timeout

l   clear arp-cache

l   ip address

l   ip directed-broadcast

l   ip forward-protocol udp

l   ip helper-address

l   ip host

l   ip proxy-arp

l   ip unnumbered

l   keepalive

l   show arp

l   show hosts

l   show ip interface

1.1.1   arp

配置静态ARP映射,静态ARP映射会永久保留在ARP缓存中。如果要删除配置的静态ARP映射的话,使用 no arp 命令。

arp [vrf vrf-name] ip-address hardware-address [alias]

no arp [vrf vrf-name] ip-address

参数

参数

参数说明

Vrf-name

(支持VRF的版本可选)VRF名称。

ip-address

本地数据链路接口的IP地址。

hardware-address

本地数据链路接口的物理地址。

alias

(可选)路由器回答对这一IP地址的ARP请求,就象是本身拥有这个IP地址。

缺省

ARP缓存中不存在永久的静态ARP映射。

命令模式

全局配置态 

使用说明

一般的主机都可以支持动态ARP解析,所以一般不需要用户特地为主机配置静态ARP映射。VRF子命令指明该arp表项属于哪个VRF。

 示例

下面的这条命令配置IP地址为1.1.1.1的主机的MAC地址为00:12:34:56:78:90。

arp 1.1.1.1 00:12:34:56:78:90  

相关命令

clear arp-cache

1.1.2   arp timeout

配置ARP缓存中动态ARP表项的存在时间。如果要恢复到缺省值的话,使用 no arp timeoutdefault arp timeout命令。

arp timeout seconds

no arp timeout

default arp timeout

 参数

参数

参数说明

seconds

ARP缓存中动态ARP表项的存在时间(秒)。0 表示在这个接口动态解析得到的ARP缓存不会被超时释放。

缺省

180 秒 (3分钟) 

命令模式

接口配置态 

使用说明

如果在不使用ARP的接口上进行配置,则配置无效。show interface命令将显示在这个接口上配置的ARP表项超时时间,显示如下:

ARP type: ARPA, ARP timeout 00:03:00

 示例

下面这条命令在接口Ethernet 1/0上配置动态ARP映射的生存时间是900秒,以便使ARP缓存更快地刷新。

!

interface ethernet 1/0

arp timeout 900

!

 相关命令

show interface

1.1.3   clear arp-cache

清除所有动态ARP缓存。

clear arp-cache

 参数

命令没有参数或关键字。

 命令模式

管理态

 示例

下面的命令清除所有的动态ARP缓存。

clear arp-cache

 相关命令

arp

1.1.4   ip address

配置接口IP地址,同时设置网络掩码。目前已经不再严格区分A,B,C类IP地址,但是,不能使用多播地址和广播地址(主机部分全“1”)。除了以太网,其它类型的多个接口可以在同一个网段上。但是,以太网接口所配置的网段不能和其它任意类型的接口相同,除了无编号接口。一个接口上一般都可以配置一个主地址和无限多个从属地址。从属地址只能在配置了主地址后才可以配置,从属地址全部删除之后才可以删除主地址。系统本身生成的IP报文,如果上层应用没有指定源地址,路由器将使用发出接口上配置的与网关在同一网段上的IP地址作为报文的源地址,如果不能确定这个IP地址(例如接口路由),则采用发出接口的主地址。如果一个接口没有配置IP地址,而且也不是无编号接口(unnumbered 接口),则这个接口不处理IP报文。

如果要删除IP地址,或者停止某个接口对IP报文的处理,可以使用no ip address命令清除接口上的某个或所有IP地址。

ip address ip-address mask [secondary]

no ip address ip-address mask

no ip address

 参数

参数

参数说明

ip-address

IP 地址。

mask

IP 网络掩码。

secondary

(可选) 指明配置的是IP从属地址,如果没有指明,则配置的是IP主地址。

缺省

接口上不配置任何IP地址。

 命令模式

接口配置态

 使用说明

如果路由器在某个物理网段上配置了从属IP地址,其它同一物理网段上的系统也必须配置相同逻辑网段的从属地址,否则容易很快就引起路由循环。

当使用OSPF协议时,要确保一个接口上的从属地址和它的主地址在同一个OSPF area中。

 示例

下列命令在ethernet1/0接口上配置主地址202.0.0.1,网络掩码255.255.255.0,另外配置了两个IP从属地址203.0.0.1和204.0.0.1。

interface ethernet1/0

ip address 202.0.0.1 255.255.255.0

ip address 203.0.0.1 255.255.255.0 secondary

ip address 204.0.0.1 255.255.255.0 secondary

1.1.5   ip directed-broadcast

转发IP定向广播,并将报文以物理广播的形式发送。

ip directed-broadcast [access-list-namer]

no ip directed-broadcast

 参数

参数

参数说明

access-list-name

(可选)访问表名称。如果定义了访问表,只有访问表允许的广播报文被转发。

缺省

缺省情况下,不转发IP定向广播。

 命令模式

接口配置态

 示例

下面的例子在接口ethernet1/0上配置转发IP定向广播。

!

interface ethernet 1/0

ip directed-broadcast

!

1.1.6   ip forward-protocol udp

当接口上配置了ip helper-address后,用于指定对哪些 UDP 协议有限广播报文进行转发。

ip forward-protocol udp [port]

no ip forward-protocol udp [port]

default ip forward-protocol udp

 参数

参数

参数说明

port

(可选)需要被转发的UDP报文的目的端口。

缺省

转发NETBIOS名字服务(Name Service)报文。

 命令模式

全局配置态

 使用说明

目前缺省转发NETBIOS名字服务报文,如果要求不转发NETBIOS名字服务报文,可以使用下列任一命令:

no ip forward-protocol udp netbios-ns

no ip forward-protocol udp 137

使用下面的命令停止转发所有UDP有限广播报文:

no ip forward-protocol udp

 示例

Router_config#ip forward-protocol udp 137

 相关命令

ip helper-address

1.1.7   ip helper-address

将IP定向广播报文转发到命令指定的IP帮助地址,可以是单目或者是广播地址。每个接口可以配置多个帮助地址。ip helper-address address

no ip helper-address [address]

参数

参数

参数说明

address

IP 帮助地址。

缺省

未配置IP帮助地址。

命令模式

接口配置态

 使用说明

该命令在X.25接口上不起作用,因为路由器不能辨别出物理广播。

 示例

下面的命令在接口ethernet1/0上配置IP帮助地址1.0.0.1。

!

interface ethernet 1/0

ip helper-address 1.0.0.1 

!

相关命令

ip forward-protocol udp

1.1.8   ip host

定义静态主机名称—地址映射。如果要删除主机名称—地址映射,使用no ip host命令。

ip host name address

no ip host name

参数

参数

参数说明

name

主机名称。

Address

IP地址。

缺省

没有配置任何映射。

 命令模式

全局配置态

 示例

下面的例子配置IP地址为202.96.1.3的主机名称是dns-server。

ip host dns-server 202.96.1.3

1.1.9   ip proxy-arp

在接口上进行代理ARP。如果要关闭这项功能,使用no ip proxy arp命令。

ip proxy-arp

no ip proxy-arp

参数

命令没有参数或关键字。

 缺省

进行代理ARP。

 命令模式

接口配置态

 使用说明

当路由器收到ARP请求时,如果路由器有到被请求IP地址的路由,且路由接口和收到请求的接口不同,路由器将以自己的MAC地址发出ARP响应,然后,在收到实际数据报文时,进行转发。这样,即使一台主机不完全了解网络的拓扑结构,或者没有配置准确的路由,也能和远端通信。对它来说,远端主机就和它直接连接在同一个物理子网中。

如果主机需要路由器提供这项服务,它和路由器必须在同一个IP网络中,或者,至少它的IP地址必须能够使路由器认为它们在同一个IP子网中,也就是说,可以使用不同的掩码。否则,路由器将不提供这项服务。

 示例

下面的例子在接口ethernet1/0上打开代理ARP功能:

!

interface ethernet 1/0

ip proxy-arp

!

1.1.10   ip unnumbered

配置一个接口为无编号接口,可以不配置IP地址就开启IP处理功能。要停止这个接口上的IP处理,使用no ip unnumbered命令。

ip unnumbered type number

no ip unnumbered

 参数

参数

参数说明

type number

另一个配置了IP地址的接口的类型和编号。这个接口不可以是使用其它接口IP地址的无编号接口。

缺省

不启动这项功能。

 命令模式

接口配置态

使用说明

对于点到点链路接口来说,可以不配置独有的IP地址,而是使用这条命令在这个接口上启动IP处理,并指定借用其它接口上的有效IP地址作为这个接口发出报文的源地址,以便节省IP地址。这样的点到点接口称为无编号(unnumbered)接口。无编号接口上生成的IP报文,例如路由更新报文,将使用命令中指定的接口上配置的有效IP地址。它还用这一地址确定哪些路由进程在该接口上发送更新报文。但是,有下列限制:

(1)       使用HDLC,PPP, LAPB,SLIP和帧中继封装的串行接口和隧道接口可以使用该条命令配置成无编号接口。但是,X.25和SMDS接口不能使用这条命令。

(2)       无法通过ping命令检测这个接口是否正常工作。可以使用SNMP远程检测这个接口的状态。

这条命令根据RFC 1195中关于接口可以不配置有效IP地址的规定实现。

在不同的主网之间的使用其它接口IP地址的串行链路,必须小心对待:任何运行在这条链路上的路由协议不能广播任何有关各自子网的信息。

 示例

下面的命令将接口serial0/0配置成无编号接口,使用接口ethernet0/1上配置的有效IP地址1.0.0.1作为这个接口上发出报文的源地址:

!

interface ethernet 0/1

ip address 1.0.0.1 255.255.255.0

!

interface serial 0/0

ip unnumbered ethernet 1/0

!

1.1.11   keepalive

测试主机的可到达性和网络的连通性。通过发送ICMP回应请求报文给对方,但不等待对方的ICMP回应应答报文。

keepalive [ group group-id ] [ source source-address ] [interval interval-time] [number number] destination destination-address

参数

参数

参数说明

group group-id

可以配置多条 keepalive 命令,命令之间以group-id区分。缺省:0

source source-address

设置报文采用的源IP地址。 缺省:发送接口的主IP地址。

interval interval-time

每次报文发送之间的间隔,以秒为单位。缺省:1秒

number number

每次报文发送的个数。缺省:5。

destination destination-address

目的主机。

命令模式

管理态和全局配置态

使用说明

keepalive 命令支持广播地址和多播地址。如果是有限广播(255.255.255.255)或者是多播地址,将在所有支持广播或者是多播的可用接口上发送ICMP回应请求报文。

该命令不等待ICMP报文的应答,它只是定时向目的地址发送指定数目的ICMP报文。

示例

以下配置了两条keepalive 命令。

配置每 10 秒钟以源地址192.168.20.230 向目的地址 192.168.20.1 发送 10 个 ICMP request 报文。报文的发送端口由目的地址 192.168.20.1 和路由协议共同决定。

keepalive group 1 destination 192.168.20.1 source 192.168.20.230 interval 10 number 10

配置每 1 秒钟(默认值)以源地址172.16.20.232 向目的地址 172.16.20.5 发送 5个(默认值) ICMP request 报文。报文的发送端口由目的地址 172.16.20.2 和路由协议共同决定。

keepalive group 2 destination 172.16.20.2 source 172.16.20.232

1.1.12   show arp

显示所有ARP表项,包括接口IP地址的ARP映射,用户配置的静态ARP映射,动态ARP映射。者为恐的are Address   wu。

show arp [vrf vrf-name]  

参数

参数

参数说明

Vrf-name

(支持VRF版本可选)指定显示哪个vrf的arp表项。

命令模式

管理态

 使用说明

显示的信息包括:

参数

参数说明

Protocol

协议,与物理地址映射的网络地址的类型,例如IP。

Address

地址,与物理地址相映射的网络地址,如IP地址。

Age

生存时间,ARP表项从生成到现在的时间,以分钟为单位。路由器使用这条ARP表项不会影响这个值。

Hardware Address

物理地址,与网络地址对应的物理地址,对于尚未解析完成的表项为空。

Type

类型,表示接口使用的报文封装类型,包括ARPA,SNAP等。

Interface

接口,与这个网络地址相关联的接口。

示例

下面的命令显示ARP缓存:

router#show arp

Protocol   IP Address      Age(min)  Hardware Address   Type  Interface

     IP     192.168.20.77       11   00:30:80:d5:37:e0  ARPA  Ethernet1/0

     IP     192.168.20.33          0     Incomplete

     IP     192.168.20.22          -   08:00:3e:33:33:8a  ARPA  Ethernet1/0

     IP     192.168.20.124         0   00:a0:24:9e:53:36  ARPA  Ethernet1/0

     IP     192.168.0.22           -   08:00:3e:33:33:8b  ARPA  Ethernet1/1

1.1.13   show hosts

显示主机名—地址缓存中的所有表项。

show hosts

 参数

命令没有参数或关键字。

 命令模式

管理态

 示例

下面的命令显示所有主机名称/地址映射:

show hosts

相关命令

clear host

1.1.14   show ip interface

显示接口上的IP配置。

show ip interface [type number]

 参数

参数

参数说明

type

(可选) 接口类型。

number

(可选) 接口编号。

命令模式

管理态

 使用说明

如果接口的链路层可以有效收发数据,它就是一个可用接口,状态是“Protocol Up”。如果在这个接口上配置IP地址,路由器将在路由表中添加一条直连路由。如果链路层协议断开,也就是“Protocol Down”,这条直连路由将被删除。如果指定接口类型和编号,只显示指定接口信息。否则,显示所有接口的IP配置信息。

 示例

下面的命令显示接口e0/1上的IP配置:

Router#show ip interface e0/1

    Ethernet1/0 is up, line protocol is up

IP address : 192.168.20.167/24

        Broadcast address : 192.168.20.255

        Helper address : not set

        MTU : 1500(byte)

        Forward Directed broadcast : OFF

        Multicast reserved groups joined:

          224.0.0.9 224.0.0.6 224.0.0.5 224.0.0.2

          224.0.0.1

        Outgoing ACL : not set

        Incoming ACL : not set

        IP fast switching : ON

        IP fast switching on the same interface : OFF

        ICMP unreachables : ON

        ICMP mask replies : OFF

        ICMP redirects : ON

显示说明:

描述

Ethernet1/0 is up

如果接口硬件可用,接口被标为“up”。 如果接口可用,它的硬件和线路协议都必须是up的。

line protocol is up

如果接口可以提供双向通信,它的线路协议被标为“up”。如果接口可用,接口硬件和线路协议都必须是up的。

IP address

接口IP地址和网络掩码。

Broadcast address

显示广播地址。

MTU

显示接口设置的IP MTU。

Helper address

显示帮助地址。

Directed broadcast forwarding

接口是否转发定向广播报文。

Multicast reserved groups joined

接口加入的多播组。

Outgoing ACL

接口使用的输出访问控制表。

Incoming ACL

接口使用的输入访问控制表。

IP fast switching

路由器在该端口上是否启动快速转发

Proxy ARP

接口是否支持代理ARP。

ICMP redirects

接口是否发出ICMP重定向报文。

ICMP unreachables

接口是否发出ICMP不可到达报文。

ICMP mask replies

接口是否发出ICMP掩码应答报文。

第2章   NAT配置命令

2.1  NAT配置命令

NAT配置命令包括:

l   ip nat

l   ip nat local-service

l   ip nat enable-peek

l   ip nat inside destination

l   ip nat inside source

l   ip nat outside source

l   ip nat pool

l   ip nat translation

l   clear ip nat statistics

l   clear ip nat translation

l   show ip nat statistics

l   show ip nat translations

l   debug ip nat

2.1.1   ip nat

ip nat {inside | outside | mss }

no ip nat {inside | outside | mss MSS-value}

 参数

参数

参数说明

inside

表明接口连接到内部网络(网络服从NAT翻译)

outside

表明接口连接到外部网络(网络服从NAT翻译)

mss MSS-value

设置MSS值为MSS-value(必须先配有ip nat outside)

缺省

离开或到达这个接口的通信量不服从NAT。

命令模式

接口配置态

使用说明

只有那些在“内部”和“外部”接口之间传送的报文才可以被翻译。必须为每个想使用NAT的边界路由器至少指定一个内部接口和一个外部接口。

使用IP NAT接口配置命令来指定来自接口的或发往接口的通信量服从NAT(网络地址翻译),如果想禁止接口的翻译功能,使用这个命令的NO形式。

注意:

ip nat mss命令只能配在ip nat outside的接口下,它的作用是修改从内部网出去的带有SYN标志的TCP报文选项中的MSS(Maximum Segment Size)值。如果想禁止该接口修改MSS值的功能,使用这个命令的NO形式。

示例

下面的例子把来自192.168.1.0或192.168.2.0网络编址的内部主机间进行通信的IP地址翻译为171.69.233.208/28 网络中全局唯一的IP地址,并且修改MSS为1432值。

!

ip nat pool net-208 171.69.233.208 171.69.233.223 255.255.255.240

ip nat inside source list a1 pool net-208

!

interface ethernet 0

 ip address 171.69.232.182 255.255.255.240

 ip nat outside

ip nat mss 1432

!

interface ethernet 1

 ip address 192.168.1.94 255.255.255.0

 ip nat inside

!

ip access-list standard a1

 permit 192.168.1.0 255.255.255.0

.permit 192.168.2.0 255.255.255.0

!

2.1.2   ip nat local-service

ip nat local-service {icmp | udp | tcp } disable

no ip nat local-service {icmp | udp | tcp } disable

参数

参数

参数说明

icmp

Icmp 报文。

udp

udp报文。

tcp

tcp报文。

缺省

命令模式

接口配置态

使用说明

此命令应用于PAT规则。默认情况下,在标记为NAT外部端口的路由器接口,允许所有访问路由器本地的icmp/udp/tcp报文。该命令可以有限的防止外部网络用户对路由器的, 恶意攻击,当然也丢弃了正常的访问路由器的报文。

如果想某标记为NAT外部端口的路由器接口禁止接收访问本地的icmp/udp/tcp报文,可以在端口状态下配置如下命令,使用这个命令的NO形式可以恢复默认状态。

注意:

此命令只能配置标记为NAT外部端口所在的路由器接口下,并只能使本接口禁止接收icmp/udp/tcp本地报文。

2.1.3   ip fastaccess

ip fastaccess deny {tcp | udp | icmp} {port number}

no ip fastnat deny {tcp | udp | icmp} {port number}

参数

参数

参数说明

deny

定义阻止包的规则

tcp

定义阻止TCP包的规则

udp

定义阻止UDP包的规则

icmp

定义阻止ICMP包的规则

Port number

TCP/UDP端口号, 范围为1~10000

缺省

命令模式

接口配置态

使用说明

由于ip fastaccess只能基于传输层限制报文转发,如果需要基于IP地址限制,则需要用到一般访问列表

建议:如果需要使用一般访问列表限制内网用户,如果使用到动态NAT规则,则强烈建议利用NAT所用的访问列表。特别对于那些需要定义非常多规则的访问列表,这样可以显著提高性能。

2.1.4   ip fastnat 1to1

ip fastnat 1to1 outside {interface-type number} [backup-outside {interface-type number}] inside {interface-type number} [privateservices] [extend]

no ip fastnat

参数

参数

参数说明

outside interface-type number

指定的标记为NAT OUTSIDE的网络接口,该网络接口是主线路的出口。

backup-outside interface-type number

[可选]指定的标记为NAT OUTSIDE的网络接口,该网络接口是备份线路的出口。

inside interface type number

指定的标记为NAT INSIDE的网络接口,该网络接口是备份线路的入口。

privateservices

[可选]开启私服功能

extend

[可选]开启支持扩展访问列表功能

缺省

命令模式

全局配置态

使用说明

该命令的使用对网络环境有限制,具体信息请参考配置说明书。

如果不使用私服或者扩展访问列表,则建议不要配置选项privateservices和extend

2.1.5   ip nat inside destination

用ip nat inside destination全局配置命令,开启内部目的地址的NAT.用这个命令的NO形式,删除和地址池的动态关联,注意,该规则正在使用时,不能删除。

ip nat inside destination list access-list-name pool name

no ip nat inside destination list access-list-name

参数

参数

参数说明

list name

标准IP访问列表的名字。 用来自被指定的池中的全局地址对带有目的地址的报文进行翻译,这些包用来发送访问列表。

pool name

地址池的名字,在动态翻译的过程中,从这个池中分配内部本地的IP地址。

缺省

内部目的地址不被翻译。

命令模式

全局配置态

使用说明

这个命令用访问列表的格式来建立动态地址翻译。来自和标准访问列表相匹配的地址的报文,将用指定的地址池中分配的全局地址来进行地址翻译,这个地址池是用ip nat pool命令所指定的。

示例

下面的例子把发往171.69.233.208 网络通信的报文翻译为目的地址位于192.168.2.208网段的内部主机地址。

!

ip nat pool net-208 192.168.2.208 192.168.2.223 255.255.255.240

ip nat inside destination list a1 pool net-208

!

interface ethernet 0

 ip address 171.69.232.182 255.255.255.240

 ip nat outside

!

interface ethernet 1

 ip address 192.168.1.94 255.255.255.0

 ip nat inside

!

ip access-list standar a1

 permit 171.69.233.208 255.255.255.240

!

2.1.6   ip nat inside source

使用ip nat inside source全局配置命令,开启内部源地址的NAT。用这个命令的NO形式可以删除静态翻译或删除和池的动态关联,注意:动态翻译规则和静态网段翻译规则在使用时,不能删除。

动态NAT:

ip nat inside source {list access-list-name} {interface type number | pool pool-name} [overload

no ip nat inside source {list access-list-name} {interface type number | pool pool-name} [overload]

静态单个地址NAT:

ip nat inside source {static {local-ip global-ip}

no ip nat inside source {static {local-ip global-ip}

静态端口NAT:

ip nat inside source {static {tcp | udp local-ip local-port {global-ip | interface type number} global-port

no ip nat inside source {static {tcp | udp local-ip local-port {global-ip | interface type number} global-port}

静态网段NAT:

ip nat inside source {static {network local-network global-network mask}

no ip nat inside source {static {network local-network global-network mask}

参数

参数

参数说明

List access-list-name

IP访问列表的名字。源地址符合访问列表的报文将被用地址池中的全局地址来翻译。

pool name

地址池的名字,从这个池中动态地分配全局IP地址。

interface type number

指定网络接口

overload

(可选)使路由器对多个本地地址使用一个全局的地址。当OVERLOAD被设置后,相同或者不同主机的多个会话将用TCP或UDP端口号来区分。

static local-ip

建立一条独立的静态地址翻译;参数为分配给内部网主机的本地IP地址。这个地址可以自由的选择,或从RFC 1918中分配。

local-port

设置本地TCP/UDP端口号,范围为1~65535。

static global-ip

建立一条独立的静态地址翻译;这个参数为内部主机建立一个外部的网络可以唯一访问的IP地址。

global-port

设置全局TCP/UDP端口号,范围为1~65535。

tcp

设置TCP端口翻译

udp

设置UDP端口翻译

network local-network

设置本地网段翻译

global-network

设置全局网段翻译

mask

设置网段翻译的网络掩码

缺省

任何内部源地址的NAT都不存在。

命令模式

全局配置态

使用说明

这个命令有两种形式:动态的和静态的地址翻译。带有访问列表的格式建立动态翻译。来自和标准访问列表相匹配的地址的报文,将用指定的池中分配的全局地址来进行地址翻译,这个池是用ip nat pool命令所指定的。

可以作为替代方法,带有关键字STATIC的语法格式创建一条独立的静态地址翻译。

静态NAT对于FTP的PASV模式的支持需要配合overload类型的命令使用,既:当设置一个NAT的静态FTP映射时,如果也需要使用FTP的PASV模式,也应该同时使用一个overload类型的转换,且pat规则中的外网接口地址中应该有一个和静态ftp的外网地址相同。

示例

下面的例子把来自192.168.1.0或192.168.2.0网络的内部主机间进行通信的IP地址翻译为171.69.233.208/28 网络中全局唯一的IP地址。

!

ip nat pool net-208 171.69.233.208 171.69.233.223 255.255.255.240

ip nat inside source list a1 pool net-208

!

interface ethernet 0

 ip address 171.69.232.182 255.255.255.240

 ip nat outside

!

interface ethernet 1

 ip address 192.168.1.94 255.255.255.0

 ip nat inside

!

ip access-list standard a1

 permit 192.168.1.0 255.255.255.0

 permit 192.168.2.0 255.255.255.0

!

静态FTP的PASV模式使用示例。

ip nat inside source static tcp 10.1.1.1 21 204.112.1.2 8021

ip nat inside source static tcp 10.1.1.1 20 204.112.1.2 8020

ip nat inside source list test1 interface f0/0

2.1.7   ip nat outside source

使用ip nat outside source全局配置命令,开启外部源地址的NAT。用这个命令的NO形式,可以删除静态条目或动态关联,注意:动态翻译规则和静态网段翻译规则在使用时,不能删除。

动态NAT:

ip nat outside source {list access-list-name} pool pool-name

no ip nat outside source {list access-list-name} pool pool-name

静态单个地址NAT:

ip nat outside source static {global-ip local-ip}

no ip nat outside source static {global-ip local-ip}

静态端口 NAT:

ip nat outside source {static {tcp | udp global-ip global-port local-ip local-port}

no ip nat outside source {static {tcp | udp global-ip global-port local-ip local-port}

静态网段 NAT:

ip nat outside source {static networkglobal-network local-network mask}

no ip nat outside source {static network global-network local-network mask}

参数

参数

参数说明

List access-list-name

标准IP访问列表的名字。目的地址符合访问列表的报文将被用地址池中的全局地址来翻译。。

pool name

池的名字,从这个池重动态地分配全局IP地址。

Static global-ip

建立一条独立的静态地址翻译;参数为建立外部网络的主机所分配的全局IP地址。这个地址可以从全局可路由的网络地址空间中分配。

global-port

设置全局TCP/UDP端口号,范围为1~65535。

Static local-ip

建立一条独立的静态地址翻译;这个参数为内部主机建立一个内部网络可以唯一访问的外部主机的本地IP地址。这个地址可以从内部网络可路由的地址空间中分配。(多遵从RFC 1918)

local-port

设置本地TCP/UDP端口号,范围为1~65535。

tcp

设置TCP端口翻译

udp

设置UDP端口翻译

network global-network

设置全局网段翻译

local-network

设置本地网段翻译

mask

设置网段翻译的网络掩码

缺省

不存在来自外部网络的源地址到内部网络地址的翻译。

命令模式

全局配置态

使用说明

可能你用了不是合法的、正式分配得到的IP地址。可能你选择了已经被正式分配给其他网络的IP地址。这种IP地址既被合法的使用了(外部网)又被非法的使用着(内部网络)的情况叫做“地址重叠”(overlapping)。你可以用NAT来翻译和外部地址重叠的内部地址。如果你的单连接网络中的IP地址碰巧和分配给其他网络的合法IP地址相同,并且你需要和这些主机或路由器通信,那么你可以用这个功能。

这个命令有两种形式:动态的和静态的地址翻译。带有访问列表的格式建立动态地址翻译。来自和标准访问列表相匹配的地址的报文,将用指定的地址池中分配的本地地址来进行地址翻译,这个地址池是用ip nat pool命令所指定的。

作为可以替代的方法,带有关键字STATIC的语法格式创建一条单独的静态翻译。

示例

下面的例子把来自9.114.11.0网络的内部主机间进行通信的IP地址翻译为171.69.233.208/28 网络中全局唯一的IP地址。更进一步地,来自9.114.11.0网络(真实存在的9.114.11.0网络)编址的外部主机的报文,被翻译为以来自10.0.1.0/24网络的面目出现。

!

ip nat pool net-208 171.69.233.208 171.69.233.223 255.255.255.240

ip nat pool net-10 10.0.1.0 10.0.1.255 255.255.255.0

ip nat inside source list a1 pool net-208

ip nat outside source list a1 pool net-10

!

interface ethernet 0

 ip address 171.69.232.182 255.255.255.240

 ip nat outside

!

interface ethernet 1

 ip address 9.114.11.39 255.255.255.0

 ip nat inside

!

ip access-list standard a1

 permit 9.114.11.0 255.255.255.0

2.1.8   ip nat pool

用ip nat pool全局配置命令,定义一个用于NAT的IP地址池。用这个命令的NO形式,可以删除指定名字的IP地址池,可以配置相同名字的地址池来覆盖已配置的地址池。

ip nat pool name start-ip end-ip netmask [rotary]

no ip nat pool name

参数

参数

参数说明

name

池的名字。

start-ip

定义IP地址池的范围:起始地址。

end-ip

定义IP地址池的范围:结束地址。

netmask

子网掩码。子网掩码表明地址中的那些位是属于网络和子网部分,而哪些位属于主机部分。指定IP池中地址所属的网络的子网掩码。

rotary

轮循地址池 。

缺省

没有定义IP池。

命令模式

全局配置态

使用说明

这个命令用起始地址,结束地址以及子网掩码来定义一个地址池。

注意:在PAT规则下,地址池的轮循规则:只有当一个地址使用完结时(即关于这个地址的所有连接都老化后),才去取下一个地址,即同一使用时间内,内部全局地址始终只有一个。

示例

下面的例子把来自192.168.1.0或192.168.2.0网络的内部主机间进行通信的IP地址翻译为171.69.233.208/28 网络中全局唯一的IP地址。

!

ip nat pool net-208 171.69.233.208 171.69.233.223 255.255.255.240

ip nat inside source list a1 pool net-208

!

interface ethernet 0

 ip address 171.69.232.182 255.255.255.240

 ip nat outside

!

interface ethernet 1

 ip address 192.168.1.94 255.255.255.0

 ip nat inside

!

ip access-list standard a1

 permit 192.168.1.0 255.255.255.0

 permit 192.168.2.0 255.255.255.0

!

2.1.9   ip nat service

此命令是为Nat支持的各种服务提供的一个入口函数,目前支持三类的服务。缺省各种服务都为关闭状态。

ip nat service { h323 | privateservice | peek }

no ip nat service { h323 | privateservice | peek }

参数

缺省

关闭

命令模式

全局配置态

使用说明

h323 对voip的支持,它用来控制Nat对h323的支持;

privateservice 是Nat对网吧设置内部游戏服务器的支持,如:传奇等;它可以控制Nat对于私服的支持;

peek 是Nat对网吧内部监控游戏服务器的支持,通过搭配F-Engine公司的客户端软家,可以对内部用户出网的情况进行监控。

no方式可以关闭相应的功能; 

示例

ip nat service privateservice

ip nat service peek

ip nat service h323

no ip nat service peek

2.1.10   ip nat translation

ip nat translation全局配置命令,主要有以下两种用途:

其一,改变NAT翻译超时的时间值,用这个命令的NO形式,可以关闭超时。

ip nat translation {timeout | udp-timeout | dns-timeout | tcp-timeout | finrst-timeout | icmp-timeout | syn-timeout } seconds

no ip nat translation {timeout | udp-timeout | dns-timeout | tcp-timeout | finrst-timeout | icmp-timeout | syn-timeout

其二,改变针对NAT翻译表项的一些参数值,用此命令的NO形式,可以去掉配置,有默认值的恢复默认值。

ip nat translation max-entries { host [A.B.C.D | any]} numbers

no ip nat translation max-entries { host [A.B.C.D | any]}

参数

参数

参数说明

timeout

指定用于除OVERLOAD翻译之外的动态翻译的超时值。缺省值是3600秒(1小时)

udp-timeout

指定用于UDP端口的超时值。缺省值是300秒(5分钟)

dns-timeout

指定用于连到DNS的超时值。缺省值是60秒

tcp-timeout

指定用于TCP端口的超时值。缺省值是3600秒(1小时)

finrst-timeout

指定用于Finish and Reset TCP报文的超时值,这个值用于终止一个翻译表项。缺省值使60秒

icmp-timeout

设置ICMP的NAT超时时间,缺省值是60秒

max-entries

设置NAT的最大翻译条目数,缺省值是3000

syn-timeout

设置TCP SYN状态的NAT超时时间,缺省值是60秒

seconds

指定端口翻译的超时值。缺省值是在缺省部分所罗列出来的值

max-entries host A.B.C.D

针对指定的内部IP地址,限制该IP地址能建立NAT翻译表项的最大数目,无缺省值,当用该命令的no形式时,即不在限制该IP地址建立NAT翻译表项的数目

max-entries host any

针对所有的内部IP地址,限制单个IP地址能建立NAT翻译表项的最大数目。缺省值与max-entries相同

缺省

timeoutis 3600 seconds (1 hours)

udp-timeoutis 300 seconds (5 minutes)

dns-timeoutis 60 seconds (1 minute)

tcp-timeoutis 3600 seconds (1 hours)

finrst-timeout is 60 seconds (1 minute)

命令模式

全局配置态

使用说明

当配置了端口翻译之后,因为每个翻译条目包含了有关正在使用它的通信量更多的上下文信息,因此可以对翻译条目进行更好的控制。非域名系统(DNS)的UDP翻译在5分钟后超时,而域名系统的UDP翻译在1分钟后超时。如果数据流中没有RST或FIN,TCP翻译在1个小时后超时;而在有RST或FIN的情况下,将在1分钟后超时。

示例

例1:

下面的例子在10分钟之后使UDP端口翻译条目超时:

ip nat translation udp-timeout 600

例2:

下面的例子限制IP地址192.168.20.1建立的NAT翻译表项的最大数目为100:

ip nat translation max-entries host 192.168.20.1 100

2.1.11   ip nat translation max-users[不再支持]

配置nat限制上网用户数的功能。

[no] ip nat translation max-users <0-65536>

[no] ip nat translation max-users enable

参数

参数

参数说明

0-65536

设置可以上网的内网用户数,缺省为256个。

缺省

缺省内网的用户数为256个,缺省不开启这个功能。

命令模式

全局配置态。

使用说明

通过这个命令可以开启和设置nat限制内网用户数的功能。当一个用户上网时,如果之前在nat中没有对应的记录,那么他就是一个新内网用户。如果这时内网用户上网数量已经达到设定值,那么这个用户发向外面的报文将被抛弃,该用户将不可以上网。如果内网用户数量没有达到限制值,nat就记录该用的ip地址,并进行正常的报文转发过程。

所记录用户ip地址的超时时间与该用户的最后一次发送的报文所属的link的ttl值相同。

NO方式关闭该功能。

示例

下列命令在全局态配置nat的限制功能:

ip nat translation max-users enable

ip nat translation max-users 124

2.1.12   clear ip nat statistics

为了清除NAT的统计信息,使用clear ip nat statistics命令。

clear ip nat statistics

参数

命令模式

管理态

使用说明

使用本命令可以把所有NAT统计信息置为初始状态。

注意

只能清楚“Packets dropped”项后面的统计参数。

示例

Router#show ip nat statistics

Total active translations: 2 (1 static, 0 dynamic, 1 PAT)

Outside interfaces:

FastEthernet0/1

Inside interfaces:

    FastEthernet0/0

Dynamic mappings:

--Inside Source

    access-list nat

    pool natp: netmask 255.255.255.0

    start 172.16.20.125  end 172.16.20.127

    total addresses 3, misses 0

--Inside Destination

--Outside Source

Link items:

    PAT(ICMP=5 UDP=39 TCP=224 / TOTAL=268), Dynamic=6

Packets dropped: --Protocol:

    Out: tcp 123, udp 39, icmp 10, others 6

    In: tcp 46, udp 109, icmp 0, others 10

--Configuration:

    max entries 0, max entries for host 178

Router#clear ip nat statistics

Router#show ip nat statistic

Total active translations: 2 (1 static, 0 dynamic, 1 PAT)

Outside interfaces:

FastEthernet0/1

Inside interfaces:

    FastEthernet0/0

Dynamic mappings:

--Inside Source

    access-list nat

    pool natp: netmask 255.255.255.0

    start 172.16.20.125  end 172.16.20.127

    total addresses 3, misses 0

--Inside Destination

--Outside Source

Link items:

    PAT(ICMP=5 UDP=39 TCP=224 / TOTAL=268), Dynamic=6

Packets dropped:

--Protocol:

    Out: tcp 0, udp 0, icmp 0, others 0

    In: tcp 0, udp 0, icmp 0, fragments 0

--Configuration:

    max entries 0, max links for host 0

2.1.13   clear ip nat translation

为了从翻译表项中清除动态网络地址翻译(NAT),使用clear ip nat translation 执行命令。

clear ip nat translation {* | [inside local-ip global-ip ] [outside local-ip global-ip]}

clear ip nat translation {tcp|udp} inside local-ip local-port global-ip global-port [outside local-ip global-ip]

参数

参数

参数说明

*

清除所有的动态翻译条目

Inside

清除包含指定全局IP地址和本地IP地址的内部翻译。

global-ip

指定全局IP地址

local-ip

指定本地IP地址

outside

清除包含指定全局IP地址和本地IP地址的外部翻译。

tcp|udp

协议

global-port

指定相应协议的全局端口。

local-port

指定相应协议的本地端口。

命令模式

管理态

使用说明

使用本命令可以在动态翻译条目超时之前清除他们。

示例

下面的例子先显示NAT翻译条目,然后将UDP翻译条目清除:

Router# show ip nat translation

Pro Inside global      Inside local       Outside local      Outside global

udp 171.69.233.209:1220 192.168.1.95:1220 171.69.2.132:53    171.69.2.132:53

tcp 171.69.233.209:11012 192.168.1.89:11012 171.69.1.220:23  171.69.1.220:23

tcp 171.69.233.209:1067 192.168.1.95:1067 171.69.1.161:23    171.69.1.161:23

Router# clear ip nat translation udp inside 171.69.233.209 1220 192.168.1.95 1220

171.69.2.132 53 171.69.2.132 53

Router# show ip nat translation

Pro Inside global      Inside local       Outside local      Outside global

tcp 171.69.233.209:11012 192.168.1.89:11012 171.69.1.220:23  171.69.1.220:23

tcp 171.69.233.209:1067 192.168.1.95:1067 171.69.1.161:23    171.69.1.161:23

2.1.14   show ip nat statistics

用show ip nat statistics命令,显示NAT统计表。

show ip nat statistics

参数

这个命令没有参数或关键字

命令模式

管理态

示例

下面是使用show ip nat statistics命令的例子的输出结果:

Router# show ip nat statistics

Total active translations: 2 (1 static, 0 dynamic, 1 PAT)

Outside interfaces:

FastEthernet0/1

Inside interfaces:

    FastEthernet0/0

Dynamic mappings:

--Inside Source

    access-list nat

    pool natp: netmask 255.255.255.0

    start 172.16.20.125  end 172.16.20.127

    total addresses 3, misses 0

--Inside Destination

--Outside Source

Link items:

    PAT(ICMP=0 UDP=5 TCP=24 / TOTAL=29), Dynamic=0

Packets dropped:

--Protocol:

    Out: tcp 0, udp 0, icmp 0, others 0

    In: tcp 46, udp 100, icmp 0, others 0

--Configuration:

    max entries 0, max links for host 0

表9描述了输出结果中的重要字段:

表 2‑1 Show ip nat statistics字段描

字段

描述

Total active translations:

系统中激活的指定翻译的数量。当建立了一个地址翻译规则时,这个数值将被加1,同时当一个地址翻译被清除或超时,这个数值将减1。

Outside interfaces:

用ip nat outside 命令标识为外部接口的接口列表。

Inside interfaces:

用ip nat outside 命令标识为内部接口的接口列表。

Dynamic mappings:

显示跟在它后面的信息是关于动态映射的。

Inside Source:

跟在它后面的是关于内部源地址翻译的信息.

Access-list

用于地址翻译的访问列表数量。

Pool

池的名字(本例中池的名字是natp)

Netmask

池中所使用的IP网络掩码

Start

池中地址范围的起始IP地址.

End

池中地址范围的结束IP地址.

Total addresses

池中可用于地址翻译的地址数.

Misses

无法从池中分配的地址数量.

Inside Destination:

跟在它后面的是关于内部目的地址翻译的信息.

Outside Source:

跟在它后面的是关于外部源地址翻译的信息.

Link items:

跟在它后面的是关于翻译表项数目和类别的信息.

PAT

表示动态端口翻译规则下的翻译表项数目,其中madia代表H323会话中的RTP/RTCP会话.

Dynamic

表示动态地址翻译规则下的翻译表项数目,包括静态地址翻译为FTP创建的翻译表项.

Packets dropped:

跟在它后面的是关于因为NAT而丢弃的报文的类型和数目,以及丢弃的原因.

Protocol

表示丢弃报文的数目、协议类型和报文的NAT方向.

Configuration

表示因为何种配置丢弃的报文的数目:max entries指超过最大允许翻译表项数,max links for host指超过每个或者特定地址允许的翻译表项数.

2.1.15   show ip nat translations

用show ip nat translations 管理态命令,显示激活的NAT地址翻译。

show ip nat translations [host A.B.C.D | tcp | udp | icmp | verbose]

参数

参数

参数说明

host A.B.C.D

(可选)显示承载本地局部地址(inside local)为A.B.C.D的翻译表项

tcp

(可选)显示承载TCP会话的翻译表项

udp

(可选)显示承载UDP会话的翻译表项

icmp

(可选)显示承载ICMP会话的翻译表项

Verbose

(可选)显示关于每个翻译表项的额外信息,包括它被建立了多久,还剩下多长时间超时

命令模式

管理态

使用说明

示例

下面是使用show ip nat translations命令的例子的输出结果。

(1)       两个内部主机和外部的一些主机进行报文交换,没有超载。

Router# show ip nat translations

Pro Inside local       Inside global      Outside local      Outside global

--- 192.168.1.95       171.69.233.209     ---                ---

--- 192.168.1.89       171.69.233.210     ---                --

(2)       下面是带有超载的情况下的示例,有三条地址翻译表项是激活的,其中一条用于一个DNS业务,另外两条用于TELNET会话(来自两个不同的主机)。要注意:两个不同的内部主机能以具有相同外部地址的形式出现。

Router# show ip nat translations

Pro Inside local        Inside global          Outside local      Outside global

udp 192.168.1.95:1220   171.69.233.209:1220    171.69.2.132:53    171.69.2.132:53

tcp 192.168.1.89:11012  171.69.233.209:11012   171.69.1.220:23    171.69.1.220:23

tcp 192.168.1.95:1067   171.69.233.209:1067    171.69.1.161:23    171.69.1.161:23

下面是带有关键字verbose的输出样例:

Router# show ip nat translations verbose

Pro Inside local       Inside global     Outside local        Outside global

udp 192.168.1.95:1220  171.69.233.209:1220 171.69.2.132:53    171.69.2.132:53

        create time 00:00:02 , left time 00:01:10 ,

tcp 192.168.1.89:11012 171.69.233.209:11012  171.69.1.220:23  171.69.1.220:23

        create time 00:01:13 , left time 00:00:50 ,

tcp 192.168.1.95:1067  171.69.233.209:1067 171.69.1.161:23    171.69.1.161:23

        create time 00:00:02 , left time 00:53:19 ,

表 2‑2 Show IP NAT Translations(例 2)命令输出结果的字段描述

字段

描述

Pro

确定地址的端口协议.

Inside global

合法的IP地址(被NIC或服务提供商所提供的),他们代表了通往外部网络的一个或多个内部本地IP地址。

Inside local

被分配给内部网络中主机的IP地址;他们可能不是一个NIC或服务供应商所提供的合法地址。

Outside local

一个外部主机当它看起来像是一个内部网络时的IP地址;他们可能不是一个NIC或服务供应商所提供的合法地址。

Outside global

被它的所有者所分配的外部主机的IP地址。

Create time

地址翻译条目是多久前建立的。(单位是 小时:分:秒)

Left time

地址翻译条目经过多久会超时。

2.1.16   show ip nat users[不再支持]

显示当前允许通过的内网用户IP地址,以及数量。

show ip nat users

参数

缺省

命令模式

全局配置态。

使用说明

显示当前允许通过的内网用户IP地址,以及数量。

由于这个功能需要进行一定量的操作步骤,如果不是很必要,请不要开启这个功能。

示例

下列命令在全局态执行:

show ip nat users

一个可能的显示结果如下:

Current host count is 9, host count set is 12.

 #host IP  addr  host ttl

 172.16.20.67     20

 172.16.20.70     55

 172.16.20.81     3530

 172.16.20.90     3600 

2.1.17   debug ip nat

为了调试网络地址翻译(NAT),使用debug ip nat执行命令。

debug ip nat {detail | h323}

no debug ip nat {detail | h323}

参数

命令模式

管理态

使用说明

使用命令debug ip nat detail可以输出翻译过程中的细节,包括报文的源、目的IP地址,协议、端口号,以及没有成功的翻译的原因等等。

使用命令debug ip nat h323可以输出NAT在翻译H323报文过程中的细节,主要包括NAT识别出的H323消息,以及嵌入在这些消息里的IP地址,如果是内部地址,将会显示翻译后的地址。

示例

例1 :

Router# debug ip nat detail

Ethernet1/1 recv ICMP Src 194.4.4.89 Dst 10.10.10.102 no link found

Ethernet1/0 send TCP Src 194.4.4.102:2000 Dst 192.2.2.1:21 no matched rule

表 2‑3 表描述了显示中的域。

描述

Ethernet1/0

接口的类型、号。

send/recv

发送/接收。

ICMP/TCP/UDP

ICMP/TCP/UDP协议

Src 194.4.4.102:2000

源IP地址和端口号。

Dst 192.2.2.1:21

目的IP地址和端口号。

no link found

没有匹配到NAT翻译表项。

no matched rule

没有匹配到NAT规则。

第1条:从Ethernet1/1接口接收到的ICMP报文(源地址是194.4.4.89,目的地址是10.10.10.102;ICMP),没有找到相应的NAT翻译表项(已经找到匹配的NAT规则)。

第2条:从Ethernet1/0接口发送出去的TCP报文(源地址是194.4.4.102,目的地址是192.2.2.1;源端口是2000,目的端口是21),没有找到匹配的NAT规则。

例2:

Router# debug ip nat h323

NAT:H225:[I] processing a Setup message

NAT:H225:[I] found Setup sourceCallSignalling

NAT:H225:[I] fix TransportAddress addr-192.168.122.50:11140

NAT:H225:[I] found Setup fastStart

NAT:H225:[I] Setup fastStart PDU length:18

NAT:H245:[I] processing OpenLogicalChannel message, forward channel 1

NAT:H245:[I] found OLC forward mediaControlChannel

NAT:H245:[I] fix TransportAddress addr-192.168.122.50:16517

NAT:H225:[I] Setup fastStart PDU length:29

NAT:H245:[I] processing OpenLogicalChannel message, forward channel 1

NAT:H245:[I] found OLC reverse mediaChannel

NAT:H245:[I] fix TransportAddress addr-192.168.122.50:16516

NAT:H245:[I] found OLC reverse mediaControlChannel

NAT:H245:[O] fix TransportAddress addr-192.168.122.50:16517

NAT:H225:[O] processing an Alerting message

NAT:H225:[O] found Alerting fastStart

NAT:H225:[O] Alerting fastStart PDU length:25

NAT:H245:[O] processing OpenLogicalChannel message, forward channel 1

重要域的描述见下表:

描述

NAT

表示报文已经被NAT翻译

RAS/H255/H245

报文协议类型

O

表示报文的传输方向:Inside to Outside

I

表示报文的传输方向:Outside to Inside

第3章   DHCP Client配置命令

3.1  DHCP Client配置命令

DHCP Client配置命令包括:

l   ip address dhcp

l   ip dhcp client

l   ip dhcp-server

l   show dhcp lease

l   show dhcp server

l   debug dhcp

3.1.1   ip address dhcp

要通过Dynamic Host Configuration Protocol(DHCP)为以太网接口获得一个IP地址,使用ip address dhcp接口配置命令。要删除所获得的IP地址,可以使用这条命令的no格式。

ip address dhcp

no ip address dhcp

参数

缺省

命令模式

接口配置态

使用说明

ip address dhcp命令允许接口通过DHCP协议获得IP地址,这对通过以太网接口动态连接Internet服务提供商(ISP)非常有用。一旦获得了动态的IP地址,这个以太网接口便可以使用端口转换技术(PAT)来实现网络地址翻译(NAT)。

如果路由器上配置了ip address dhcp命令,路由器将向网络上的DHCP服务器发送DHCPDISCOVER消息。

如果路由器上配置了no ip address dhcp命令,路由器将发送DHCP RELEASE消息。

示例

以下例子使得Ethernet1/1接口通过DHCP协议来获得接口的IP地址。

!

interface Ethernet1/1

ip address dhcp

!

相关命令

ip dhcp client

ip dhcp-server

show dhcp lease

show dhcp server

3.1.2   ip dhcp client

配置本地路由器DHCP客户端的参数。

ip dhcp client { minlease seconds | retransmit count | retry_interval | select seconds }

no ip dhcp client { minlease | retransmit | retry_interval | select }

参数

参数

参数说明

minlease seconds

(可选)可接受的最小租用时间,范围从60~86400秒。

retransmit count

(可选)协议报文的重传次数,范围从1~10。

retry_interval

(可选) 重新发起DHCP请求的时间间隔,范围从1~1440分钟。

select seconds

(可选)SELECT的时间间隔,范围从0~30。

缺省

minlease参数缺省值为60秒。

retransmit参数缺省值为4次。

retry_interval参数缺省值为5分钟。

select参数缺省值为0秒。

命令模式

全局配置态。

使用说明

根据网络结构和DHCP服务器的需要,来调整这些参数。

如果配置了这些命令的no格式命令,则这些参数恢复成系统定义的缺省值。

示例

以下例子设置了路由器上DHCP客户端可接受的最小租用时间为100秒。

ip dhcp client minlease 100

以下例子设置了路由器上DHCP客户端协议报文重传次数为3次。

ip dhcp client retransmit 3

以下例子设置了路由器上DHCP客户端重新发起DHCP请求的时间间隔为10分钟。

ip dhcp client retry_interval 10

以下例子设置了路由器上DHCP客户端SELECT的时间间隔为10秒。

ip dhcp client select 10

相关命令

ip address dhcp

ip dhcp-server

show dhcp lease

show dhcp server

3.1.3   ip dhcp-server

要指定已知的DHCP服务器,可以使用ip dhcp-server命令来指定DHCP服务器的IP地址。

ip dhcp-server ip-address

no ip dhcp-server ip-address

参数

参数

参数说明

ip-address

DHCP服务器的IP地址。

缺省

无任何缺省的DHCP服务器IP地址。

命令模式

全局配置态。

使用说明

使用此命令可以指定一个DHCP服务器的IP地址,该命令不会覆盖以前指定的DHCP服务器IP地址。

使用此命令的no格式命令可以用来清除以前配置的DHCP服务器IP地址。

示例

下面的例子显示了在路由器上如何指定IP地址为192.168.20.1的服务器为DHCP服务器:

ip dhcp-server 192.168.20.1

相关命令

ip address dhcp

ip dhcp client

show dhcp lease

show dhcp server

3.1.4   show dhcp lease

要查看当前路由器所使用的DHCP服务器分配的信息,可以用show dhcp lease命令来实现。

Show dhcp lease

参数

缺省

命令模式

管理态

使用说明

使用此命令可以查看当前路由器所使用的DHCP服务器分配的信息。

示例

下面的例子显示了路由器所使用DHCP分配的信息:

router#show dhcp lease

Temp IP addr: 192.168.20.3  for peer on Interface: Ethernet1/1

Temp  sub net mask: 255.255.255.0

   DHCP Lease server: 192.168.1.3, state: 4 Rebinding

   DHCP transaction id: 2049

   Lease: 86400 secs,  Renewal: 43200 secs,  Rebind: 75600 secs

Temp default-gateway addr: 192.168.1.2

   Next timer fires after: 02:34:26

   Retry count: 1   Client-ID: router-0030.80bb.e4c0-Et1/1

相关命令

ip address dhcp

ip dhcp client

ip dhcp-server

show dhcp server

debug dhcp

3.1.5   show dhcp server

要显示已知的DHCP服务器信息,可以使用show dhcp server命令来实现。

show dhcp server

参数

缺省

命令模式

管理态

使用说明

使用此命令可以显示已知的DHCP服务器信息。

示例

下面的例子已知的DHCP服务器信息。

router#show dhcp sever

DHCP server: 255.255.255.255

  Leases:  0

  Discovers: 62 Requests: 0     Declines: 0     Releases: 0

  Offers:    0  Acks:     0     Naks:     0     Bad:      0

  Subnet: 0.0.0.0,      Domain name:

相关命令

ip address dhcp

ip dhcp client

ip dhcp-server

show dhcp lease

3.1.6   debug dhcp

当路由器上dhcp运行时,要查看dhcp协议的处理状况,可以运行debug dhcp命令。

debug dhcp <detail>

no debug dhcp <detail>

参数

参数

参数说明

detail

显示DHCP协议报文内容。

缺省

缺省情况下不显示相关信息。

命令模式

管理态

使用说明

显示和DHCP处理相关的一些重要处理信息,举例如下:

router#debug dhcp

router#2000-4-22 10:50:40 DHCP: Move to INIT state, xid: 0x7

2000-4-22 10:50:40 DHCP: SDISCOVER attempt # 1, sending 277 byte DHCP packet

2000-4-22 10:50:40 DHCP:        B'cast on Ethernet1/1 interface from 0.0.0.0

2000-4-22 10:50:40 DHCP: Move to SELECTING state, xid: 0x7

2000-4-22 10:50:46 DHCP: SDISCOVER attempt # 2, sending 277 byte DHCPpacket

2000-4-22 10:50:46 DHCP:        B'cast on Ethernet1/1 interface from 0.0.0.0

2000-4-22 10:50:54 DHCP: SDISCOVER attempt # 3, sending 277 byte DHCPpacket

相关命令

show dhcp lease

第4章   DHCP Server配置命令

4.1  DHCPD配置命令

DHCPD配置命令包括:

l   ip dhcpd ping packet

l   ip dhcpd ping timeout

l   ip dhcpd write-time

l   ip dhcpd database-agent

l   ip dhcpd pool

l   ip dhcpd enable

l   ip dhcpd disable

4.1.1   ip dhcpd ping packet

ip dhcpd ping packet pkgs

参数

参数

参数说明

pkgs

DHCP服务器用于检测地址是否已经分配所发送的ICMP包个数。

缺省

2

命令模式

全局配置态

使用说明

用户可以使用如下命令来配置DHCP服务器在检查地址是否已经分配时,发送n个ICMP包。

ip dhcpd ping packets n

示例

以下命令配置DHCP服务器在检查地址是否已经分配时,发送1个ICMP包。

ip dhcpd ping packets 1  

4.1.2   ip dhcpd ping timeout

参数

参数

参数说明

timeout

DHCP服务器用于检测地址是否已经分配时,等待ICMP包响应的超时时间(以100毫秒为单位)。

缺省

5

命令模式

全局配置态

使用说明

用户可以使用如下命令来配置DHCP服务器在检查地址是否已经分配时,等待ICMP包响应的超时时间为n*100ms。

ip dhcpd ping timeout n

示例

以下命令配置DHCP服务器在检查地址是否已经分配时,等待ICMP包响应的超时时间为300ms。

ip dhcpd ping timeout 3  

4.1.3   ip dhcpd write-time

参数

参数

参数说明

time

DHCP服务器将地址分配信息保存到数据库中的间隔时间(以分钟为单位)。

缺省

0

命令模式

全局配置态

使用说明

用户可以使用如下命令来配置DHCP服务器每隔n分钟就将地址分配信息写入数据库中

ip dhcpd write-time n

示例

以下命令配置DHCP服务器每隔1天将就将地址分配信息写入数据库中

ip dhcpd write-time 1440  

4.1.4   ip dhcpd database-agent

参数

参数

参数说明

Ip address

DHCP服务器将地址分配信息以文件形式保存到PC的地址

缺省

命令模式

全局配置态

使用说明

用户可以使用如下命令来配置保存DHCP服务器的地址分配信息的PC的地址。

ip dhcpd database-agent  X.X.X.X

如果没有配置该地址,则将地址分配信息保存到flash。

备注:完成保存地址分配信息需要该PC启动TFTP服务器且该PC与DHCP服务器正确连接。

示例

ip dhcpd database-agent 192.168.1.1 

4.1.5   ip dhcp snooping arp

参数

缺省

命令模式

全局配置态

使用说明

使用ip dhcp snooping arp命令可以开启ARP映射保护作用。当配置该命令后,DHCP server 将 DHCP client的MAC地址和分配的IP地址建立ARP映射并进行保护。

示例

ip dhcp snooping arp

4.1.6   ip dhcp snooping information option [ format snmp-ifindex ]

DHCP relay传递DHCP option82选项时需要配置该命令。使用该命令的NO形式取消配置。Option82包含DHCP relay与client的接口的信息。DHCP relay通过该选项将接口信息上传到DHCP server,DHCP server根据该信息区分对待client。

参数

缺省

命令模式

全局配置态

使用说明

ip dhcp snooping information option配置DHCP relay在option82选项中按标准格式传递端口信息。

ip dhcp snooping information option format snmp-ifindex配置DHCP relay在option82选项中按SNMP接口索引格式传递端口信息。

示例

ip dhcp snooping information option

ip dhcp snooping information option format snmp-ifindex

4.1.7   ip dhcpd pool

参数

参数

参数说明

name

DHCP地址池的名称。

缺省

命令模式

全局配置态

使用说明

用户可以使用如下命令来增加名为name的DHCP地址池,并进入DHCP地址池配置模式

ip dhcpd pool name

示例

以下命令增加名为test的DHCP地址池,同时进入DHCP地址池配置模式。

ip dhcpd pool test

4.1.8   ip dhcpd enable

参数

缺省

缺省情况下,关闭DHCP服务

命令模式

全局配置态

使用说明

用户可以使用如下命令来打开DHCP服务。 此时,DHCP服务器也支持relay操作,对于自身不能分配的地址请求,配置了ip helper-address的端口将转发DHCP请求。

ip dhcpd pool name

示例

以下命令打开DHCP服务。

ip dhcpd enable  

4.2  DHCPD地址池的配置命令

DHCPD地址池的配置命令包括:

l   network

l   range

l   default-router

l   dns-server

l   domain-name

l   lease

l   netbios-name-server

l   ip-bind

4.2.1   network

network ip-addr netmask

参数

参数

参数说明

ip-addr

用于自动分配的地址池的网络地址。

netmask

子网掩码。

缺省

命令模式

DHCP地址池配置模式

使用说明

用户可以使用此命令来配置用于自动分配的地址池的网络地址。

在配置该命令时,务必确保接收DHCP协议报文的端口上有一个端口IP地址的网络号和network相同。

示例

以下命令配置DHCP地址池的网络地址为192.168.20.0,子网掩码为255.255.255.0。

network 192.168.20.0 255.255.255.0

4.2.2   range

range low-addr high-addr

参数

参数

参数说明

low-addr

用于自动分配地址区域的起始地址。

hogh-addr

用于自动分配地址区域的终止地址。

缺省

命令模式

DHCP地址池配置模式

使用说明

用户可以使用此命令来配置用于自动分配的地址区域。每个地址池最多可配置8个range,每个range均必须在network范围内。此命令只用于自动分配方式,

示例

以下命令配置DHCP地址池的地址分配区域为192.168.20.210-192.168.20.219。

range 192.168.20.210 192.168.20.219  

4.2.3   default-router

default-router ip-addr

参数

参数

参数说明

ip-addr

分配给客户机的缺省路由。

缺省

命令模式

DHCP地址池配置模式

使用说明

用户可以使用此命令来配置分配给客户机的缺省路由,最多可配置4个缺省路由,中间用空格分隔

示例

以下命令配置分配给DHCP客户机的缺省路由为192.168.20.1。

default-router 192.168.20.1  

4.2.4   dns-server

dns-server ip-addr

参数

参数

参数说明

ip-addr

分配给客户机的DNS服务器地址。

缺省

命令模式

DHCP地址池配置模式

使用说明

用户可以使用此命令来配置分配给客户机的DNS服务器地址,最多可配置4个DNS服务器,中间用空格分隔。

示例

以下命令配置分配给客户机的DNS服务器地址为192.168.1.3

dns-server 192.168.1.3  

4.2.5   domain-name

domain-name name

参数

参数

参数说明

name

分配给客户机的域名。

缺省

命令模式

DHCP地址池配置模式

使用说明

用户可以使用此命令来配置分配给客户机的域名

示例

以下命令配置分配给客户机的域名为test.domain

domain-name test.domain  

4.2.6   lease

lease {days [hours][minutes] | infinite}

参数

参数

参数说明

days

地址分配的天数。

hours

地址分配的小时数。

minutes

地址分配的分钟数。

infinite

地址永久分配。

缺省

1天

命令模式

DHCP地址池配置模式

使用说明

用户可以使用此命令来配置分配给客户机的地址的时间期限。

示例

以下命令配置分配客户机的地址的时间期限为2天12小时。

Lease 2 12 

4.2.7   netbios-name-server

netbios-name-server ip-addr

参数

参数

参数说明

ip-addr

分配客户机的netbios名字服务器地址。

缺省

命令模式

DHCP地址池配置模式

使用说明

用户可以使用此命令来配置分配给客户机的netbios名字服务器地址,最多可配置4个netbios名字服务器,中间用空格分隔。

示例

以下命令配置分配给客户机的netbios名字服务器地址为192.168.1.10

netbios-name-server 192.168.1.10  

4.2.8   ip-bind

ip-bind ip-addr [hardware-address][identifier] [host-name]

参数

参数

参数说明

ip-addr

用于手动分配的主机地址

hardware-address

将IP地址与跟在后面的主机硬件地址绑定,硬件地址为线分十六进制数格式:00-12-3F-28-AE-35

identifier

将IP地址与跟在后面的主机标识符绑定,主机标识符为线分十六进制数格式或单引号字符串格式

host-name

将IP地址与跟在后面的主机名称绑定,主机名称采用字符串格式

缺省

命令模式

DHCP地址池配置模式

使用说明

用户可以使用此命令来配置用于手动分配的地址池的主机地址。

示例

以下命令配置手动分配地址192.168.20.200与硬件地址00-12-3F-28-AE-35绑定。

Ip-bind 192.168.20.200 hardware-address 00-12-3F-28-AE-35

以下命令配置手动分配地址192.168.20.200与主机名称F-Engine-315绑定。

Ip-bind 192.168.20.200 host-name F-Engine-315

4.2.9   hardware-address

hardware-address hardware-address{ type}

参数

参数

参数说明

hardware-address

用于匹配客户机的硬件地址。

type

硬件地址类型。

缺省

type缺省值为1 ,表示以太网

命令模式

DHCP地址池配置模式

使用说明

用户可以使用此命令来配置用于匹配客户机的硬件地址,地址格式为冒号分隔的两位16进制数ab:cd:ef:gh。此命令只用于手动分配方式

示例

以下命令配置DHCP手动分配地址池的硬件地址为10:a0:0c:13:64:7d

hardware-address 10:a0:0c:13:64:7d  

4.2.10   client-identifier

client-identifier unique-identifier

参数

参数

参数说明

unique-identifier

用于匹配客户机的客户端ID。

缺省

命令模式

DHCP地址池配置模式

使用说明

用户可以使用此命令来配置用于匹配客户机的客户端ID,格式为点分两位16进制数ab.cd.ef.gh。此命令只用于手动分配方式。

示例

以下命令配置DHCP手动分配地址池的客户端ID为01:10:a0:0c:13:64:7d

client-identifier 01.10.a0.0c.13.64.7d  

4.2.11   client-name

client-name name

参数

参数

参数说明

name

分配给客户机的名称。

缺省

命令模式

DHCP地址池配置模式

使用说明

用户可以使用此命令来配置用于手动分配给客户机的主机名。此命令只用于手动分配方式 。

示例

以下命令配置分配给客户机的主机名为test。

client-name test  

4.3  DHCPD的调试命令

DHCPD的调试命令包括:

l   debug ip dhcpd packet

l   debug ip dhcpd event

4.3.1   debug ip dhcpd packet

debug ip dhcpd packet

 参数

缺省

命令模式

管理态

使用说明

用户可以使用此命令来打开DHCPD数据包信息的debug开关。

示例

以下命令打开对DHCPD数据包的调试信息输出开关。

debug ip dhcpd packet  

4.3.2   debug ip dhcpd event

debug ip dhcpd event

 参数

缺省

命令模式

管理态

使用说明

用户可以使用此命令来打开DHCPD事件信息的debug开关。

示例

以下命令打开对DHCPD事件的调试信息输出开关。

debug ip dhcpd event

4.4  DHCPD的管理命令

DHCPD的管理命令包括:

l   show ip dhcpd statistic

l   show ip dhcpd binding

l   clear ip dhcpd statistic

l   clear ip dhcpd binding

4.4.1   show ip dhcpd statistic

 参数

缺省

命令模式

除了用户态以外的其它状态

使用说明

用户可以使用此命令来显示DHCPD的统计信息,包括各类报文的数量和自动分配、手动分配的地址数

示例

以下命令显示DHCPD的统计信息。

Show ip dhcpd statistic

4.4.2   show ip dhcpd binding

show ip dhcpd binding{ip-addr}

参数

参数

参数说明

ip-addr

需要显示绑定信息的地址.

缺省

显示所有的地址绑定信息。

命令模式

除了用户态以外的其它状态

使用说明

用户可以使用此命令来显示DHCPD的地址绑定信息,IP地址、硬件地址、绑定类型和超时时间

示例

以下命令显示DHCPD的绑定信息。

Show ip dhcpd binding

4.4.3   show ip dhcpd pool

参数

缺省

命令模式

除了用户态以外的其它状态

使用说明

用户可以使用此命令来显示DHCPD的地址池信息,包括地址池的网络号、地址范围、已分配地址的数目、暂时废弃的地址的数目、可以用来分配的地址数目、手动分配的IP地址和硬件地址。

示例

以下命令显示DHCPD的地址池统计信息。

show ip dhcpd pool

4.4.4   clear ip dhcpd statistic

参数

缺省

命令模式

管理态

使用说明

用户可以使用此命令来删除DHCPD的关于报文数量的统计信息 。

示例

以下命令删除DHCPD关于报文数量的统计信息。

Clear ip dhcpd statistic

4.4.5   clear ip dhcpd binding

clear ip dhcpd binding {ip-addr|*}

参数

参数

参数说明

ip-addr

需要删除绑定信息的地址。

*

删除所有的绑定信息。

缺省

删除指定地址绑定信息。

命令模式

管理态

使用说明

用户可以使用此命令来删除指定地址的绑定信息 。

示例

以下命令删除192.168.20.210的绑定信息。

clear ip dhcpd binding 192.168.20.210

以下命令删除192.168.20.210和192.168.20.211的绑定信息。

clear ip dhcpd binding 192.168.20.210 192168.20.211

以下命令删除所有的绑定信息。

clear ip dhcpd binding *

4.4.6   clear ip dhcpd abandoned

参数

缺省

命令模式

管理态

使用说明

用户可以使用此命令来清除abandon标志。

示例

以下命令清除abandon标志。

Clear ip dhcpd abandoned

第5章   IP服务配置命令

5.1  IP Server配置命令

IP Server配置命令包括:

l   clear tcp

l   clear tcp statistics

l   debug arp

l   debug ip icmp

l   debug ip packet

l   debug ip raw

l   debug ip rtp

l   debug ip tcp packet

l   debug ip tcp transactions

l   debug ip udp

l   ip mask-reply

l   ip mtu

l   ip redirects

l   ip route-cache

l   ip source-route

l   ip tcp synwait-time

l   ip tcp window-size

l   ip unreachables

l   show ip cache

l   show ip irdp

l   show ip sockets

l   show ip traffic

l   show tcp

l   show tcp brief

l   show tcp statistics  

l   show tcp tcb

5.1.1   clear tcp

清除一个TCP连接。

clear tcp {local host-name port remote host-name port | tcb address

参数

参数

参数说明

local host-name port

本地主机IP地址和TCP端口。

remote host-name port

远端主机IP地址和TCP端口。

tcb address

要清除的TCP连接的传输控制块(TCB)地址。TCB是系统内部对TCP连接的标识,可以用命令show tcp brief得到。

命令模式

管理态 

使用说明

clear tcp命令主要是用于清除已经终止的TCP连接。在某些情况下,例如通信线路故障,TCP连接或对方主机重启,TCP连接实际已经终止,但是由于TCP连接上一直没有通信,系统无法及时发现这种情况,这时可以使用clear tcp命令关闭已经无效的TCP连接。其中,clear tcp local host-name port remote host-name port 命令用于终止指定的本地主机IP地址/端口和远端主机IP地址/端口之间的TCP连接。clear tcp tcb address 命令用于终止指定TCB地址所标识的TCP连接。 

示例

下面的例子清除192.168.20.22:23(本地)和192.168.20.120:4420(远端)之间的TCP连接。show tcp brief命令显示了当前TCP连接的本地和远端主机信息。

Router#show tcp brief

TCB         Local Address         Foreign Address      State

0xE85AC8    192.168.20.22:23      192.168.20.120:4420   ESTABLISHED

0xEA38C8    192.168.20.22:23      192.168.20.125:1583   ESTABLISHED

Router#clear tcp local 192.168.20.22 23 remote 192.168.20.120 4420

Router#show tcp brief

TCB         Local Address         Foreign Address      State

0xEA38C8    192.168.20.22:23      192.168.20.125:1583   ESTABLISHED 

下面的例子清除TCB地址为0xea38c8的TCP连接。show tcp brief命令显示了TCP连接的TCB地址。

Router#show tcp brief

TCB         Local Address         Foreign Address      State

0xEA38C8    192.168.20.22:23      192.168.20.125:1583   ESTABLISHED

Router#clear tcp tcb 0xea38c8

Router#show tcp brief

TCB         Local Address         Foreign Address      State 

相关命令

show tcp

show tcp brief

show tcp tcb

5.1.2   clear tcp statistics

清除TCP统计数据。

clear tcp statistics 

参数

该命令没有参数或关键字。 

命令模式

管理态 

示例

用下列命令清除TCP统计数据:

Router#clear tcp statistics 

相关命令

show tcp statistics

5.1.3   debug arp

显示ARP交互信息,例如发出ARP请求,收到ARP响应,收到ARP请求,发出ARP响应等。当路由器和主机无法通信时,可以用于分析ARP交互情况。用no debug arp停止显示信息。

debug arp

no debug arp

参数

该命令没有参数或关键字。 

命令模式

管理态

示例

Router#debug arp

Router#IP ARP: rcvd req src 192.168.20.116 00:90:27:a7:a9:c2, dst 192.168.20.111, Ethernet1/0

IP ARP: req filtered src 192.168.20.139 00:90:27:d5:a9:1f, dst 192.168.20.82 00:

00:00:00:00:00, wrong cable, Ethernet1/1

IP ARP: created an incomplete entry for IP address 192.168.20.77, Ethernet1/0

IP ARP: sent req src 192.168.20.22 08:00:3e:33:33:8a, dst 192.168.20.77, Ethernet1/0

IP ARP: rcvd reply src 192.168.20.77 00:30:80:d5:37:e0, dst 192.168.20.22, Ethernet1/0

第一条信息表明:路由器在接口Ethernet 1/0上收到一个ARP请求,发出请求的主机IP地址为192.168.20.116,MAC地址为00:90:27:a7:a9:c2,它请求IP地址为192.168.20.111的主机的MAC地址:

IP ARP: rcvd req src 192.168.20.116 00:90:27:a7:a9:c2, dst 192.168.20.111, Ethernet1/0

第二条信息表明:路由器在接口Ethernet 1/1上收到一个来自192.168.20.139的ARP地址请求。但是,根据路由器的接口配置,这个接口并不在这台主机所宣称的网络上。所以,可能是主机配置不正确。路由器如果根据这条信息建立了ARP缓存,就可能无法和连接在正常接口上的某台配置了相同地址的主机通信。

IP ARP: req filtered src 192.168.20.139 00:90:27:d5:a9:1f, dst 192.168.20.82 00:

00:00:00:00:00, wrong cable, Ethernet1/1

第三条信息表明,路由器要解析主机192.168.20.77的MAC地址,所以在ARP缓存中为它建立了一条不完整的ARP表项,等收到ARP应答时再填入MAC地址。根据路由器的配置,这台主机连接在接口Ethernet 1/0上。

IP ARP: created an incomplete entry for IP address 192.168.20.77, Ethernet1/0

第四条信息表明,路由器在接口Ethernet 1/0上发出ARP请求,所带的路由器的IP地址是192.168.20.22,接口的MAC地址是08:00:3e:33:33:8a,所请求的主机IP地址是192.168.20.77。这条信息和第三条信息是相关的。

IP ARP: sent req src 192.168.20.22 08:00:3e:33:33:8a, dst 192.168.20.77, Ethernet1/0

第五条信息表明,路由器在接口Ethernet1/0上收到了192.168.20.77发给路由器接口192.168.20.22的ARP响应,告知它的MAC地址为00:30:80:d5:37:e0。这条信息是和第三、四条信息相关的。

IP ARP: rcvd reply src 192.168.20.77 00:30:80:d5:37:e0, dst 192.168.20.22, Ethernet1/0

5.1.4   debug ip icmp

显示Internet控制信息协议(ICMP)的交互信息。使用命令no debug ip icmp关闭调试输出。

debug ip icmp

no debug ip icmp

参数

该命令没有参数或关键字。 

命令模式

管理态

使用说明

该命令可以显示系统收到和发出的ICMP报文,从而解决网络端到端到的连接问题。如果要了解debug ip icmp命令输出的详细含义,请参见RFC 792,“Internet Control Message Protocol”。  

示例

Router#debug ip icmp

Router#ICMP: sent pointer indicating to 192.168.20.124 (dst was 192.168.20.22), len 48

ICMP: rcvd echo from 192.168.20.125, len 40

ICMP: sent echo reply, src 192.168.20.22, dst 192.168.20.125, len 40

ICMP: sent dst (202.96.209.133) host unreachable to 192.168.20.124, len 36

ICMP: sent dst (192.168.20.22) protocol unreachable to 192.168.20.124, len 36

ICMP: rcvd host redirect from 192.168.20.77, for dst 22.0.0.3 use gw 192.168.20.26, len 36

ICMP: rcvd dst (22.0.0.3) host unreachable from 192.168.20.26, len 36

ICMP: sent host redirect to 192.168.20.124, for dst 22.0.0.5 use gw 192.168.20.77, len 36

ICMP: rcvd dst (2.2.2.2) host unreachable from 192.168.20.26, len 36 

关于第一条信息的说明如下:

ICMP: sent pointer indicating to 192.168.20.124 (dst was 192.168.20.22), len 48

描述

ICMP:

显示的是Internet控制信息协议(ICMP)报文的信息。

Sent

发送ICMP报文。

pointer indicating

ICMP报文类型,这个ICMP报文表示原始IP报文参数错误,并指出错误的域。其它类型的ICMP报文有: echo reply(回应应答)                     dst unreachable(目的不可到达),包括: ---net unreachable(网络不可到达) ---host unreachable(主机不可到达) ---protocol unreachable(协议不可到达) ---port unreachable(端口不可到达) ---fragmentation needed and DF set(需要分片,但DF位被置位) ---source route failed(源路由失败) ---net unknown(未知网络) ---destination host unknown(未知主机) ---source host isolated(源主机被隔离) ---net prohibited(与网络的通信被禁止) ---host prohibited(与主机的通信被禁止) ---net tos unreachable(对请求的服务类型,网络不可到达) ---host tos unreachable(对请求的服务类型,主机不可到达) source quench(源抑制) redirect(重定向),包括: ---net redirect(网络重定向) ---host redirect(主机重定向) ---net tos redirect(对服务类型和网络的重定向) ---host tos redirect(对服务类型和主机的重定向) echo(回应请求) router advertisement(路由器广告) router solicitation(路由器请求) time exceeded(超时),包括: ---ttl exceeded(ttl超时) ---reassembly timeout(重组超时) parameter problem(一般参数问题),包括: ---pointer indicating(指出错误参数) ---option missed(缺少选项) ---bad length(长度错误) timestamp(时戳) timestamp reply(时戳应答) information request(信息请求) information reply(信息应答) mask request(掩码请求) mask reply(掩码应答)   如果是系统未知的ICMP类型,系统将显示ICMP类型和代码的值。

to 192.168.20.124

ICMP报文的目的地址是192.168.20.124,这也是引起这个ICMP报文的原始报文的源地址。

(dst was 192.168.20.22)

引起ICMP报文的原始报文的目的地址是192.168.20.22。

len 48

ICMP报文的长度是48字节,其中不包括IP报头长度。

关于第二条信息的说明如下:

ICMP: rcvd echo from 192.168.20.125, len 40

描述

rcvd

收到ICMP报文。

echo

ICMP报文类型,是回应请求报文。

from 192.168.20.125

ICMP报文的源地址是192.168.20.125。

关于第三条信息的说明如下:

ICMP: sent echo reply, src 192.168.20.22, dst 192.168.20.125, len 40

命令

src 192.168.20.22

ICMP报文的源地址是192.168.20.22。

dst 192.168.20.125

ICMP报文的目的地址是192.168.20.125。

根据ICMP报文类型的不同,产生的ICMP报文信息采用不同的格式,以便显示报文内容。

例如,对于ICMP重定向报文,采用下列格式打印:

ICMP: rcvd host redirect from 192.168.20.77, for dst 22.0.0.3 use gw 192.168.20.26, len 36

ICMP: sent host redirect to 192.168.20.124, for dst 22.0.0.5 use gw 192.168.20.77, len 36

其中第一条信息表示,收到来自主机192.168.20.77的ICMP主机重定向报文,建议使用网关192.168.20.26到达目的主机22.0.0.3,ICMP报文长度36字节。

第二条信息表示,发送ICMP主机重定向报文到192.168.20.124,通知它使用网关192.168.20.77到达主机22.0.0.5, ICMP报文长度36字节。

 对于ICMP目的不可到达报文,采用下列格式打印:

ICMP: sent dst (202.96.209.133) host unreachable to 192.168.20.124, len 36

ICMP: rcvd dst (2.2.2.2) host unreachable from 192.168.20.26, len 36

其中,第一条信息表示,路由器无法路由某个IP报文,所以向报文的源主机192.168.20.124发送ICMP目的主机(202.96.209.133)不可到达报文, ICMP报文长度36字节。

第二条信息表示,路由器收到一个来自主机192.168.20.26的ICMP报文,通知目的主机(2.2.2.2)不可到达, ICMP报文长度36字节。

5.1.5   debug ip packet

显示Internet协议(IP)的交互信息。使用no debug ip packet停止显示信息。

debug ip packet [detail] [ip-access-list-name]

no debug ip packet 

参数

参数

参数说明

detail

(可选)输出IP报文封装的协议信息,如协议号,UDP、TCP端口号,ICMP报文类型等。

ip-access-list-name

(可选)用于过滤输出信息的IP访问表名称。只有满足指定IP访问表的IP报文的信息才会被输出。

access-group

(可选)用于过滤输出信息的IP访问表名称。只有满足指定IP访问表的IP报文的信息才会被输出。

interface

(可选)用于过滤输出信息的端口名称。只有满足指定端口的IP报文的信息才会被输出。

命令模式

管理态

 使用说明

这条命令可以帮助了解每个收到的或是本地产生的IP报文的最终流向,了解通信发生问题的原因。

可能的情况有:

l   被转发

l   被作为广播报文或多播报文转发

l   转发时寻径失败

l   发送redirect报文

l   由于带有源路由选项被拒绝

l   由于非法的IP options被拒绝

l   源路由

l   本地发送报文需要分片,但是DF位被置位

l   收到报文

l   收到IP分片

l   发送报文

l   发送广播/多播

l   本地生成报文寻径失败

l   本地生成报文被分片

l   收到报文被过滤

l   发送报文被过滤

l   链路层封装失败(只限于以太网)

l   未知协议                

使用这条命令可能会有大量的输出信息,所以最好在路由器比较空闲的时候使用,否则将严重影响系统性能。另外,尽可能使用访问表过滤输出,使系统只显示用户感兴趣的报文信息。

 命令模式

管理态 

示例

router#debug ip packet

router#IP: s=192.168.20.120 (Ethernet1/0), d=19.0.0.9 (Ethernet1/0), g=192.168.20.1, len=60, redirected

IP: s=192.168.20.22 (local), d=192.168.20.120 (Ethernet1/0), g=192.168.20.120, len=56, sending

IP: s=192.168.20.120 (Ethernet1/0), d=19.0.0.9 (Ethernet1/0), g=192.168.20.1, len=60, forward

IP: s=192.168.20.81 (Ethernet1/0), d=192.168.20.22 (Ethernet1/0), len=56, rcvd

描述

IP

表示这条信息是关于IP报文的。

s=192.168.20.120 (Ethernet1/0)

IP报文的源地址和收到报文的接口名称(如果不是本地生成的报文)。

d=19.0.0.9 (Ethernet1/0)

IP报文的目的地址和发送报文的接口名称(如果路由成功的话)。

g=192.168.20.1

IP报文的下一跳目的地址,可能是网关地址,也可能就是目的地址。

len

IP报文的长度。

redirected

表示路由器将向这个报文的源主机发送ICMP重定向报文。其它情况还有:  forward---报文被转发。 forward directed broadcast---报文作为定向广播被转发,报文将在发送接口上转成物理广播。 unroutable---报文寻径失败,将被丢弃。 source route---源路由。 rejected source route---系统当前不支持源路由,因此拒绝带IP源路由选项的报文。 bad options---IP选项错误,报文被丢弃。 need frag but DF set---本地报文需要分片,但是DF被置位。 rcvd---报文被本地接收。 rcvd fragment---收到报文分片。 sending---发送本地生成报文。 sending broad/multicast---发送本地生成的广播/多播报文。 sending fragment---发送在本地分片的IP报文。 denied by in acl---被接收接口的接收访问表拒绝。 denied by out acl---被发送接口的发送访问表拒绝。 unknown protocol---未知协议。 encapsulation failed---协议封装失败,只限于以太网。当要在以太网接口上发送的报文由于ARP解析失败而被丢弃时,显示这条信息。

第一条信息表明,路由器收到一个IP报文,它的源地址是192.168.20.120,来自接口Ethernet1/0所连接的网段,目的地址是19.0.0.9,根据路由表确定的发送接口是Ethernet1/0,网关地址是192.168.20.1,报文长度为60字节。发现网关和发出IP报文的源主机直连在同一网络上,也就是路由器的接口Ethernet1/0所连接的网络上,所以路由器发出 ICMP 重定向报文。

IP: s=192.168.20.120 (Ethernet1/0), d=19.0.0.9 (Ethernet1/0), g=192.168.20.1, len=60, redirected

第二条信息,描述了ICMP重定向报文的发送,源地址是本地地址192.168.20.22,目的地址是上述报文的源地址192.168.20.120,从接口Ethernet1/0发出,由于是直接到达目的地,所以网关地址就是目的地址192.168.20.120,ICMP重定向报文长度为56字节。

IP: s=192.168.20.22 (local), d=192.168.20.120 (Ethernet1/0), g=192.168.20.120, len=56, sending

第三条信息表明,IP层收到一个IP报文,报文的源地址是192.168.20.120,接收接口为Ethernet1/0,报文的目的地址是19.0.0.9,通过查找路由表,发现需要转发这个报文到接口Ethernet1/0,网关是192.168.20.77,报文长度为60字节。这条信息显示的是系统在发出ICMP重定向报文以后,转发第一条信息显示的报文。

IP: s=192.168.20.120 (Ethernet1/0), d=19.0.0.9 (Ethernet1/0), g=192.168.20.77, len=60, forward

第四条信息表示,IP层收到一个IP报文,源地址是192.168.20.81,接收接口是Ethernet1/0,      目的地址是192.168.20.22,是在路由器接口Ethernet1/0上配置的一个IP地址,报文长度是56字节,本地接收。

IP: s=192.168.20.81 (Ethernet1/0), d=192.168.20.22 (Ethernet1/0), len=56, rcvd

下面介绍debug ip packet detail命令的输出,只说明其中新增的部分:

router#debug ip packet detail

router#IP: s=192.168.12.8 (Ethernet1/0), d=255.255.255.255 (Ethernet1/0), len=328, rcvd, UDP: src=68, dst=67

IP: s=192.168.20.26 (Ethernet1/0), d=224.0.0.5 (Ethernet1/0), len=68, rcvd,  proto=89

IP: s=192.168.20.125 (Ethernet1/0), d=192.168.20.22 (Ethernet1/0), len=84, rcvd, ICMP: type=0, code = 0

IP: s=192.168.20.22 (local), d=192.168.20.124 (Ethernet1/0), g=192.168.20.124, len=40, sending, TCP: src=1024, dst=23, seq=75098622, ack=161000466, win=17520, ACK

描述

UDP

协议名称,例如UDP, ICMP, TCP等。其它协议用协议号表示。

type, code

ICMP报文的类型和代码值。

src, dst

UDP和TCP报文的源端口和目的端口。

seq

TCP报文的序列号。

ack

TCP报文的确认号。

win

TCP报文的窗口值。

ACK

TCP报文的控制比特中ACK被置位,表明确认序列号有效。其它的控制比特是SYN, URG, FIN, PSH, RST。

第一条信息表明,收到UDP报文,源端口是68,目的端口是67。

IP: s=192.168.12.8 (Ethernet1/0), d=255.255.255.255 (Ethernet1/0), len=328, rcvd, UDP: src=68, dst=67                        

第二条信息表明,收到报文的协议号为89。

IP: s=192.168.20.26 (Ethernet1/0), d=224.0.0.5 (Ethernet1/0), len=68, rcvd,  proto=89

第三条信息表明,收到ICMP报文,报文类型为0,代码为0。

IP: s=192.168.20.125 (Ethernet1/0), d=192.168.20.22 (Ethernet1/0), len=84, rcvd, ICMP: type=0, code = 0

第四条信息表明,发送TCP报文,源端口为1024,目的端口为23,序列号为75098622,确认号为161000466,接收窗口尺寸为17520,ACK标志位被置位。关于这些域的含义,请参见RFC 793— TRANSMISSION CONTROL PROTOCOL。

IP: s=192.168.20.22 (local), d=192.168.20.124 (Ethernet1/0), g=192.168.20.124, len=40, sending, TCP: src=1024, dst=23, seq=75098622, ack=161000466, win=17520, ACK

下面介绍如何使用访问控制表。例如,要求只显示源地址是192.168.20.125的报文信息,首先定义标准访问控制表abc,只允许源地址是192.168.20.125的IP报文。然后,在debug ip packet命令中使用该访问控制表。

Router#config

Router_config#ip access-list standard abc

Router_config_std_nacl#permit 192.168.20.125

Router_config_std_nacl#exit

Router_config#exit

Router#debug ip packet abc

Router#IP: s=192.168.20.125 (Ethernet0/1), d=192.168.20.22 (Ethernet0/1), len=48, rcvd

上述命令使用的是标准的访问控制表,也可以使用扩展访问控制表。

相关命令

debug ip tcp packet 

5.1.6   debug ip raw

显示Internet协议(IP)的交互信息。使用no debug ip raw停止显示信息。

debug ip raw [detail] [access-list-group] [interface]

no debug ip raw

参数

参数

参数说明

detail

(可选)输出IP报文封装的协议信息,如协议号,UDP、TCP端口号,ICMP报文类型等。

access-group

(可选)用于过滤输出信息的IP访问表名称。只有满足指定IP访问表的IP报文的信息才会被输出。

interface

(可选)用于过滤输出信息的端口名称。只有满足指定端口的IP报文的信息才会被输出。

命令模式

管理态  

使用说明

这条命令可以帮助了解每个收到的或是本地产生的IP报文的最终流向,了解通信发生问题的原因。

可能的情况有:

l   被转发

l   被作为广播报文或多播报文转发

l   转发时寻径失败

l   发送redirect报文

l   由于带有源路由选项被拒绝

l   由于非法的IP options被拒绝

l   源路由

l   本地发送报文需要分片,但是DF位被置位

l   收到报文

l   收到IP分片

l   发送报文

l   发送广播/多播

l   本地生成报文寻径失败

l   本地生成报文被分片

l   收到报文被过滤

l   发送报文被过滤

l   链路层封装失败(只限于以太网)

l   未知协议  

使用这条命令可能会有大量的输出信息,所以最好在路由器比较空闲的时候使用,否则将严重影响系统性能。另外,尽可能使用访问表过滤输出,使系统只显示用户感兴趣的报文信息。  

示例

与debug ip packet一至,故略。

相关命令

debug ip tcp packet

5.1.7   debug ip rtp

显示头部压缩的交互信息。使用no debug ip rtp停止显示信息。

debug ip rtp {header-compression|packets |rtcp}

no debug ip rtp {header-compression|packets |rtcp}  

参数

参数

参数说明

header-compress

RTP/UDP/IP头部压缩事件。

packets

RTP/UDP/IP头部压缩交互数据报。

rtcp

TCP/IP头部压缩交互数据报。

命令模式

管理态

使用说明

这条命令可以帮助了解头部压缩交互的具体过程。

使用这条命令可能会有大量的输出信息,所以最好在路由器比较空闲的时候使用,否则将严重影响系统性能。

示例

router#debug ip rtp header-compress

2002-1-9 21:36:42

21:32:05: RHC Serial1/0: new connection, conn 0,

2002-1-9 21:36:42

21:32:05: RHC Serial1/0: output uncompressed, conn 0, cksum 0x0000, seq 7078, Gen = 0

2002-1-9 21:36:42

21:32:05: RHC Serial1/0: output COMPRESSED_RTP, conn 0, cksum 0x0000, seq 7079, Gen = 0

2002-1-9 21:36:42

21:32:05: RHC Serial1/0: output COMPRESSED_RTP, conn 0, cksum 0x0000, seq 7080, Gen = 0

2002-1-9 21:36:42

21:32:05: RHC Serial1/0: output COMPRESSED_RTP, conn 0, cksum 0x0000, seq 7081, Gen = 0

2002-1-9 21:36:42

21:32:05: RHC Serial1/0: output COMPRESSED_RTP, conn 0, cksum 0x0000, seq 7082, Gen = 0

2002-1-9 21:36:42

21:32:05: RHC Serial1/0: output COMPRESSED_RTP, conn 0, cksum 0x0000, seq 7083, Gen = 0

2002-1-9 21:36:42

21:32:05: RHC Serial1/0: output COMPRESSED_RTP, conn 0, cksum 0x0000, seq 7084, Gen = 0

2002-1-9 21:36:42

21:32:05: RHC Serial1/0: output COMPRESSED_RTP, conn 0, cksum 0x0000, seq 7085, Gen = 0

2002-1-9 21:36:42

21:32:05: RHC Serial1/0: output COMPRESSED_RTP, conn 0, cksum 0x0000, seq 7086, Gen = 0

2002-1-9 21:36:42

21:32:05: RHC Serial1/0: recv uncompress, conn 0, cksum 0x0000, seq 4024, Gen = 0

2002-1-9 21:36:42

21:32:05: RHC Serial1/0: output COMPRESSED_RTP, conn 0, cksum 0x0000, seq 7087, Gen = 0

2002-1-9 21:36:42

21:32:05: RHC Serial1/0: recv COMPRESSED_RTP, conn 0, cksum 0x0000, seq 4025, Gen = 0

2002-1-9 21:36:42

21:32:05: RHC Serial1/0: recv COMPRESSED_RTP, conn 0, cksum 0x0000, seq 4026, Gen = 0

2002-1-9 21:36:42

21:32:05: RHC Serial1/0: output uncompressed, conn 0, cksum 0x0000, seq 7088, Gen = 0

2002-1-9 21:36:42

21:32:05: RHC Serial1/0: output COMPRESSED_RTP, conn 0, cksum 0x0000, seq 7089, Gen = 0

2002-1-9 21:36:42

21:32:05: RHC Serial1/0: recv COMPRESSED_RTP, conn 0, cksum 0x0000, seq 4027, Gen = 0

2002-1-9 21:36:42

21:32:05: RHC Serial1/0: output COMPRESSED_RTP, conn 0, cksum 0x0000, seq 7090, Gen = 0

2002-1-9 21:36:42

21:32:05: RHC Serial1/0: recv uncompress, conn 0, cksum 0x0000, seq 4028, Gen = 0

2002-1-9 21:36:42

21:32:05: RHC Serial1/0: output COMPRESSED_RTP, conn 0, cksum 0x0000, seq 7091, Gen = 0

2002-1-9 21:36:42

21:32:05: RHC Serial1/0: recv COMPRESSED_RTP, conn 0, cksum 0x0000, seq 4029, Gen = 0

2002-1-9 21:36:42

21:32:05: RHC Serial1/0: output uncompressed, conn 0, cksum 0x0000, seq 7092, Gen = 0

2002-1-9 21:36:42

21:32:05: RHC Serial1/0: recv COMPRESSED_RTP, conn 0, cksum 0x0000, seq 4030, Gen = 0

2002-1-9 21:36:43

21:32:06: RHC Serial1/0: output COMPRESSED_RTP, conn 0, cksum 0x0000, seq 7093, Gen = 0

2002-1-9 21:36:43

21:32:06: RHC Serial1/0: output COMPRESSED_RTP, conn 0, cksum 0x0000, seq 7094, Gen = 0

2002-1-9 21:36:43

21:32:06: RHC Serial1/0: recv uncompress, conn 0, cksum 0x0000, seq 4032, Gen = 0

2002-1-9 21:36:43

21:32:06: RHC Serial1/0: output COMPRESSED_RTP, conn 0, cksum 0x0000, seq 7095, Gen = 0

2002-1-9 21:36:43

21:32:06: RHC Serial1/0: recv COMPRESSED_RTP, conn 0, cksum 0x0000, seq 4033, Gen = 0

2002-1-9 21:36:43

21:32:06: RHC Serial1/0: output uncompressed, conn 0, cksum 0x0000, seq 7096, Gen = 0

2002-1-9 21:36:43

21:32:06: RHC Serial1/0: recv COMPRESSED_RTP, conn 0, cksum 0x0000, seq 4034, Gen = 0

2002-1-9 21:36:43

21:32:06: RHC Serial1/0: output COMPRESSED_RTP, conn 0, cksum 0x0000, seq 7097, Gen = 0

2002-1-9 21:36:43

21:32:06: RHC Serial1/0: output COMPRESSED_RTP, conn 0, cksum 0x0000, seq 7098, Gen = 0

2002-1-9 21:36:43

21:32:06: RHC Serial1/0: recv uncompress, conn 0, cksum 0x0000, seq 4036, Gen = 0

2002-1-9 21:36:43

21:32:06: RHC Serial1/0: output COMPRESSED_RTP, conn 0, cksum 0x0000, seq 7099, Gen = 0

2002-1-9 21:36:43

21:32:06: RHC Serial1/0: recv COMPRESSED_RTP, conn 0, cksum 0x0000, seq 4037, Gen = 0

2002-1-9 21:36:43

21:32:06: RHC Serial1/0: output uncompressed, conn 0, cksum 0x0000, seq 7100, Gen = 0

2002-1-9 21:36:43

21:32:06: RHC Serial1/0: recv COMPRESSED_RTP, conn 0, cksum 0x0000, seq 4038, Gen = 0

2002-1-9 21:36:43

21:32:06: RHC Serial1/0: output COMPRESSED_RTP, conn 0, cksum 0x0000, seq 7101, Gen = 0

2002-1-9 21:36:43

21:32:06: RHC Serial1/0: tossing error packet

2002-1-9 21:36:43

21:32:06: RHC Serial1/0: output COMPRESSED_RTP, conn 0, cksum 0x0000, seq 7102, Gen = 0

2002-1-9 21:36:43

21:32:06: RHC Serial1/0: recv uncompress, conn 0, cksum 0x0000, seq 4040, Gen = 0

2002-1-9 21:36:43

21:32:06: RHC Serial1/0: output COMPRESSED_RTP, conn 0, cksum 0x0000, seq 7103, Gen = 0

2002-1-9 21:36:43

21:32:06: RHC Serial1/0: recv COMPRESSED_RTP, conn 0, cksum 0x0000, seq 4041, Gen = 0

2002-1-9 21:36:43

21:32:06: RHC Serial1/0: output uncompressed, conn 0, cksum 0x0000, seq 7104, Gen = 0

2002-1-9 21:36:43

21:32:06: RHC Serial1/0: recv COMPRESSED_RTP, conn 0, cksum 0x0000, seq 4042, Gen = 0

2002-1-9 21:36:43

21:32:06: RHC Serial1/0: output COMPRESSED_RTP, conn 0, cksum 0x0000, seq 7105, Gen = 0

2002-1-9 21:36:43

21:32:06: RHC Serial1/0: output COMPRESSED_RTP, conn 0, cksum 0x0000, seq 7106, Gen = 0

2002-1-9 21:36:43

21:32:06: RHC Serial1/0: recv uncompress, conn 0, cksum 0x0000, seq 4044, Gen = 0

2002-1-9 21:36:43

21:32:06: RHC Serial1/0: output COMPRESSED_RTP, conn 0, cksum 0x0000, seq 7107, Gen = 0

2002-1-9 21:36:43

21:32:06: RHC Serial1/0: recv COMPRESSED_RTP, conn 0, cksum 0x0000, seq 4045, Gen = 0

2002-1-9 21:36:43

21:32:06: RHC Serial1/0: output uncompressed, conn 0, cksum 0x0000, seq 7108, Gen = 0

2002-1-9 21:36:43

21:32:06: RHC Serial1/0: recv COMPRESSED_RTP, conn 0, cksum 0x0000, seq 4046, Gen = 0

2002-1-9 21:36:43

21:32:06: RHC Serial1/0: output COMPRESSED_RTP, conn 0, cksum 0x0000, seq 7109, Gen = 0

2002-1-9 21:36:43

21:32:06: RHC Serial1/0: output COMPRESSED_RTP, conn 0, cksum 0x0000, seq 7110, Gen = 0

2002-1-9 21:36:43

21:32:06: RHC Serial1/0: recv uncompress, conn 0, cksum 0x0000, seq 4048, Gen = 0

no deb all 

5.1.8   debug ip tcp packet

显示传输控制协议(TCP)报文的收发信息。用no debug ip tcp packet停止显示。

debug ip tcp packet

no debug ip tcp packet

参数

该命令没有参数或关键字。 

命令模式

管理态 

示例

Router#debug ip tcp packet

Router#tcp: O ESTABLISHED 192.168.20.22:23 192.168.20.125:3828 seq 50659460

      DATA 1 ACK 3130379810 PSH WIN 4380

tcp: I ESTABLISHED 192.168.20.22:23 192.168.20.125:3828 seq 3130379810

      DATA 2 ACK 50659460 PSH WIN 16372    

tcp: O ESTABLISHED 192.168.20.22:23 192.168.20.125:3828 seq 50659461

      DATA 50 ACK 3130379812 PSH WIN 4380

tcp: O FIN_WAIT_1 192.168.20.22:23 192.168.20.125:3828 seq 50659511

      ACK 3130379812 FIN WIN 4380

tcp: I FIN_WAIT_1 192.168.20.22:23 192.168.20.125:3828 seq 3130379812

      ACK 50659511 WIN 16321

tcp: I FIN_WAIT_1 192.168.20.22:23 192.168.20.125:3828 seq 3130379812

      ACK 50659512 WIN 16321

tcp: I FIN_WAIT_2 192.168.20.22:23 192.168.20.125:3828 seq 3130379812

      ACK 50659512 FIN WIN 16321

tcp: O TIME_WAIT 192.168.20.22:23 192.168.20.125:3828 seq 50659512

      ACK 3130379813 WIN 4380

tcp: I LISTEN 0.0.0.0:23 0.0.0.0:0 seq 3813109318

      DATA 2 ACK 8057944 PSH WIN 17440

tcp: O LISTEN 0.0.0.0:23 0.0.0.0:0 seq 8057944

RST   

描述

tcp:

表示关于TCP报文的信息。

O

发送TCP报文。

ESTABLISHED

TCP连接的当前状态。关于TCP连接状态的描述,参见debug ip tcp transactions命令说明。

192.168.20.22:23

报文的源地址是192.168.20.22,源端口是23。

192.168.20.125:3828

报文的目的地址是192.168.20.125,目的端口是3828。

seq 50659460

报文的序列号是50659460。

DATA 1

报文包含的有效数据字节数是1个。

ACK 3130379810

报文的确认号是3130379810。

PSH

报文的控制比特中PSH被置位。 其它的控制比特位有ACK, FIN, SYN, URG, RST。

WIN 4380

报文的窗口域用于通知对方接收端接收缓存区大小,目前是4380字节。

I

接收TCP报文。

如果上述某些域没有出现在显示中,说明在这个TCP报文中该域没有有效值。

相关命令

debug ip tcp transactions 

5.1.9   debug ip tcp transactions

显示传输控制协议(TCP)的重要交互信息,例如TCP连接状态改变等。用no debug ip tcp transactions停止显示。

debug ip tcp transactions

no debug ip tcp transactions

参数

该命令没有参数或关键字。 

命令模式

管理态 

示例

Router#debug ip tcp transactions

Router#TCP: rcvd connection attempt to port 23

TCP: TCB 0xE88AC8 created

TCP: state was LISTEN -> SYN_RCVD [23 -> 192.168.20.125:3828]

TCP: sending SYN, seq 50658312, ack 3130379657 [23 -> 192.168.20.125:3828]

TCP: state was SYN_RCVD -> ESTABLISHED [23 -> 192.168.20.125:3828]

TCP: connection closed by user, state was LISTEN [23 -> 0.0.0.0:0]

TCP: state was TIME_WAIT -> CLOSED [23 -> 192.168.20.125:3827]

TCP: TCB 0xE923C8 deleted

TCP: TCB 0xE7DBC8 created

TCP: connection to 192.168.20.124:513 from 192.168.20.22:1022, state was CLOSED to SYN_SENT

TCP: sending SYN, seq 52188680, ack 0 [1022 -> 192.168.20.124:513]

TCP: state was SYN_SENT -> ESTABLISHED [1022 -> 192.168.20.124:513]

TCP: rcvd FIN, state was ESTABLISHED -> CLOSE_WAIT [1022 -> 192.168.20.124:513]

TCP: connection closed by user, state was CLOSE_WAIT [1022 -> 192.168.20.124:513]

TCP: sending FIN [1022 -> 192.168.20.124:513]

TCP: connection closed by user, state was LAST_ACK [1022 -> 192.168.20.124:513]

TCP: state was LAST_ACK -> CLOSED [1022 -> 192.168.20.124:513]

TCP: TCB 0xE7DBC8 deleted      

描述

TCP:

表示显示TCP交互信息。

rcvd connection attempt to port 23

收到对端口23(telnet端口)的连接请求。

TCB 0xE88AC8 created

生成一个新的TCP连接控制块,其标识为0xE88AC8。

state was LISTEN -> SYN_RCVD

表示TCP状态机的状态从LISTEN 转到                          SYN_RCVD。 可能的TCP状态有: LISTEN---等待来自任意远端主机的TCP连接请求。 SYN_SENT---发出连接请求以发起TCP连接协商,正在等待对方的应答。 SYN_RCVD---收到对方的连接请求并发出确认,也发出了自己的连接请求,正在等待对方的连接请求确认。 ESTABLISHED---表示连接建立成功,处于数据传送阶段,可以收发上层应用的数据。 FIN_WAIT_1---已经向对方发出连接终止请求,等待对方的确认,以及对方的连接终止请求。 FIN_WAIT_2---已经向对方发出连接终止请求,并收到对方的确认,正在等待对方的连接终止请求。 CLOSE_WAIT---收到对方的连接终止请求,发出确认,正在等待本地用户关闭连接,一旦用户要求关闭连接,系统将发出连接终止请求。 CLOSING---已经向对方发出连接终止请求,也收到对方的连接终止请求并发出确认,正在等待对方对本地连接终止请求的确认。 LAST_ACK---已经收到对方的连接终止请求并确认,发出连接终止请求,正在等待确认。 TIME_WAIT---正在等待足够的时间以确定对方收到了本地对它的连接终止请求的确认,以及仍在网络中传输的有关这个连接的报文到达目的地或是被丢弃。 CLOSED---表示完全没有连接或者连接已经完全关闭。 如果要了解更为详细的信息,请参阅RFC 793,TRANSMISSION CONTROL PROTOCOL。

[23 -> 192.168.20.125:3828]

在括号中: 第一个域(23)表示本地TCP端口。 第二个域(192.168.20.125)表示远端IP地址。 第三个域(3828)表示远端TCP端口。

sending SYN

发出一个连接请求报文(TCP报头控制比特中的SYN置位)。其它的TCP控制比特包括SYN, ACK, FIN, PSH, RST和URG。

seq 50658312

发出报文的序列号为50658312。

ack 3130379657

发出报文的确认号为3130379657。

rcvd FIN

收到连接终止请求(TCP报头控制比特中的FIN置位)。

connection closed by user

上层应用要求关闭TCP连接。

connection timed out

连接超时被关闭。

相关命令

debug ip tcp packet

5.1.10   debug ip udp

显示用户数据报协议(UDP)的交互信息。使用命令no debug ip udp停止显示。

debug ip udp

no debug ip udp

参数

该命令没有参数或关键字。

命令模式

管理态

 示例

Router#debug ip udp

Router#UDP: rcvd src 192.168.20.99(520), dst 192.168.20.255(520), len = 32

UDP: sent src 192.168.20.22(20001), dst 192.168.20.43(1001), len = 1008

描述

UDP:

表示这条信息是关于UDP报文的。

rcvd

收到报文。

sent

发出报文。

src

UDP报文的源IP地址和UDP端口。

dst

UDP报文的目的IP地址和UDP端口。

len

UDP报文的长度。

所以,第一条信息说明收到一个UDP报文,来自主机192.168.20.99,端口为520,目的地址是192.168.20.255,目的端口是520,报文长度为32字节。

第二条信息说明发出一个UDP报文,本地地址是192.168.20.22,端口是20001,目的地址是192.168.20.43,目的端口是1001,报文长度为1008字节。

5.1.11   ip mask-reply

要求路由器在指定接口上回应 IP 地址掩码请求。如果要关闭这项功能,使用no ip mask-reply。

ip mask-reply

no ip mask-reply

default ip mask-reply

参数

该命令没有参数或关键字。 

缺省

不应答IP地址掩码请求。 

命令模式

接口配置态

 示例

!

interface ethernet 1/1

ip mask-reply

!

5.1.12   ip mtu

设置接口发出的IP报文的最大发送单元(MTU)长度,使用ip mtu命令。如果要重新使用MTU缺省值,使用no ip mtu命令。

ip mtu bytes

no ip mtu

参数

参数

参数说明

bytes

以字节计算的IP最大传输长度。

缺省

根据接口物理介质的不同,和接口上的最大传输长度(mtu)相同。最小是68字节。

 命令模式

接口配置态 

使用说明

如果IP报文长度超过接口设置的IP MTU,路由器将对报文分片。所有连在同一物理介质上的设备,应该设置相同的协议MTU才能通信。MTU值(通过接口配置命令mtu设置)会影响IP MTU值。如果IP MTU值和MTU值相同,当改变MTU值时,IP MTU的值会自动改变为新的MTU值。反之,改变IP MTU值不会影响MTU值。

IP MTU最小值为68字节,最大值不超过接口配置的MTU。 

示例

下列命令把接口的IP MTU设为200:

!

interface serial0/0

ip mtu 200

!

 相关命令

mtu 

5.1.13   ip redirects

发送IP ICMP重定向报文。不发送ICMP重定向报文,用命令no ip redirects。

ip redirects

no ip redirects

参数

命令没有参数或关键字。

缺省

一般情况下,IP重定向报文是缺省被发送的。但是,如果用户在接口上配置了热备份路由器协议,该项功能将被自动关闭。而且,如果以后热备份路由器协议的配置被取消,这项功能不会自动打开。

命令模式

接口配置态

使用说明

当路由器在转发报文时发现网关所在的转发接口和收到报文的接口相同,而且发送报文的主机就直连在这个接口的逻辑网络上的话,根据协议,它可以发出一个ICMP重定向报文,通知源主机直接把那个路由器作为到报文目的地址的网关,而不再经过这台路由器转发。

如果接口配置了热备份路由器协议,发送IP重定向报文可能导致报文丢失。 

示例

下面的命令在接口ethernet1/0上打开发送ICMP重定向报文的功能:

!

interface ethernet 1/0

ip redirects 

!

5.1.14   ip route-cache

在接口上设置是否允许使用路由缓存来转发IP报文。使用no ip route-cache命令禁止使用路由缓存。

ip route-cache

no ip route-cache

ip route-cache same-interface

no ip route-cache same-interface

参数

参数

参数说明

same-interface

允许IP报文被快速交换出接收接口。

缺省

在接口上允许快速交换,禁止同一接口的快速交换。 

命令模式

接口配置态

使用说明

路由缓存基于源地址/目的地址对转发报文进行负载均衡。

允许路由缓存会提高路由器的报文转发性能。但是在低速线路(64k或更低)上,通常应该禁止路由缓存。

用户可以用命令ip route-cache same-interface允许同一接口的IP快速交换,即接收接口和发送接口相同。通常情况下,建议不要开启这一功能,因为和路由器的重定向功能冲突。如果用户有一个不完全连接的网络,例如帧中继,可以在帧中继接口开启这项功能。例如路由器A, B, C共同构成一个帧中继网络,但只有A—B和B—C的链路,A和C的通信必须由B中转:A—B—C,B从接口的一个DLCI收到A的报文,然后又从同一接口经另一个DLCI发送到C。

示例

下列命令允许同一接口的快速交换:

ip route-cache same-interface

下列命令禁止快速交换,包括同一接口的快速交换:

no ip route-cache

下列命令只禁止同一接口的快速交换:

no ip route-cache same-interface

下列命令使系统回到缺省配置(允许快速交换,禁止同一接口的快速交换):

ip route-cache 

相关命令

show ip cache

5.1.15   ip source-route

允许路由器处理带IP源路由选项的IP报文。如果要求路由器丢弃任何带IP源路由选项的IP报文,使用no ip source-route命令。

ip source-route

no ip source-route

参数

该命令没有参数或关键字。 

缺省

处理带IP源路由选项的IP报文。 

命令模式

全局配置态

示例

下列命令要求处理带IP源路由选项的IP报文:

ip source-route 

相关命令

ping 

5.1.16   ip tcp synwait-time

设置路由器等待TCP连接成功的超时时间。如果要回到缺省时间,使用no ip tcp synwait-time命令。

ip tcp synwait-time seconds

no ip tcp synwait-time

参数

参数

参数说明

seconds

以秒为单位的TCP连接等待时间。有效取值在5 ~ 300秒之间。缺省是75秒。

缺省

75秒 

命令模式

全局配置态 

使用说明

当路由器发起TCP连接时,如果在TCP连接等待时间之后连接仍没有建立成功,则路由器认为连接失败,并把这一结果返回给上层应用程序。用户可以设置TCP等待连接建立成功的时间,缺省是75秒。这个选项与经过路由器转发的TCP连接报文无关,而只与路由器本机的TCP连接有关。

如果要知道当前值,使用命令ip tcp synwait-time ?,在方括号[]中的值就是当前值。 

示例

下面的例子把TCP连接等待时间设为30秒:

Router_config#ip tcp synwait-time 30

Router_config#ip tcp synwait-time ?

  <5-300>[30] seconds     -- wait time 

5.1.17   ip tcp window-size

设置TCP窗口尺寸。 如果要回到缺省值,使用no ip tcp window-size命令。

ip tcp window-size bytes

no ip tcp window-size

参数

参数

参数说明

bytes

以字节为单位的窗口尺寸。最大是65535字节。缺省是2000字节。

缺省

2000字节 

命令模式

全局配置态  

使用说明

除非明确知道为什么要改变缺省值,否则不要轻易改变。如果要知道当前值,使用命令ip tcp window-size ?,在方括号[]中的值就是当前值。 

示例

下面的例子把TCP窗口尺寸设为6000字节:

Router_config#ip tcp window-size 6000

Router_config#ip tcp window-size ?

  <1-65535>[6000] bytes     -- Window size 

5.1.18   ip unreachables

设置路由器发出ICMP不可到达报文。如果要求路由器停止发送,使用no ip unreachables命令。

ip unreachable

no ip unreachable 

参数

该命令没有参数或者关键字。 

缺省

发送ICMP unreachable报文。 

命令模式

接口配置态

 使用说明

路由器在转发IP报文的时候,可能发现路由表中没有相关路由,导致报文被丢弃,这时,路由器可以向源主机发出ICMP不可到达报文,通知源主机这一情况,以便源主机及时发现错误,并进行更正。

示例

下面的例子设置在接口ethernet 1/0上发送ICMP不可到达报文:

!

interface ethernet 1/0

ip unreachables 

!

5.1.19   show ip cache

显示用于IP快速交换的路由缓存。

show ip cache [prefix mask] [type number

参数

参数

参数说明

prefix mask

(可选)只显示表项的目的地址和用户所键入指定的前缀/掩码相匹配的表项。

type number

(可选)只显示表项的发送接口和用户所键入指定的接口类型/编号相匹配的表项。

rsvp

(可选)只显示与RSVP相关的表项,说明此表项RSVP正在使用。

命令模式

管理态

示例

下面的例子显示路由缓存:

Router#show ip cache

Source          Destination     Interface        Next Hop

192.168.20.125  2.0.0.124       Serial1/0        2.0.0.124

192.168.20.124  192.168.30.124  Serial1/0        2.0.0.124

2.0.0.124       192.168.20.125  Ethernet1/1      192.168.20.125

描述

Source

源地址。

Destination

目的地址。

Interface

发送接口的类型和编号。

Next Hop

网关地址。

下面的例子显示目的地址和指定前缀/掩码匹配的路由缓存:

Router#show ip cache 192.168.20.0 255.255.255.0

Source          Destination     Interface        Next Hop

2.0.0.124       192.168.20.125  Ethernet0/1      192.168.20.125

 下面的例子显示发送接口和指定的接口类型/掩码匹配的路由缓存:

Router#show ip cache s1/0

Source          Destination     Interface        Next Hop

192.168.20.125  2.0.0.124       Serial1/0        2.0.0.124

192.168.20.124  192.168.30.124  Serial1/0        2.0.0.124 

5.1.20   show ip irdp

显示irdp protocl信息。 

参数

该命令没有参数或者关键字。 

命令模式

管理态

示例

xuhao_config_e1/0#  show ip irdp

Async0/0 ICMP router discovery protocol(IRDP) : OFF

Ethernet1/0 ICMP router discovery protocol(IRDP) : ON

  Advertisements occur between every 450 and 600 seconds

  Advertisements are sent as broadcasts

  Advertisements valid in 1800 seconds

  Default preference : 0

Ethernet1/1 ICMP router discovery protocol(IRDP) : OFF

Null0 ICMP router discovery protocol(IRDP) : OFF

Loopback7 ICMP router discovery protocol(IRDP) : OFF

Loopback10 ICMP router discovery protocol(IRDP) : OFF 

5.1.21   show ip sockets

显示socket信息。

show ip sockets

参数

该命令没有参数或者关键字。

命令模式

管理态

示例

Router#show ip sockets

Proto

Local

Port

Remote

Port

In

Out

17

0.0.0.0

0

0.0.0.0

0

161

0

6

0.0.0.0

0

0.0.0.0

0

513

0

17

0.0.0.0

0

0.0.0.0

0

1698

0

17

0.0.0.0

0

0.0.0.0

0

69

0

6

0.0.0.0

0

0.0.0.0

0

23

0

17

0.0.0.0

0

0.0.0.0

0

137

122590

描述

Proto(协议)

IP协议号。17是UDP,6是TCP。

Remote(远端)

远端地址。

Port(端口)

远端端口。

Local(本地)

本地地址。

Port(端口)

本地端口。

In(接收)

接收字节总数。

Out(发送)

发送字节总数。

5.1.22   show ip traffic

显示IP流量统计信息。

show ip traffic 

参数

该命令没有参数或者关键字。 

命令模式

管理态  

示例

Router#show ip traffic

IP statistics:

Rcvd:  0 total, 0 local destination, 0 delivered

         0 format errors, 0 checksum errors, 0 bad ttl count

         0 bad destination address, 0 unknown protocol, 0 discarded

         0 filtered , 0 bad options, 0 with options

  Opts:  0 loose source route, 0 record route, 0 strict source route

         0 timestamp, 0 router alert, 0 others

  Frags: 0 fragments, 0 reassembled, 0 dropped

         0 fragmented, 0 fragments, 0 couldn't fragment

  Bcast: 0 received, 0 sent

  Mcast: 0 received, 0 sent

  Sent:  230 generated, 0 forwarded

         0 filtered, 0 no route, 0 discarded 

ICMP statistics:

Rcvd: 0 total, 0 format errors, 0 checksum errors

0 redirect, 0 unreachable, 0 source quench

0 echos, 0 echo replies, 0 mask requests, 0 mask replies

0 parameter problem, 0 timestamps, 0 timestamp replies

0 time exceeded, 0 router solicitations, 0 router advertisements

Sent: 0 total, 0 errors

0 redirects, 0 unreachable, 0 source quench

0 echos, 0 echo replies, 0 mask requests, 0 mask replies

0 parameter problem, 0 timestamps, 0 timestamp replies

0 time exceeded, 0 router solicitations, 0 router advertisements

UDP statistics:

Rcvd: 28 total, 0 checksum errors, 22 no port, 0 full sock

Sent: 0 total

TCP statistics:

Rcvd: 0 total, 0 checksum errors, 0 no port

Sent: 3 total

IGMP statistics:

Rcvd: 0 total, 0 format errors, 0 checksum errors

0 host queries, 0 host reports

Sent: 0 host reports

ARP statistics:

Rcvd: 8 total, 7 requests, 1 replies, 0 reverse, 0 other

Sent: 5 total, 5 requests, 0 replies (0 proxy), 0 reverse

描述

format errors(格式错误)

报文格式错误,例如IP报头长度错误

bad hop count(TTL错误)

路由器在转发报文时,发现报文的TTL值被减到0。报文将被丢弃。

no route(没有路由)

路由器没有相应路由的报文。

5.1.23   show tcp

显示所有TCP连接的状态信息。

show tcp

参数

该命令没有参数或者关键字。 

命令模式

管理态  

示例

Router#show tcp

TCB 0xE9ADC8

Connection state is ESTABLISHED, unread input bytes: 934

Local host: 192.168.20.22, Local port: 1023

Foreign host: 192.168.20.124, Foreign port: 513

Enqueued bytes for transmit: 0, input: 934  mis-ordered: 0 (0 packets)

Timer          Starts    Wakeups            Next(ms)

Retrans            33          1                   0

TimeWait           0          0                   0

SendWnd           0          0                   0

KeepAlive         102          0             7199500

iss:  29139463  snduna:  29139525  sndnxt:  29139525     sndwnd:     17520

irs: 709124039  rcvnxt: 709205436  rcvwnd:      4380

SRTT: 15 ms, RXT: 2500 ms, RTV: 687 ms

minRXT: 1000 ms, maxRXT: 64000 ms, ACK hold: 200 ms

Datagrams (max data segment is 1460 bytes):

Rcvd: 102 (out of order: 0), with data: 92, total data bytes: 81396

Sent: 104 (retransmit: 0), with data: 31, total data bytes: 61

描述

TCB 0xE77FC8

TCP连接控制块的内部标识。

Connection state is ESTABLISHED

TCP连接当前状态。TCP连接可能处于下列任一状态:  LISTEN---等待来自任意远端主机TCP连接请求。 SYN_SENT---发出连接请求后,等待对方的应答。 SYN_RCVD---收到对方的连接请求并发出确认,也发出了自己的连接请求,正在等待对方的连接请求确认。 ESTABLISHED---表示连接建立成功,处于数据传送阶段,可以收发上层应用的数据。 FIN_WAIT_1---已经向对方发出连接终止请求,等待对方的确认,以及对方的连接终止请求。 FIN_WAIT_2---已经向对方发出连接终止请求,并收到对方的确认,正在等待对方的连接终止请求。 CLOSE_WAIT---收到对方的连接终止请求,发出确认,正在等待本地用户关闭连接,一旦用户要求关闭连接,系统将发出连接终止请求。 CLOSING---已经向对方发出连接终止请求,也收到对方的连接终止请求并发出确认,正在等待对方对本地连接终止请求的确认。 LAST_ACK---已经收到对方的连接终止请求并确认,发出连接终止请求,正在等待确认。 TIME_WAIT---正在等待足够的时间以确定对方收到了本地对它的连接终止请求的确认 CLOSED---表示完全没有连接或者连接已经完全关闭 如果要了解更为详细的信息,请参阅RFC 793,TRANSMISSION CONTROL PROTOCOL。

unread input bytes:

经下层TCP处理后可以提交给上层应用,但是上层应用还没有接收的数据。

Local host:

本地IP地址。

Local port:

本地TCP端口。

Foreign host:

远端IP地址。

Foreign port:

远端TCP端口。

Enqueued bytes for transmit:

发送队列中的字节数,包括已经发送但还没有被对方确认的数据和还没有发送的数据。

input:

接收队列中的字节数,这些数据经过排序后等待被上层应用接收。

mis-ordered:

错序队列中的字节数和报文数,这些数据必须等待其它的一些数据收到后,才能顺序进入接收队列被上层应用接收。例如,收到报文1,2,4,5和6,报文1和2可以进入接收队列,但是4,5和6只能进入错序队列等待报文3的到达。

接着显示当前连接的定时器使用情况,包括定时器启动的次数,定时器超时的次数和定时器距离下次超时的时间(0表示定时器当前不再运行)。每个连接都使用独立的定时器。定时器的超时次数一般小于定时器的启动次数,因为定时器在运行过程中有可能被重置。例如,重发定时器运行时系统收到对方对所有发送数据的确认,重发定时器将停止运行。

 Timer          Starts    Wakeups            Next(ms)

Retrans            33          1                   0

TimeWait           0          0                   0

SendWnd           0          0                   0

KeepAlive         102          0             7199500

描述

Timer

定时器名称。

Starts

定时器的启动次数。

Wakeups

定时器的超时次数。

Next(ms)

定时器距离下次超时的时间(以毫秒为单位),0表示定时器不在运行。

Retrans

重发定时器,用于触发数据重发。定时器在发送数据后被启动,如果超时时间内数据未被对方确认,则重发数据。

TimeWait

时间等待定时器,用于确保对方收到连接终止请求确认。

SendWnd

发送窗口定时器,用于确保发送窗口在TCP确认丢失的情况下恢复到正常大小。

KeepAlive

保持活动定时器,用于确保通信链路正常和对方仍旧处于连接状态。它将触发测试报文的发送,以检测通信链路状态和对方状态。

接着显示TCP连接使用的序列号。TCP使用序列号来保证可靠有序的数据传输。本地和远端主机还根据序列号来进行流量控制和发送确认。

iss:  29139463  snduna:  29139525  sndnxt:  29139525     sndwnd:     17520

irs: 709124039  rcvnxt: 709205436  rcvwnd:      4380

描述

iss:

初始发送序列号。

snduna:

已经发送但是还没有收到对方确认的数据的第一个字节的发送序列号。

sndnxt:

以后发送的数据的第一个字节的发送序列号。

sndwnd:

远端主机的TCP窗口尺寸。

irs:

初始接收序列号,也就是远端主机的初始发送序列号。

rcvnxt:

最近确认的接收序列号。

rcvwnd:

本地主机的TCP窗口尺寸。

接着显示本地主机记录的发送时间,系统可以根据这些数据调整系统以适应不同的网络。

SRTT: 15 ms, RXT: 2500 ms, RTV: 687 ms

minRXT: 1000 ms, maxRXT: 64000 ms, ACK hold: 200 ms

描述

SRTT:

平滑处理后的往返时间。

RXT:

重传超时时间。

RTV:

往返时间的变化值。

MinRXT:

允许的最小重传超时。

MaxRXT:

允许的最大重传超时。

ACK hold:

延迟确认以便和数据一起发送的最大延迟时间。

Datagrams (max data segment is 1460 bytes):

Rcvd: 102 (out of order: 0), with data: 92, total data bytes: 81396

Sent: 104 (retransmit: 0), with data: 31, total data bytes: 61

描述

max data segment is

该连接允许的最大数据段长度。

Rcvd:

本地主机在这个连接过程中收到的报文数,以及其中错序的报文数。

with data:

包含有效数据的报文数。

total data bytes:

报文中包含的数据字节数。

Sent:

本地主机在这个连接过程中发送的报文总数,以及重发的报文数。

with data:

包含有效数据的报文数。

total data bytes:

报文中包含的数据字节数。

相关命令

show tcp brief

show tcp tcb 

5.1.24   show tcp brief

显示TCP连接的简要信息。

show tcp brief [all

参数

参数

参数说明

all

(可选)显示所有端口。如果不输入这个关键字,系统不显示处于LISTEN状态的端口。

命令模式

管理态 

示例

Router#show tcp brief

TCB         Local Address           Foreign Address          State

0xE9ADC8    192.168.20.22:1023    192.168.20.124:513    ESTABLISHED

0xEA34C8    192.168.20.22:23      192.168.20.125:1472   ESTABLISHED

描述

TCB

TCP连接的内部标识。

Local Address

本地IP地址和TCP端口。

Foreign Address

远端IP地址和TCP端口。

State

连接状态。详细说明参见show tcp命令。

相关命令

show tcp

show tcp tcb

5.1.25   show tcp statistics

显示TCP统计数据。

show tcp statistics

参数

该命令没有参数或者关键字。

命令模式

管理态  

示例

Router#show tcp statistics

Rcvd: 148 Total, 0 no port

0 checksum error, 0 bad offset, 0 too short

131 packets (6974 bytes) in sequence

0 dup packets (0 bytes)

0 partially dup packets (0 bytes)

0 out-of-order packets (0 bytes)

0 packets (0 bytes) with data after window

0 packets after close

0 window probe packets, 0 window update packets

0 dup ack packets, 0 ack packets with unsend data

127 ack packets (247 bytes)

Sent: 239 Total, 0 urgent packets

6 control packets

123 data packets (245 bytes)

0 data packets (0 bytes) retransmitted

110 ack only packets (101 delayed)

0 window probe packets, 0 window update packets

4 Connections initiated, 0 connections accepted, 2 connections established

3 Connections closed (including 0 dropped, 1 embryonic dropped)

5 Total rxmt timeout, 0 connections dropped in rxmt timeout

1 Keepalive timeout, 0 keepalive probe, 1 Connections dropped in keepalive

描述

Rcvd:

关于路由器收到报文的统计数据。

Total

收到报文总数。

no port

收到报文中目的端口不存在的报文数。

checksum error

收到报文中校验和错误的报文数。

bad offset

收到报文中数据偏移量错误的报文数。

too short

收到报文中长度小于最小有效长度的报文数。

packets in sequence

按序收到的数据报文数。

dup packets

收到的重复报文数。

partially dup packets

收到的部分重复的报文数。

out-of-order packets

不是按顺序收到的报文数。

packets with data after window

收到的报文中数据超出路由器的接收窗口的报文数。

packets after close

连接关闭后收到的报文数。

window probe packets

收到的窗口探测报文数。

window update packets

收到的窗口更新报文数。

dup ack packets

收到的重复确认报文数。

ack packets with unsent data

收到的确认未发送数据的报文数。

ack packets

收到的确认报文数。

Sent

关于路由器发出报文的统计数据。

Total

发出报文总数。

urgent packets

发出的紧急报文数。

control packets

发出的控制(SYN、FIN或RST)报文数。

data packets

发出的数据报文数。

data packets retransmitted

重发的数据报文数。

ack only packets

发出的纯确认报文数。

window probe packets

发出的窗口探测报文数。

window update packets

发出的窗口更新报文数。

Connections initiated

本地发起的连接数。

connections accepted

本地接受的连接数。

connections established

本地建立连接数。

Connections closed

本地关闭连接数。

Total rxmt timeout

重发超时总数。

Connections dropped in rxmit timeout

重发超时导致的连接断开数。

Keepalive timeout

Keepalive超时数。

keepalive probe

发出的Keepalive探测报文数。

Connections dropped in keepalive

由于Keepalive被断开的连接数。

相关命令

clear tcp statistics

5.1.26   show tcp tcb

显示某个TCP连接的状态信息。

show tcp tcb address 

参数

参数

参数说明

address

要显示的TCP连接的传输控制块(TCB)地址。TCB是系统内部对TCP连接的标识,可以用命令show tcp brief得到。

命令模式

管理态

 示例

下列显示的具体说明参见show tcp命令。

Router_config#show tcp tcb 0xea38c8

TCB 0xEA38C8

Connection state is ESTABLISHED, unread input bytes: 0

Local host: 192.168.20.22, Local port: 23

Foreign host: 192.168.20.125, Foreign port: 1583

Enqueued bytes for transmit: 0, input: 0  mis-ordered: 0 (0 packets)

Timer          Starts    Wakeups            Next(ms)

Retrans            4          0                   0

TimeWait           0          0                   0

SendWnd           0          0                   0

KeepAlive          +5          0             6633000

iss:  10431492  snduna:  10431573  sndnxt:  10431573     sndwnd:     17440

irs: 915717885  rcvnxt: 915717889  rcvwnd:      4380

SRTT: 2812 ms, RXT: 18500 ms, RTV: 4000 ms

minRXT: 1000 ms, maxRXT: 64000 ms, ACK hold: 200 ms

Datagrams (max data segment is 1460 bytes):

Rcvd: 5 (out of order: 0), with data: 1, total data bytes: 3

Sent: 4 (retransmit: 0), with data: 3, total data bytes: 80

 相关命令

show tcp

show tcp brief

5.2  访问列表配置命令

访问列表配置命令包括:

l   deny

l   ip access-group

l   ip access-list

l   permit

l   show ip access-list

5.2.1   deny

在IP访问列表配置模式中可使用此命令配置禁止规则,要从IP访问列表中删除deny规则,在命令前加no前缀。

deny source [source-mask] [log]

no deny source [source-mask] [log]

deny src_range source-begin source-end [log]

no deny src_range source-begin source-end [log]

deny protocol source source-mask destination destination-mask [precedence precedence] [tos tos] [log]

no deny protocol source source-mask destination destination-mask [precedence precedence] [tos tos] [log]

deny protocol src_range source-begin source-end dst_range destination-begin destination-end [precedence precedence] [tos tos] [log]

no deny protocol src_range source-begin source-end dst_range destination-begin destination-end [precedence precedence] [tos tos] [log]

对于互联网控制报文协议(ICMP),也可以使用以下句法:

deny icmp source source-mask destination destination-mask [icmp-type] [precedence precedence] [tos tos] [log]

deny icmp src_range source-begin source-end dst_range destination-begin destination-end [icmp-type][precedence precedence] [tos tos] [log]

对于Internet 组管理协议(IGMP),可以使用以下句法:

deny  igmp source source-mask destination destination-mask [igmp-type] [precedence precedence] [tos tos] [log]

deny igmp src_range source-begin source-end dst_range destination-begin destination-end [igmp-type][precedence precedence] [tos tos] [log]

对于TCP,可以使用以下句法:

deny tcp source source-mask [operator port] destination destination-mask [operator port ] [established] [precedence precedence] [tos tos] [log]

deny tcp src_range source-begin source-end [src_portrange port-begin port-end] dst_range destination-begin destination-end [dst_portrange port-begin port-end][established] [precedence precedence] [tos tos] [log]

对于数据报协议(UDP),可以使用以下句法:

deny udp source source-mask [operator port] destination destination-mask [operator port] [precedence precedence] [tos tos] [log]

deny udp src_range source-begin source-end [src_portrange port-begin port-end] dst_range destination-begin destination-end [dst_portrange port-begin port-end][precedence precedence] [tos tos] [log]

 参数

参数

参数说明

protocol

协议名字或IP协议号。它可以是关键字icmp、igmp、igrp、ip、ospf、tcp或udp,也可以是表IP协议号的0到255的一个整数。为了匹配任何Internet协议(包括ICMP、TCP和UDP)使用关键字ip。某些协议允许进一步限定,如下描述。

source

源网络或主机号。有两种方法指定源:32位二进制数,用四个点隔开的十进制数表示。使用关键字any作为0.0.0.0 0.0.0.0的源和源掩码缩写。

source-mask

源地址网络掩码。使用关键字any作为0.0.0.0 0.0.0.0的源和源掩码缩写。

destination

目标网络或主机号。有两种方法指定: 使用四个点隔开的十进制数表示的32位二进制数。 使用关键字any作为0.0.0.0 0.0.0.0的目标和目标掩码的缩写。

destination-mask

目标地址网络掩码。使用关键字any作为0.0.0.0 0.0.0.0的目标地址和目标地址掩码缩写。

precedence precedence

(可选)包可以由优先级过滤,用0到7的数字指定。

tos tos

(可选) 数据包可以使用服务层过滤。使用数字0-15指定。

icmp-type

(可选)ICMP包可由ICMP报文类型过滤。类型是数字0到255。

igmp-type

(可选)IGMP包可由IGMP报文类型或报文名过滤。 类型是0到15的数字。

operator

(可选)比较源或目标端口。操作包括lt(小于), gt(大于),eq(等于),neq(不等于)。如果操作符放在source和source-mask之后,那么它必须匹配这个源端口。如果操作符放在destination和destination-mask之后,那么它必须匹配目标端口。

port

(可选)TCP或UDP端口的十进制数字或名称。端口号是一个0到65535的数字。TCP端口名列在“使用方针”部分。当过滤TCP时,可以只使用TCP端口名称。UDP端口名称也列在“使用说明”部分。当过滤TCP时,只可使用TCP端口名。当过滤UDP时, 只可使用UDP端口名。

established

(可选)只对TCP协议,表示一个已建立的连接。如果TCP数据报ACK或RST位设置时,出现匹配。非匹配的情况是初始化TCP数据报,以形成一个连接。

log

(可选)可以进行日志记录。

Source-begin

启始源地址。

Source-end

结束源地址。

Destination-begin

启始目的地址。

Destination-end

结束目的地址。

Port-begin

启始端口

Port-end

结束端口。

命令模式

IP访问列表配置态

使用说明

可以使用访问表控制包在接口上的传输,控制虚拟终端线路访问以及限制路由选择更新的内容。在匹配发生以后停止检查扩展的访问表。分段IP包,而不是初始段,立即由任何扩展的IP访问表接收。扩展的访问表用于控制访问虚拟终端线路或限制路由选择更新的内容,不必匹配TCP源端口、服务值的类型或包的优先权。

注意:

在初始建立一个访问表后,任何后续的添加内容(可能由终端键入)放置在列表的尾部。

以下显示用于替换端口号的TCP端口名。参看当前的分配号RFC找到这些协议的有关参考。与这些协议相应的端口号也可以通过以键入一个?替代端口号的方式来寻找。

l   bgp

l   ftp

l   ftp-data

l   login

l   pop2

l   pop3

l   smtp

l   telnet

l   www

以下显示用于替换端口号的UDP端口名。参看当前的分配号RFC找到这些协议的有关参考。与这些协议相应的端口号也可以通过以键入一个?替代端口号的方式来寻找。

l   domain

l   snmp

l   syslog

l   tftp

示例

下面示例禁止192.168.5.0这个网段:

!

ip access-list standard filter

deny 192.168.5.0 255.255.255.0

!

注意:

IP访问表由一个隐含的deny规则结束。

相关命令

ip access-group

ip access-list

permit

show ip access-list

5.2.2   ip access-group

为了控制访问一个接口,使用ip access-group接口配置命令。为了删除这个指定的访问组,使用no格式命令。

ip access-group {access-list-name}{in | out}

no ip access-group {access-list-name}{in | out}

参数

参数

参数说明

access-list-name

访问表名。这是一个最长为20个字符的字符串。

in

在进接口时使用访问列表。

out

在出接口时使用访问列表。

命令模式

接口配置态

使用说明

访问列表既可用在出接口也可用在入接口。对于标准的入口访问列表,在接收到包之后,对照访问列表检查包的源地址。对于扩展的访问列表,该路由器也检查目标地址。如果访问表允许该地址,那么软件继续处理该包。如果访问表不允许该地址,该软件放弃包并返回一个ICMP主机不可到达报文。

对于标准的出口访问表,在接收和路由一个包到控制接口以后,软件对照访问列表检查包的源地址。对于扩展的访问表,路由器还检查接收端访问表。如果访问表允许该软件就传送这个包。如果访问列表不允许该地址,软件放弃这个包并返回一个ICMP主机不可达报文。

如果指定的访问列表不存在,所有的包允许通过。

示例

下例在以太网接口0的包出口上应用列表filter:

!

interface ethernet 0

ip access-group filter out

!

相关命令

ip access-list

show ip access-list

5.2.3   ip access-list

使用此命令后,进入的IP访问列表配置模式。在这状态下可以增加和删除访问规则。命令exit返回配置状态。

使用no前缀,删除IP访问列表。

ip access-list {standard | extended} name

no ip access-list {standard | extended} name

参数

参数

参数说明

standard

指定为标准访问列表

extended

指定为扩展访问列表

name

访问表名。这是一个最长20的字符串。

缺省

没有IP访问列表被定义。

命令模式

全局配置态

使用说明

使用此命令将进入IP访问列表配置模式,在IP访问列表配置模式中,可以用deny或permit命令来配置访问规则。

示例

以下的例子配置一个标准访问列表

!

ip access-list standard filter

deny 192.168.1.0 255.255.255.0

permit any

!

 相关命令

deny

ip access-group

permit

show ip access-list

5.2.4   permit

在IP访问列表配置模式中可使用此命令配置允许规则,要从IP访问列表中删除permit规则,在命令前加no前缀。

permit source [source-mask] [log]

no permit source [source-mask] [log]

permit src_range source-begin source-end [log]

no permit src_range source-begin source-end [log]

permit protocol source source-mask destination destination-mask [precedence precedence] [tos tos] [log]

no permit protocol source source-mask destination destination-mask [precedence precedence] [tos tos] [log]

permit protocol src_range source-begin source-end dst_range destination-begin destination-end [precedence precedence] [tos tos] [log]

no permit protocol src_range source-begin source-end dst_range destination-begin destination-end [precedence precedence] [tos tos] [log]

对于互联网控制报文协议(ICMP),也可以使用以下句法:

permit icmp source source-mask destination destination-mask [icmp-type] [precedence precedence] [tos tos] [log]

permit icmp src_range source-begin source-end dst_range destination-begin destination-end [icmp-type][precedence precedence] [tos tos] [log]

对于Internet 组管理协议(IGMP),可以使用以下句法:

permit igmp source source-mask destination destination-mask [igmp-type] [precedence precedence] [tos tos] [log]

permit igmp src_range source-begin source-end dst_range destination-begin destination-end [igmp-type][precedence precedence] [tos tos] [log]

对于TCP,可以使用以下句法:

permit tcp source source-mask [operator port] destination destination-mask [operator port ] [established] [precedence precedence] [tos tos] [log]

permit tcp src_range source-begin source-end [src_portrange port-begin port-end] dst_range destination-begin destination-end [dst_portrange port-begin port-end][established] [precedence precedence] [tos tos] [log]

对于数据报协议(UDP),可以使用以下句法:

permit udp source source-mask [operator port [port]] destination destination-mask [operator port] [precedence precedence] [tos tos] [log]

permit udp src_range source-begin source-end [src_portrange port-begin port-end] dst_range destination-begin destination-end [dst_portrange port-begin port-end][precedence precedence] [tos tos] [log] 

参数

参数

参数说明

protocol

协议名字或IP协议号。它可以是关键字icmp、igmp、igrp、ip、ospf、tcp或udp,也可以是表IP协议号的0到255的一个整数。为了匹配任何Internet协议(包括ICMP、TCP和UDP)使用关键字ip。某些协议允许进一步限定,如下描述。

source

源网络或主机号。有两种方法指定源:32位二进制数,用四个点隔开的十进制数表示。使用关键字any作为0.0.0.0 0.0.0.0的源和源掩码缩写。

source-mask

源地址网络掩码。使用关键字any作为0.0.0.0 0.0.0.0的源和源掩码缩写。

destination

目标网络或主机号。有两种方法指定: 使用四个点隔开的十进制数表示的32位二进制数。 使用关键字any作为0.0.0.0 0.0.0.0的目标和目标掩码的缩写。

destination-mask

目标地址网络掩码。使用关键字any作为0.0.0.0 0.0.0.0的目标地址和目标地址掩码缩写。

precedence precedence

(可选)包可以由优先级过滤,用0到7的数字指定。

tos tos

(可选) 数据包可以使用服务层过滤。使用数字0-15指定。

icmp-type

(可选)ICMP包可由ICMP报文类型过滤。类型是数字0到255。

igmp-type

(可选)IGMP包可由IGMP报文类型或报文名过滤。 类型是0到15的数字。

operator

(可选)比较源或目标端口。操作包括lt(小于), gt(大于),eq(等于),neq(不等于)。如果操作符放在source和source-mask之后,那么它必须匹配这个源端口。如果操作符放在destination和destination-mask之后,那么它必须匹配目标端口。

port

(可选)TCP或UDP端口的十进制数字或名称。端口号是一个0到65535的数字。TCP端口名列在“使用方针”部分。当过滤TCP时,可以只使用TCP端口名称。UDP端口名称也列在“使用说明”部分。当过滤TCP时,只可使用TCP端口名。当过滤UDP时, 只可使用UDP端口名。

established

(可选)只对TCP协议,表示一个已建立的连接。如果TCP数据报ACK或RST位设置时,出现匹配。非匹配的情况是初始化TCP数据报,以形成一个连接。

log

(可选)可以进行日志记录。

Source-begin

启始源地址。

Source-end

结束源地址。

Destination-begin

启始目的地址。

Destination-end

结束目的地址。

Port-begin

启始端口

Port-end

结束端口。

命令模式

IP访问列表配置态

使用说明

可以使用访问表控制包在接口上的传输,控制虚拟终端线路访问以及限制路由选择更新的内容。在匹配发生以后停止检查扩展的访问表。

分段IP包,而不是初始段,立即由任何扩展的IP访问表接收。扩展的访问表用于控制访问虚拟终端线路或限制路由选择更新的内容,不必匹配TCP源端口、服务值的类型或包的优先权。

注意:

在初始建立一个访问表后,任何后续的添加内容(可能由终端键入)放置在列表的尾部。

以下显示用于替换端口号的TCP端口名。参看当前的分配号RFC找到这些协议的有关参考。与这些协议相应的端口号也可以通过以键入一个?替代端口号的方式来寻找。

l   bgp

l   ftp

l   ftp-data

l   login

l   pop2

l   pop3

l   smtp

l   telnet

l   www

以下显示用于替换端口号的UDP端口名。参看当前的分配号RFC找到这些协议的有关参考。与这些协议相应的端口号也可以通过以键入一个?替代端口号的方式来寻找。

l   domain

l   snmp

l   syslog

l   tftp

示例

下面示例允许192.168.5.0这个网段:

!

ip access-list standard filter

permit 192.168.5.0 255.255.255.0

!

注意:

IP访问表由一个隐含的deny规则结束。

相关命令

deny

ip access-group

ip access-list

show ip access-list

5.2.5   show ip access-list

要显示当前的IP访问列表内容,使用show ip access-list命令。

show ip access-list[access-list-name] 

参数

参数

参数说明

access-list-name

访问表名。这是一个最长20的字符串。

缺省

显示所有标准的和扩展的IP访问列表。

命令模式

管理态

使用说明

show ip access-list命令允许你指定一个特定的访问列表。

示例

以下是不指定名时show ip access-list 命令的示例输出:

Router# show ip access-list

ip access-list standard aaa

permit 192.2.2.1

permit 192.3.3.0 255.255.255.0

ip access-list extended bbb

permit tcp any any eq www

permit ip any any

以下是指定访问表名时,show ip access-list命令的示例输出:

ip access-list extended bbb

permit tcp any any eq www

permit ip any any

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏高性能服务器开发

服务器开发中网络数据分析与故障排查经验漫谈

一、 操作系统提供的网络接口 为了能更好的排查网络通信问题,我们需要熟悉操作系统提供的以下网络接口函数,列表如下: 接口函数名称接口函数描述接口函数签名soc...

3585
来自专栏Laoqi's Linux运维专列

再回顾几个内核参数

1405
来自专栏FreeBuf

利用PRET控制远程打印机测试

Pret是用来对打印机安全进行测试的工具。它通过网络或者USB连接到设备,并利用给定打印机的语言进行渗透。目前绝大多数的打印机都是使用PostScript,pj...

1873
来自专栏运维小白

1-1 CCNA

单工:BB机,只能收,不能发 半双工:对讲机,收的时候不能发,发的时候不能收 全双工:电话,手机,能同时收发 ---- 冲突域:当一个节点向另一个节点发送数据...

3517
来自专栏Java进阶架构师

动图详解TCP的三次握手与四次挥手

原文:https://blog.csdn.net/qzcsu/article/details/72861891

1534
来自专栏任浩强的运维生涯

优化内核参数提高服务器的并发处理能力

PS:在服务器硬件资源额定有限的情况下,最大的压榨服务器的性能,提高服务器的并发处理能力,是很多运维技术人员思考的问题。要提高Linux系统下的负载能力,可以使...

5178
来自专栏Java架构师历程

TCP连接的状态详解以及故障排查

我们通过了解TCP各个状态,可以排除和定位网络或系统故障时大有帮助。(总结网络上的内容)

1K2
来自专栏SDNLAB

基于Mininet的MAC地址学习实验

1 实验目的 了解交换机的MAC地址学习过程; 了解交换机对已知单播、未知单播和广播帧的转发方式。 2 实验原理 MAC(media access contro...

4095
来自专栏coding

RabbitMQ实战4.发布与订阅交换机临时队列发布与订阅功能实现执行结果流程总结参考文档

RabbitMQ并非直接将消息投递到队列中,而是要经过交换机,交换机再与队列绑定。那么,什么是交换机? 如何通过交换机与队列的绑定实现发布与订阅功能?

1032
来自专栏互联网大杂烩

TCP/IP协议

TCP/IP协议并不完全符合OSI的七层参考模型。传统的开放式系统互连参考模型,是一种通信协议的7层抽象的参考模型,其中每一层执行某一特定任务。该模型的目的是使...

1102

扫码关注云+社区

领取腾讯云代金券