如何获取有关无线net_devices的信息

时间:2013-02-27 18:50:59

标签: networking linux-kernel netfilter

我正在使用NF_INET_PRE_ROUTING挂钩的Linux内核模块。在那个钩子里,我需要知道所有net_devices的状态,特别是无线设备。我可以从net_device->flags获取有关设备的一些信息,即IFF_UP设备已启用或关闭。但我需要更多有关无线net_device的详细信息。

  1. net_device是无线/有线吗?
  2. 无线设备是否连接到无线接入点?
  3. 如果是,哪个无线接入点(接入点名称)?
  4. 与该设备关联的网关地址(我想,我需要从路由表中获取此信息?)。

2 个答案:

答案 0 :(得分:1)

请参阅iwconfig,iwlist和其他实用程序。

答案 1 :(得分:1)

if(net_device->ieee80211_ptr != NULL)ieee80211_ptrstruct wireless_dev*。此结构应该允许您访问所请求的大多数值。在struct wireless_dev struct wiphy *wiphy;中,您可以使用此wiphy_to_dev()获取devices

网关地址与无线无关。我怀疑name是否有网关信息,但您需要net_device中的接口device来查找路由。该路由与 IP 相关,与{{1}}无关。祝你好运。