【发布时间】:2011-03-25 12:06:53
【问题描述】:
我的团队在一所相对较大的大学(50k+ 用户)负责后端架构、身份验证等以及无线和有线网络的工程级支持。我们最大的两个问题是确认网络问题(即确认“加载时间长”或“互联网速度慢”的报告),以及收集有关客户端设备的准确信息(MAC 地址、驱动程序信息、配置等)。我们正式支持 Windows、Mac、Ubuntu Linux、iOS 和 Android。移动设备对我们来说非常重要,因为它们变得非常流行。
我们已经可以访问 Web100 NDT 服务器(类似于http://ndt.anl.gov:7123/ 的服务器),它使用 Java 小程序运行双向带宽测试,并报告上传和下载带宽、延迟、抖动、客户端是否在 NAT 等之后。据说 NDT 服务器也有 iOS 和 Android 客户端,但这将 a)需要在他们的设备上永久安装应用程序(并且,对于 iOS,在 App Store 中获取它),并且 b)我怀疑iOS 应用是开源的,所以我们需要从头开始实现它以添加信息收集和结果提交。
我需要以相对简单的方式收集有关客户端操作系统的信息,让非技术性最终用户能够理解?从本质上讲,我希望我们的服务台人员能够告诉用户(嗯,那些有工作网络连接的用户)去一个网页,输入他们的票号,点击一个按钮,然后一些东西 em> 将收集他们的 MAC 地址、操作系统类型和版本、无线网卡驱动程序版本等,然后将其发送回服务器。
我考虑过使用 Java 小程序,但考虑到现代浏览器中的沙盒功能,无论应用程序如何签名或用户发出多少警告,我似乎都无法获得 MAC 地址(更不用说 shell 访问等更有用的东西了)给定的。我正在考虑使用 Java Web Start 从桌面操作系统中获取我们需要的东西,或者只是告诉 Linux 和 Mac 人员下载 Bash 脚本并运行它。
对移动操作系统有什么想法吗?对于他们来说,本质上,我需要获取无线 MAC 地址、设备型号、操作系统版本/构建等。
任何人都知道已经在做这样的事情的任何项目(并且是免费和免费的)?
【问题讨论】:
-
还有一件事我忘了提......因为我们最大的支持领域是无线,如果我想出的任何方法都能以某种方式访问无线网卡的当前看过的网络、连接的 SSID、信号强度等...