如何识别从Linux盒连接到同一交换机的NIC?
初始设置 作为Linux管理员,您已经安装了带有6个网卡eth0到eth5的新Linux盒。eth0接口已正确配置,所有其他接口当前都已启动,但没有IP地址。网络人员只需将四根电缆连接到此盒。两根LAN电缆用于将盒子连接到生产网络,两根LAN电缆用于将盒子连接到专用网络。您只知道eth0已连接到生产网络。但是您不知道哪个其他NIC连接到同一交换机,因为存在不同的服务器世代和/或网络人员使用错误的NIC进行连接。 手头的任务 由于此设置是您的基础结构的典型设置,因此您希望自动执行绑定接口的配置。现在,您需要执行任务以检测哪些NIC根本没有连接,以及哪些NIC链接到同一交换机,以便将它们绑定在一起。您只能访问Linux机器,而不能查询交换机。 主意 检测链接状态很容易: ethtool $device | grep 'Link detected' | cut -d ':' -f 2 但是,如何匹配连接到同一交换机的设备? 在HP-UX中,有一个用于此目的的工具称为linkloop [1]。缺少正式的Linux工具(不过,有一个旧的SourceForce项目)。 我想到的可能解决方案是: 使用tcpdump侦听所有接口。制作并发送ICMP(广播)数据包。看到该数据包的接口需要连接到同一交换机。->需要一些可能用于此目的的简单工具的建议。我想使用普通的shell命令或Python编写脚本。 尝试通过一些简单的协议(HTTP?)与外部设备对话,看看是否有响应。->容易出错,并取决于外部盒。 您是否有解决此任务的其他想法或建议? 预先感谢您的所有评论! [1] http://linux.die.net/man/1/linkloop