我正在开发 wifi UI,在 802.1x 网络方面遇到了一些困难。我注意到在我的 Android 手机上,我必须设置各种设置,例如 EAP、第 2 阶段身份验证、域等。我也需要在我的应用程序中执行此操作才能连接到这些网络,但我不需要在我的 Windows 笔记本电脑上执行此操作。我也不必在 raspberry pi 上尝试的另一个界面上执行此操作。有没有办法自动确定这些设置?
(我的 UI 将基于 nmcli 构建,但总体而言我对这个问题很好奇。我很惊讶 android 对 802.1x 的用户体验如此糟糕,不知道这其中是否有原因)。
答案1
信标和探测响应具有“信息元素”(IE),可告诉您需要 802.1X。尝试进行 802.1X 连接(即使您没有设置凭据)也可以告诉您有哪些可用的身份验证方法。
如果 Android 或任何其他基于 GNU/Linux 的操作系统无法提供良好的用户体验,我怀疑是因为他们使用了 wpa_supplicant 或其他开源项目,而这些项目没有提供简单的方法来进行探索性 802.1X 连接尝试以检索支持的身份验证类型的列表。
顺便说一句,为了让您在 UI 中正确理解,802.1X 的“X”大写,因为它是一个独立标准。小写字母表示它不是独立的,只是对其他标准的修正。许多 UI 都搞错了这一点,因为设计师不熟悉 IEEE 802 命名约定。