我们正在开发一个基于Linux的以太网交换机,它有6个端口。我们已经完成了CDP协议。我已经连接了一个思科设备到端口2。当我对思科设备感到不安时,我会得到回复,而不是得到lan1 (端口1- lan0 .端口6= lan5),我总是得到接口名为eth0。所有端口的情况也是如此。需要进行哪些更改才能获得正确的接口名称?我将非常感谢你提供的信息。在文件“Linux.2.6.XX/net/802/psum.c”中的例程snap_rcv()中接收快照数据包;
你好,Suraj..。
发布于 2012-10-16 04:59:35
下面是show cdp neigh的一个示例:
Device ID Local Intrfce Holdtme Capability Platform Port ID
akira2 Eth 0/0 142 [redacted Eth 0/1在本例中,路由器呼叫自己为akira2,连接到本地路由器;在本地路由器上连接到的端口是en0/0,在远程路由器上连接到的端口是en0/1。在这种情况下,CDP数据包提供端口ID (来自标记为0x3的字段),并在接收数据包时推断本地接口。
默认情况下,它是这样工作的,因此如果您获得明显错误的数据,您应该更新您的固件和/或调用cisco支持。
思科设备上的端口名通常不被命名为lanN;通常情况下,如果它们是100基T端口,它们将前缀fe,而千兆以太网端口将前缀ge。如果您发现设备总是报告en0 (或以太网0或Eth 0),则很可能该设备是作为一个路由器实现的,其前面有一个集线器(非托管)将端口分开。
https://serverfault.com/questions/438780
复制相似问题