如何远程追踪设备所在的端口?

网络工程 cisco 命令 网络发现
2021-07-14 00:51:43

大家好,

假设我正在监控一个大型网络并且没有对设备的物理访问权限,并且想要找出设备所在的端口。我可以使用哪些技术来帮助实现这一目标?

我能想到的一种方法是获取从源机器到目标 IP 地址的跟踪路由。

然后使用它来查找设备用于离开网络的路由器。

登录路由器并运行命令 sh ip arp | 包括[主机的IP地址]

获得 mac 地址后,我将登录该 LAN 交换机并键入 sh mac-address-table | 包括[主机的mac地址]

我相信这应该为我指明主机正在使用的端口的正确方向。如果将接口设置为端口通道,我可能会遇到一些问题。如果是这种情况,我可能需要运行 sh int port-channel (如果我错了,请纠正我)。

如果我在任何步骤中出错,请纠正我,但是在尝试追踪主机所在的接口时,我是否遗漏了他们的任何命令?

1个回答

这正是我在大多数情况下会使用的过程。

如果您在所有交换机上都启用了 CDP(Cisco 发现协议),则可以通过运行 Cisco 的 MAC Traceroute 功能来节省大量时间。

traceroute mac ip <<gateway ip>> <<host ip>> detail

<<gateway ip>>>您尝试跟踪的设备子网的网关地址(或该子网内的任何其他有效 IP)在哪里

0ffnet-LAB1#traceroute mac ip 172.16.0.1 172.16.0.188 detail
Translating IP to mac .....
172.16.0.1 => 00a0.6125.af0b
172.16.0.188 => 0029.8856.0f60

Source not directly connected, tracing source .....
Source 00a0.6125.af0b found on 0ffnet-LAB1[WS-C3550-48] (172.16.0.1)
1 0ffnet-LAB1 / WS-C3550-48 / 172.16.0.1 :
Fa0/27 [auto, auto] => Fa0/3 [auto, auto]
2 0ffnet-LAB2 / WS-C3550-48 / 172.16.0.2 :
Fa0/1 [auto, auto] => Fa0/2 [auto, auto]
Destination 0029.8856.0f60 found on 0ffnet-LAB2[WS-C3550-48] (172.16.0.2)
Layer 2 trace completed.
0ffnet-LAB1#

如果您需要定期执行此操作(例如:您是网络管理员),那么有一些工具可以通过定期从您的设备收集 MAC 表并将它们存储在数据库中来自动执行此过程,例如:

http://netdbtracking.sourceforge.net

您可以轻松地使用 SNMP 和一些编码经验进行类似的操作。