OpenWrt:查找知道其 MAC 地址的邻居

OpenWrt:查找知道其 MAC 地址的邻居

我有一个开放网状网络接入点连接到同一路由器(Aerohive BR100)比安讯士相机。我想在知道相机的 MAC 地址的情况下,从 Open Mesh 传感器内部自动发现相机的 IP。

这个糟糕的 Ascii 艺术展示了事物的连接方式:

+================= Aerohive router ================+
|    ____    ____    ____    ____          ____    |
|    [..]    [..]    [..]    [..]          [..]    |
|_____||______||______________||____________||_____+
      ||      ||              ||            ||
     Axis   OpenMesh     borrajax-pc        DSL
    camera  access pt.   (my laptop)     connection

连接摄像头和 OpenMesh 设备的路由器按以下形式分配 IP 地址: 10.200.255.XXX/24

如果我从 Aerohive 路由器上拔下笔记本电脑 (borrajax-pc) 并将其连接到 Open Mesh 传感器提供的 WiFi 网络,我的 IP 变为 10.223.176.150 (这没问题,因为它是 Open Mesh 传感器提供的 IP ,那是我的路由器/网关...我的老板, 毕竟)。无论如何...此时,我可以 ssh 进入传感器本身(正如我所说,它是我的网关):

borrajax@borrajax-pc:~$ ssh [email protected]
[email protected]'s password: 


BusyBox v1.19.4 (2013-01-08 11:35:01 UTC) built-in shell (ash)
Enter 'help' for a list of built-in commands.

  _______                          ________             __
 |       |.-----.-----.-----.  _  |        |.-----.----|  |__
 |   -   ||  _  |  -__|     | |_| |  |  |  ||  -__|__--|     |
 |_______||   __|_____|__|__|     |__|__|__||_____|____|__|__|
          |__|  http://www.open-mesh.com ---------------------
 (c) Open-Mesh, Inc. All rights reserved.
 firmware-ng: fw-ng-r443
 Powered by these open source projects:

 http://www.openwrt.org    http://kokoro.ucsd.edu/nodogsplash
 http://coova.org          http://www.open-mesh.org
 -------------------------------------------------------------
root@BorrajaX_Test_Sensor:~# 

但是当我在传感器内部时,其接口都没有像外部 Aerohive 路由器提供的地址 (10.200.255.XXX/24),因此我无法在一跳(或跳转)中看到我的邻居。

为了以防万一,这里有一个接口列表及其分配的 IP 地址:

root@BorrajaX_Test_Sensor:~# ifconfig
bat0     
bat0.0  
bat0.1  
bat0.2     inet addr:5.17.32.120  Bcast:5.255.255.255  Mask:255.0.0.0
bat0.3
br-lan1
br-lan2    inet addr:192.168.83.2  Bcast:192.168.83.255  Mask:255.255.255.0
br-meship  inet addr:10.223.168.1  Bcast:10.223.171.255  Mask:255.255.252.0
br-priv    inet addr:10.223.172.1  Bcast:10.223.175.255  Mask:255.255.252.0
br-pub     inet addr:10.223.176.1  Bcast:10.223.179.255  Mask:255.255.252.0
eth0 
eth1 
lo         inet addr:127.0.0.1  Mask:255.0.0.0
mesh0 
mon0     
pub0

如您所见,没有一个 IP 看起来像我的路由器提供的 IP(10.200.255.XXX

现在,如果我通过其他方式找到相机的IP,并且我发现所述IP是,例如,10.200.255.204这就是传感器内发生的情况。

root@BorrajaX_Test_Sensor:~# traceroute 10.200.255.204
traceroute to 10.200.255.204 (10.200.255.204), 30 hops max, 38 byte packets
 1  192.168.83.1 (192.168.83.1)  2.265 ms  0.608 ms  1.378 ms
 2  10.200.255.204 (10.200.255.204)  3.227 ms  1.265 ms  1.092 ms

所以它会跳过br-lan2界面并正确“看到”它。我什至可以 ping 通它。

root@BorrajaX_Test_Sensor:~# ping 10.200.255.204
PING 10.200.255.204 (10.200.255.204): 56 data bytes
64 bytes from 10.200.255.204: seq=0 ttl=63 time=2.788 ms

但是 ARP 表没有注册映射 MAC <--> 10.200.255.204 (我猜测是因为它跳过了一次 192.168.83.1)

有什么办法吗琶音当邻居连接到与 Open-Mesh 设备本身相同的路由器时,该邻居是否是“邻居”?另外,正如我提到的,Aerohive 路由器分配给 Open-Mesh 设备的 IP 似乎以某种方式隐藏在 Open-Mesh 设备内部。有什么办法可以克服这种“隐藏性”吗?


PS:如果我从笔记本电脑上完成整个操作,效果很好:

第一:验证我的 IP 是否属于路由器分配的范围 (10.200.255.XXX)

borrajax@borrajax-pc:~$ ifconfig eth0
eth0      Link encap:Ethernet  HWaddr 5c:f9:dd:52:10:78  
          inet addr:10.200.255.205  Bcast:10.200.255.255  Mask:255.255.255.192    
          [ . . . ]

第二:检查arp表:

borrajax@borrajax-pc:~$ arp -n
Address                  HWtype  HWaddress           Flags Mask            Iface
10.200.255.193           ether   e0:1c:41:30:ea:40   C                     eth0

没有相机!!

第三:fping 到整个 10.200.255.XXX 子网:

fping -g 10.200.255.1/24
10.200.255.193 is alive
10.200.255.204 is alive
10.200.255.205 is alive
ICMP Host Unreachable from 10.200.255.205 for ICMP Echo sent to 10.200.255.194
ICMP Host Unreachable from 10.200.255.205 for ICMP Echo sent to 10.200.255.19
[ . . . ]

第四:再次检查arp表:

borrajax@borrajax-pc:~$ arp -n | grep -v "incomplete"
Address                  HWtype  HWaddress           Flags Mask            Iface
10.200.255.204           ether   00:40:8c:e3:df:aa   C                     eth0
10.200.255.193           ether   e0:1c:41:30:ea:40   C                     eth0

达达啊!!10.200.255.204 以太 00:40:8c:e3:df:aa 是相机

相关内容