使用 Google Geolocation API 通过 MAC 地址对 802.11 接入点进行地理定位

发布于 2024-10-11 01:22:19 字数 956 浏览 2 评论 0原文

大多数浏览器现在都内置了对 Google 地理定位 API 的支持。他们通过向 Google 发送附近 802.11 接入点(其信标被您的计算机捕获的那些接入点)的 MAC 地址来实现此目的。

我有从不同位置捕获的大量 802.11 数据包。我正在寻找 802.11 接入点的地理定位。假设我们只有他们的 mac 地址。这应该可以通过使用 Google Geolocation API 来实现。

迄今为止我发现的可能对此有所帮助的来源包括:

第一个可能是最好的选择。问题是,我不确定如何使用那里的示例并实际创建一个程序,让我通过管道输入 MAC 地址并输出纬度/经度对。我也不确定如何从 Unix/MacOS 命令行运行 JavaScript。

我知道有很多问题要问,但是有人知道我应该从哪里开始吗?

Support for the Google Geolocation API is now built in to most browsers. They do this, in part, by sending to Google the MAC address of nearby 802.11 access points (those whose beacons are captured by your computer.)

I have a large number of 802.11 packets captured from various locations. I'm looking to geolocate the 802.11 access points. Assume that we only have their mac addresses. This should be possible by using the Google Geolocation API.

Sources that I've found to date that might be helpful on this include:

The first is probably the best bet. Problem is, I'm not sure how to use the example there and actually create a program that lets me pipe in the MAC addresses and output lat/long pairs. I'm also not sure how to run JavaScript from a Unix/MacOS command line.

I know that this is a lot to ask, but does anybody have any clue where I should start?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

々眼睛长脚气 2024-10-18 01:22:19
<?php

$mac = $_SERVER['argv'][1];


$postData = '{
    "version": "1.1.0", 
    "wifi_towers": [{
        "mac_address": "' . $mac . '", 
        "ssid": "0", 
        "signal_strength":-72
    }]
}';

$opts = array(
  'http'=>array(
    'method' => "POST",
    'header'  => 'Content-type: application/x-www-form-urlencoded',
    'content' => $postData
  )
);


$response = file_get_contents(
    'http://www.google.com/loc/json', 
    false, 
    stream_context_create($opts)
);

$loc = json_decode($response, true);

echo $loc['location']['latitude'];
echo ',';
echo $loc['location']['longitude'];

命令行用法:

php geo.php "mac addy here"
<?php

$mac = $_SERVER['argv'][1];


$postData = '{
    "version": "1.1.0", 
    "wifi_towers": [{
        "mac_address": "' . $mac . '", 
        "ssid": "0", 
        "signal_strength":-72
    }]
}';

$opts = array(
  'http'=>array(
    'method' => "POST",
    'header'  => 'Content-type: application/x-www-form-urlencoded',
    'content' => $postData
  )
);


$response = file_get_contents(
    'http://www.google.com/loc/json', 
    false, 
    stream_context_create($opts)
);

$loc = json_decode($response, true);

echo $loc['location']['latitude'];
echo ',';
echo $loc['location']['longitude'];

Command line usage:

php geo.php "mac addy here"
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文