我尝试解决这个问题一段时间,但在网上找不到合适的答案。我有一个包含移动流量的文件(来自 Android 设备),我正在尝试检查 http 请求是从浏览器还是从移动应用程序(例如,Ebay 应用程序及其移动网站)发送的。不幸的是,检查 http 标头上的 host 或 user_agent 字段没有得到任何结果(它们完全相同,host 包含地址m.example.com
,user_agent 包含有关设备的一般信息 - 类似于:)Mozilla/5.0 (Linux; Android 5.0.2; SAMSUNG SM-T550 Build/LRX22G) AppleWebKit/537.36 (KHTML, like Gecko) SamsungBrowser/3.2 Chrome/Safari/537.36
。
有人知道我该怎么做才能检查它吗?
谢谢 !
答案1
确实没有办法确切地确定网络流量来自哪种设备。用户代理可以轻易更改。
答案2
您可能只需从 Web 服务器的访问日志中提取客户端 IP 地址并对其进行 DNS 查找,然后按域对其进行分组,就可以完成 70-90% 的工作。大多数 Web 日志分析器都会将此作为流量分析的一部分。
如果您需要更完整的解决方案,并愿意为此付出努力,那么有一项关于浏览器指纹识别的有趣研究,它使用页面嵌入的 JavaScript 来提取有关浏览器、其插件以及运行设备的详细信息。但要实现这一点需要做相当多的工作。