Project

General

Profile

Actions

Support #192

closed

Getting a list of wifi devices

Added by Sean D over 9 years ago. Updated about 7 years ago.

Status:
Rejected
Priority:
Normal
Assignee:
-
Target version:
-
Start date:
08/25/2014
Due date:
% Done:

0%

Estimated time:

Description

Hi,
Is there a way to get a list of wifi devices that may or may not be connected to the mesh? Basically I am looking for a way to get a list of devices that are visible to the nodes despite the fact that they may not be joined (connected to a node) to the mesh.

I thought about reading the Global Translation Table but 1. From my understanding the table doesn't show devices that are not connected to the mesh 2. The table only shows which client is connected to which node within the mesh.

My goal is to read a list of all devices that are within the range of multiple nodes.

Thanks in advance

Actions #1

Updated by Marek Lindner over 9 years ago

Are you trying to create some retail store tracking system ?

Actions #2

Updated by Sean D over 9 years ago

Kind of... I need to triangulate the devices to calculate their position, which is why getting the device's location from a single node won't be enough.

I know there's a way of getting the device list in range even though they're not connected as airodump-ng does this. I am wondering if I need to write my own class that does this or if there's already a solution that I can leverage... also I need to write my own then if you can point me to the right direction as to which classes I need to include etc... . I think this is something that a lot of people may use and so if the solution is working, I can always check the code in to the batman-adv source code.

I'd appreciate your help.

Actions #3

Updated by Marek Lindner over 9 years ago

How about contacting the airodump-ng project instead of the batman-adv project if you need help with airodump-ng ? What makes you think we can help you with airodump-ng and client triangulation ?

Actions #4

Updated by Sean D over 9 years ago

The problem isn't something that can solved by running airodump-ng. I was merely saying that what I needed isn't something that hasn't been done before and that airodump-ng has a small feature that does something similar. the airodump-ng is meant for intrusion detection etc. and it isn't something that would be beneficial to what I am trying to do.

We have a mesh network that runs open-wrt and batman-adv on its firmware nodes and I need to change the firmware so that I can add this functionality to it.

Actions #5

Updated by Marek Lindner over 9 years ago

I still don't get how this is connected to batman-adv and why you think we can help you with client triangulation ? There has to be more reason than you having a firmware runing batman-adv ?

Actions #6

Updated by Sean D over 9 years ago

As I said, the routers are running on open-wrt and batman-adv and so I thought this is something that can be exposed through the API of these two. If this is too much work and too complex just point me to code within the svn and I'll try to figure out. But at this point I don't even know where to look and what to look at.

Actions #7

Updated by Marek Lindner over 9 years ago

The API of these ? You believe batman-adv does client triangulation of standard (non-mesh) clients that are not even connected to anything and all we have to do is to export that to you ?

Actions #8

Updated by Sean D over 9 years ago

Client Triangulation is my final goal and if such a thing doesn't exist, that's fine. The API I am looking for is this...

While a router is part of the mesh, is it possible do a passive monitor using one of its wifi devices? If so, is there a sample code you can point me to?

When a client is roaming between from node A to node B, how does node B figures out that it should now communicate with the client and tells node A to remove the client from it's joined client list? Can you point me to the code that does the roaming.

Actions #9

Updated by Marek Lindner over 9 years ago

To understand the batman-adv roaming I suggest diving into our documentation. The 'translation table in a nutshell' is a formidable starting point: 2012-05-13-translation-table-in-a-nutshell

All translation table code resides in translation-table.c - local roaming events are handled in batadv_tt_local_add():
https://git.open-mesh.org/batman-adv.git/blob/HEAD:/net/batman-adv/translation-table.c#l496

Actions #10

Updated by Marek Lindner about 9 years ago

  • Status changed from New to Closed
Actions #11

Updated by Sven Eckelmann about 7 years ago

  • Status changed from Closed to Rejected
Actions

Also available in: Atom PDF