在大型 Cisco Catalyst 交换机堆栈上,几乎所有交换机端口都已修补。我需要确定未使用的端口,以连接更多设备。
将交换机端口、布线、接线区和插座连接到可能的终端设备是很费力的,即便如此,也可能会有临时使用的插座。查看端口 LED 的活动是不可靠的,因为可以关闭用户设备。
通过 IOS 命令检测所有未使用的交换机端口的最简单方法是什么?
在大型 Cisco Catalyst 交换机堆栈上,几乎所有交换机端口都已修补。我需要确定未使用的端口,以连接更多设备。
将交换机端口、布线、接线区和插座连接到可能的终端设备是很费力的,即便如此,也可能会有临时使用的插座。查看端口 LED 的活动是不可靠的,因为可以关闭用户设备。
通过 IOS 命令检测所有未使用的交换机端口的最简单方法是什么?
我经常使用
sh int | i (FastEthernet|0 packets input)
或与千兆以太网相同,无论我想检查哪种接口。
sh int
(即show interfaces
)给出了所有接口的 ste 状态的巨大列表|
可用于过滤,也可用于搜索表达式| i
(for include
) 过滤与以下搜索表达式匹配的输出(...|...)
用来匹配两个条件:接口名称和一个我喜欢看的状态,我们这里可以使用正则表达式,像这样的“或”表达式输出可能如下所示:
...
FastEthernet1/0/31 is up, line protocol is up (connected)
95445640 packets input, 18990165053 bytes, 0 no buffer
FastEthernet1/0/32 is up, line protocol is up (connected)
FastEthernet1/0/33 is up, line protocol is up (connected)
FastEthernet1/0/34 is down, line protocol is down (notconnect)
0 packets input, 0 bytes, 0 no buffer
FastEthernet1/0/35 is down, line protocol is down (notconnect)
FastEthernet1/0/36 is up, line protocol is up (connected)
FastEthernet1/0/37 is down, line protocol is down (notconnect)
0 packets input, 0 bytes, 0 no buffer
...
现在我可以看到我的候选人,随着时间的推移实际上输入了 0 个数据包,即使我的表达式匹配以 0 结尾的数字。我可以让它更完美,但容易记住也是一个好处。每个 0 数据包输入行之前的接口名称是我的候选对象。
sh int <name>
clear counters [type number]
关闭未使用的交换机端口是一种很好的做法。所以很容易识别它们使用sh ip int bri
等。如果您使用之前明确关闭的交换机端口,您就不会遇到问题。
最终... 文件。您需要知道每根跳线的去向 100% 确定您不会断开某些人可能希望在某个时候工作的东西。仅仅因为端口当前“关闭”并不意味着有人没有使用它。同样,仅仅因为计数器当前为零并不意味着它永远不会被使用或在(不久的)将来不会再次使用——计数器可以被清除,并且计数器在启动时重置为零。
我曾在 ISP 和大型企业工作过,文档是了解内容的关键。没有它,随机猜测将导致无数糟糕的日子……当您将他们的 DSL 线路运行给其他人、复制地址分配、关闭错误的接口等时,客户会非常生气。企业布线室可能是一团糟;如果没有文档,在数千条电缆中跟踪数十条电缆可能会很痛苦(并且像端口描述一样简单。)
我也喜欢
sh int | inc line protocol is|Last input
哪个输出
FastEthernet0/29 is down, line protocol is down (notconnect)
Last input never, output never, output hang never
FastEthernet0/30 is up, line protocol is up (connected)
Last input never, output 00:00:07, output hang never
FastEthernet0/46 is down, line protocol is down (notconnect)
Last input never, output 6d23h, output hang never
输出参数告诉您端口上次看到流量的时间,这对于识别那些偶尔使用的端口很有用。
编辑:另外值得注意的是(出于这个问题范围之外的原因)是“最后输入”几乎总是“从不”
我喜欢@Stefan 的回答,但是使用这个命令行“sh int | i (Ethernet| 0 packets input)”,它现在可以抓取所有以太网接口类型并过滤掉恰好以零结尾的非零数字。他提到可以进行一些微调,所以这只是一个例子。
另一种选择是...
sh int counters | i (Port|_0 0 0 0)
是的,需要空格。获得正确空格的最简单方法是执行“sh int counters”并复制一行全为零。这里的一个问题是列表的一半从我们想要的输入更改为输出,我们不关心查找未使用的端口。它的优点是仅显示没有输入的端口,因此您不必像使用 Stefan 的方法那样清除正在使用的端口。