我想知道如何iwlist命令掃描可用的無線網絡,在Linux中。我讀了它的源代碼,並且有一個使用SIOCSIWSCAN的ioctl調用來觸發掃描並且SIOCGIWSCAN獲得掃描結果。但是,這些系統調用如何捕獲和分析信標幀?iwlist()命令如何掃描無線網絡?
5
A
回答
10
iwlist(8)和其他無線工具爲支持Linux Wireless Extensions(WEXT)的不同無線設備驅動程序提供通用前端。每個驅動程序將向WEXT註冊處理程序,這些程序執行由該接口定義的設備特定操作。對於掃描,這兩個處理程序是觸發掃描(命令SIOCSIWSCAN)並獲得掃描結果(命令SIOCGIWSCAN)。設備完成掃描後,它通過netlink接口向WEXT發送SIOCGIWSCAN事件。然後,偵聽此套接字的應用程序可以發出SIOCGIWSCAN命令來獲取設備的掃描結果。請注意,該設備可自由執行掃描,無論它選擇何種方式。例如,它可以被動地偵聽信標或通過發送探測請求進行主動掃描。
以上是故意模糊的發送命令到設備的機制,因爲有傳統的方式(ioctl)和新的方式(netlink - cfg80211)。但要舉一個具體的例子,考慮傳統的方式。 ioctl調用在WEXT模塊中實現,但處理此命令的代碼在設備驅動程序中實現。當用戶空間應用程序創建一個ioctl時,WEXT查找設備驅動程序的處理程序並運行它。
相關問題
- 1. iwlist掃描輸出格式
- 2. Altbeacon掃描命令
- 3. 如何在該區域掃描網絡
- 4. Android掃描WiFi網絡
- 5. 掃描網絡鏈接
- 6. 掃描C類網絡Python
- 7. 安卓掃描WiFi網絡
- 8. 柯達i1120網絡掃描
- 9. Phonegap的連接API *會主動掃描無線網絡嗎?
- 10. 多久Android系統掃描無線網絡
- 11. 如何使用iwlist掃描隱藏的ssid?
- 12. ServiceStack.Redis.RedisResponseException:未知命令「掃描」
- 13. windows手機無線掃描
- 14. 掃描iPhone SDK上的Wifi網絡
- 15. Java網絡服務掃描器
- 16. 掃描YARA規則的整個網絡
- 17. Raspberry Pi的Android和iOS掃描網絡?
- 18. 特定MAC地址掃描網絡 - Android
- 19. R網絡掃描數據集
- 20. 以AP模式掃描網絡(hostapd)
- 21. Android:主動掃描WiFi網絡
- 22. WIA +網絡掃描儀,adf = 1頁
- 23. Python掃描網絡IP地址和mac
- 24. 使用urllib進行網絡掃描
- 25. 如何使用windows NETSH命令連接到隱藏的無線網絡(無SSID)?
- 26. iwlist嘗試使用execl掃描所有接口時調用
- 27. Redis通過laravel掃描系列命令?
- 28. Android網絡中每秒掃描WiFi網絡的問題
- 29. 如何建立網絡掃描儀?掃描網頁,如果內容已更改並保存
- 30. 如何在C++中進行網絡-IP掃描?
明白了.... ioctl調用是在驅動程序模塊中實現的,因此使用SIOCGIWSCAN調用ioctl的實際函數將調用驅動程序模塊中定義的函數。 – 2009-06-11 07:14:34