`

WEXT/mac80211/nl80211/cfg80211

阅读更多
  • Wireless-Extensions--旧的无线驱动框架
  • mac80211--为softMAC驱动服务的API
  • cfg80211--新的配置API
  • nl80211--新的用户控件<->内核空间通讯方式

组件交互的基本原理图
[Wireless Card]
      |
[Linux Kernel ]
  |    |
[udev][libnl]-[iw]      
   |  /   \      
[crda]    \     
    |       \     
[ Wireless ] |
[Regulatory] |
[ Database ] |
             |
             |
        [ hostapd ]
理解每一部分是做什么的
Wireless Card: Should be self explanitory... handles sending/receiving wireless packets
无线网卡:操作接收/发达无线包
Linux Kernel: The linux kernel contains the driver for the wireless card, the mac80211 subsystem which handles packet generation and scheduling, and the nl80211 subsystem, which handles configuring the wireless interfaces for userspace
linux核:linux核包涵了无线网尗的驱动,mac80211子系统 处理包的产生与时序安排。nl80211处理在用户空间配置无线接口  cfg80211
libnl: libnl is the transport layer used to communicate with the kernel via netlink
libnl:通过netlink与内核对话的传输层
udev: udev is the facility the kernel uses to pass events/calls to crda
udev:udev是内核通过events/calls到 crda的设施
iw: iw is a userspace utility that we can use to test that libnl is working correctly, as well as create additional virtual wireless interfaces on the wireless card
iw:是我们用来测试 libnl是否正确工作,以及在无线网卡上创建额外的虚拟无线接口的用户空间工具
crda: crda is a userspace program that the kernel queries (through udev) to find what channels/frequencies are usable, and at what powers. This moves the information out of static tables maintained in kernel to userspace, which allows them to be updated without reloading drivers/rebooting
crda:是内核通过udev来查找什么频段/频率是有效的,在什么强度的用户空间程序。这个从内核维护的静态表中移到用户空间,它可以不需要重载驱动和重启的情况下更新。
Wireless Regulatory Database: database of allowable frequencies and transmit power levels used by crda
无线控制数据库:crda使用允许的频率和传输强度等级的数据库
hostapd: This is the daemon that handles generation of beacons and other wireless packets, as wel as wpa-psk, wpa2, etc encryptions.
hostapd:这是个用来操作信号的产生和其它无线包,以及wpa-psk, wpa2等加密的守护进程
softMAC是一个用于描述无线网尗的类型的一个术语。

分享到:
评论
6 楼 haohetao 2011-12-21  
echo 1 > /proc/sys/net/ipv4/ip_forward
就是开启路由功能
5 楼 livagain 2011-12-21  
dnsmasq已经搞定,iptables我使用了sudo iptables -t nat -A POSTROUTING -s 10.1.1.0/24 -o eth0 -j MASQUERADE这条语句,包转发开启是什么?用啥指令?
4 楼 haohetao 2011-12-18  
只要无线问题解决其它的就容易了,用dnsmasq和iptables并开启包转发功能就可以做个路由
3 楼 livagain 2011-12-18  
我已经解决了,是 hostapd上面的config里面需要配置一下,相关固件也得下载一个。不过用该AP在ubuntu10.04上仍然木有配置无线路由成功,只能做个AP,郁闷中~~~~~~
2 楼 haohetao 2011-11-09  
ubuntu的无线网卡驱动的支持相对落后一些,这一点ubuntu不如fedora,我在fedora上用的好好的网卡在ubuntu上没有驱动,还要我自己编译。而且ubuntu在10.10(可能更早一些)之前的版本上默认就不支持nl80211,不过现在已经支持了,推荐你用11年以后的ubuntu版本。
nl80211驱动框架推出的时间比较晚,早期版本的ubuntu只支持旧驱动,如果非要在旧版本ubuntu上运行nl80211驱动的话可以看看这里http://wireless.kernel.org/en/users/Download
不过我没成功
1 楼 livagain 2011-10-30  
你好,我有个问题想请教。 我用 ubuntu10.04, 安装了一个usb的无线网卡, 准备用来做AP,结果  iw list ,提示“nl80211 not  found”, 之前 该网卡在ubutu11上面成功做过AP,不知 为何在ubuntu10.04出现这种问题。 求指教

相关推荐

Global site tag (gtag.js) - Google Analytics