查找以太网设备的物理端口 - OPENWRT

时间:2013-10-29 23:21:28

标签: linux networking openwrt

我已经筋疲力尽了所有的知识,我仍然陷入困境。

问题:我想找出设备连接到哪个物理交换机端口,并参考该MAC地址。我已经能够在有线设备上找到很多信息,但我似乎找不到能给我想要的任何命令。

以下是我的尝试。

命令:BRCTL

忙框中的默认BRCTL没有'showmacs'命令。为了得到这个,你必须安装桥接包和--force依赖。

我相信这个命令告诉我哪些MAC地址正在与网桥通信,但是PORT值只是1或2。这似乎分别与eth0和wlan0相关,因为这是它们分配给网桥的顺序。

问题是这不会给我插入路由器背面的物理端口。即。 1-4。所以我一直在寻找。

输出:

brctl showmacs br-lan<br>

port no    mac addr        is local?    ageing timer <br>
  1    00:21:70:be:19:2b    no          17.34 <br>
  2    00:22:5f:28:64:54    no          11.16 <br>
  2    10:40:f3:af:ee:6a    no           0.05 <br>
  1    10:6f:3f:29:72:22    yes           0.00 <br>
  2    5c:0a:5b:84:27:8b    no           1.25 <br>
  1    5c:26:0a:7a:a7:60    no           0.00 <br>

命令:swconfig -note我已经删除了很多这个命令的输出,使它更整洁。

此命令向我显示有关端口的一些有用信息。它告诉连接哪些物理端口以及以什么速度连接。但是问题是这个命令提供的信息都没有给我MAC地址,这意味着我无法确定哪个设备连接到哪个端口。

我似乎无法找到将mac地址与端口值匹配的方法。

root@OpenWrt:~# swconfig dev eth0 show
Global attributes:
    enable_vlan: 1
Port 0:
    mib: Port 0 MIB counters

{deleted mib values}

    pvid: 1
    link: port:0 link:up speed:1000baseT full-duplex txflow rxflow 
Port 1:
    mib: Port 1 MIB counters

{deleted mib values}

    pvid: 1
    link: port:1 link:up speed:1000baseT full-duplex auto
Port 2:
    mib: Port 2 MIB counters

{deleted mib values}

    pvid: 1
    link: port:2 link:up speed:1000baseT full-duplex auto
Port 3:
    mib: Port 3 MIB counters

{deleted mib values}

    pvid: 1
    link: port:3 link:down
Port 4:
    mib: Port 4 MIB counters

{deleted mib values}

    pvid: 1
    link: port:4 link:down
VLAN 1:
    vid: 1
    ports: 0 1 2 3 4 
root@OpenWrt:~# 

1 个答案:

答案 0 :(得分:3)

路由器和物理端口之间有一个交换机。 swconfig与该交换机的接口。如果您具有默认配置,则路由器不知道每个物理端口,它只能看到与交换机的一个连接。您有两种可能的进展选项,为每个物理端口配置不同的接口,以便路由器可以区分它们,或者获得可以查询交换机芯片内部的swconfig的增强版本,该内核应该有每个端口的MAC列表。请参阅http://wiki.openwrt.org/doc/uci/network/switch