譯至:
隨著開放源**的出現,開發的時間已經快速下降,同時質量也迅速提高。 對於所有參與wlan /wifi開發的人來說,讓我們來研究一下基於開源mac80211框架的linux的wlan架構吧。
下面的框圖說明了linux的wlan架構。 請看下面的詳細資料。
所有直接與使用者互動的應用程式都在這裡。 例如可以基於gui / cli。 在ubuntu / fedora發行版本的網路管理器是基於gui的,但最核心的部分是基於命令列的。例如,使用wpa_supplicant用於控制sta的部分和使用hostapd用於控制ap的部分。
兩者都是可通過其cli版本(wpa_cli,hostapd_cli)配置的。
它們支援不同的功能,如sme,mlme,安全,無線直連(p2p),ap和sta的配置。
我們也有工具來直接傳送命令到驅動來設定一些引數,如通道,頻寬,一些自定義的命令等。
如何在使用者空間中的各種應用程式和核心中的核心實體之間進行溝通呢? 我們有不同的方法,但都是基於不同的套接字介面。
wext ==> 通用無線擴充套件:ioctl介面
nl80211==> netlink套接字
hostap ==> 原始資料報套接字
特定於晶元組:
atheros==> ioctl 介面
prism,ipw etc.
對於開源世界來說,核心的wlan架構是mac80211,它分成2個核心模組。
cfg80211.ko:它處理所有的配置,和使用者空間的互動。
mac80211.ko:協議:上層的mac,和驅動程式的互動。
大部分功能和管理是由具有mac80211模組在底層的mac協助下處理的。
低層的mac驅動擔任umac和晶元組(韌體和硬體)之間的橋梁。 他們通過linux核心提供的服務來執行所有的裝置初始化,註冊到作業系統上,錯誤註冊,中斷註冊等。
乙個精心編寫的驅動程式遵循這些約定:
完整的802.11協議的功能在這裡實現。
韌體可能是執行在乙個單獨的處理器/微控制器上,它配置和控制硬體,同時還通過乙個晶元組(控制路徑)特定的通訊介面與主機(驅動程式)進行互動。
資料路徑通常包括乙個硬體上的dma控制器,它負責產生中斷給主處理器和從/至主機傳輸資料報到硬體佇列。
wpa_supplicant_hostapd_devel_doc
wpa_supplicant
Linux中的無線架構概述
譯至 隨著開放源 的出現,開發的時間已經快速下降,同時質量也迅速提高。對於所有參與wlan wifi開發的人來說,讓我們來研究一下基於開源mac80211框架的linux的wlan架構吧。下面的框圖說明了linux的wlan架構。請看下面的詳細資料。所有直接與使用者互動的應用程式都在這裡。例如可以基...
Linux無線滲透
使用工具 aircrak ng 環境 deepin linux 虛擬機器讀取不了筆記本的網絡卡資訊,推薦使用物理機進行操作,或者購買wifi接收器 若無此工具要先安裝 apt get install aircrak ng 首先開啟網絡卡監聽模式 sudo airmon ng start wlp2s0...
linux下無線的配置
centos無線設定 首先,我假設您們都已經正確安裝了無線網絡卡的驅動程式。沒有這前提,後續的一切都如鏡花水月。如果您你機器確實沒有正確安裝上,您應該看看關於您的發布版本的維基和文件。然後您就可以用如下命令來檢查是哪乙個介面來支援無線連線的 iwconfig 一般來說,無線介面都叫做 wlan0。當...