当移动设备连接到网络时创建触发器

cle*_*ula 0 scripting iphone ip

我是网络主题的完全傻瓜。当特定的 iPhone/手机连接到无线网络时,我正在尝试创建日志。

主要目标是在已知的 mac 地址进入网络时触发触发器(创建日志文件、发送邮件、创建发布消息到 Web 服务器等)。

在终端上,如果我发送,arp -a我会得到电话的所有 ip 和 mac 地址,但我无法弄清楚如何使用 mac 地址进行此​​操作。

Mar*_*son 6

好吧,既然你一后仅是单一的手机,您将需要监控的东西(DHCP或ARP表),并期待为您的手机的MAC地址。它不会改变,因为它(意味着)每个网络接口都是全局唯一的。

但是,存在一些问题:

  1. DHCP 租约会持续一段时间。仅仅因为有租约,并不意味着设备当前存在
  2. ARP 条目会被缓存,至少会缓存一段时间。仅仅因为您有一个条目,并不意味着该设备当前存在
  3. 如果设备断开网络的时间足够长以致 DHCP 租约到期,则该设备的 IP 地址可能会在连接时更改,因此您不能依赖其 IP 地址
  4. 您的手机应该尝试为自己注册一个 DNS 条目,但除非您有一个合适的本地 DNS 服务器(不仅仅是像大多数调制解调器/路由器那样的中继器),否则您将无法查询设备名称以获取 IP 地址通过ARP获取其MAC地址
  5. IPv6 邻居发现可能是另一个好方法,但这涉及网络和电话上的 IPv6 堆栈,并且会遇到与 ARP 相同的问题。
  6. 监控来自您的 MAC 的 DHCP 请求的广播流量。这些不应该经常出现,并且是设备当前在网络上的安全标志。但是哇,这是一个很大的开销。

最好的选择是配置 802.1x。这涉及支持 WPA2-Enterprise 和 RADIUS 服务器的 WiFi 接入点。监控 RADIUS 服务器的身份验证日志以获取相关设备的 MAC,然后发送电子邮件。