发新话题
 搜藏 打印 该页面添加到 Mister Wong

使用 Linux 做无线AP(一)

本帖已经被作者加入个人空间

使用 Linux 做无线AP(一)

使用 Linux 做无线AP



                                                         作者    凌晨



随着 IEEE 802.11 b/g 协议的普及推广,无线局域网越来越进入我们的日常生活中。它不受网线,网络交换设备的束缚,使人们充分体会到“无限”移动带来的便利和快捷。较之有线局域网络(如:以太网),无线局域网的优势自然不言而喻。



使用Linux做无线AP, 有以下几大优势;




  • 跨硬件平台: 支持大多数CUP, 可以做到嵌入式设备,也可以在普通的PC机上,甚至在APPLEG5机器上实现。




  • 低成本,开放性和坚固性: 它遵守GPL协议,可以自由使用,开发。最大程度地对公开网络标准的支持。完全 可以根据实际情况,自定义,构建系统,达到系统最优。尤其是健壮的2.6内核,保证了作为AP的稳定和高效。




  • 实现AP的多样性:可以通过netfilter/filter内核模块做数据包转发(nat技术),也可以通过使用brctl软件作为网桥,也可以通过Zebra 软件配制动态路由。






  • 灵活性,可扩展性:可以使用netfilter/iptables对数据包过滤,达到防火墙的功能,从而保护内部无线网络,也可以配制squid作为代理服务器,控制无线客户端的通讯,也可以配制cups打印系统,无线使用打印机,还可配制mrtg,监视网络流量。甚至可以配制sendmail, samba等软件,为客户端来提供邮件,windows的文件共享服务,来适应商务办公的需要。





由于 Linux 操作系统的开放,稳定,跨平台等上述特点,使之成为做无线AP 理想平台。





Linux做无线AP, 主要概括为2部分,无线网络部分(wireless lan) 数据转发部分(data forward)



一.无线网络部分: 无线局域网网卡的 驱动 安装及加载

          无线网络的物理参数设置

          无线网络的网络层的参数设置( ip/netmask, gateway, DNS)





笔者是用一台PC 机,加装 TP-LinkTP-WN550G网卡(PCI插槽,54M速率,支持 IEEE 802.11 b/g 协议)运行CentOS 4.2 (2.6.9内核)做无线AP测试的。



网络背景:     

              

                  

PC机的以太网网卡 eth0  接公网,有线通宽带(Cable), 使用DHCP 议分配IP

无线网络的客户端是apple本本 ibookG4

无线网络 192.168.0.0/24





TP-WN550G网卡是使用Atheros芯片。可以使用  http://madwifi.org 站点上的驱动程序。这是一个开源项目,专门用于Atheros芯片无线局域网网卡的Linux驱动程序 2.42 .6内核)



必须安装的软件包:sharutils(归档工具), subversioncvs客户端,在CentOS已经安装)

安装 sharutils 过程  (安装subversion类似):

tar zxvf sharutils-4.6.tar.gz

cd  ./sharutils-4.6

make

make install



准备工作完成,开始安装。

下载源代码: svn checkout  http://svn.madwifi.org/trunk madwifi-ng 下载完毕后 root目录下会生成 madwifi-ng 的目录,

假如先前安装过旧的madwifi程序,要先清除(第一次安装可以跳过)

cd ./madwifi-ng/scripts

./madwifi-unload.bash

./find-madwifi-modules.sh /lib/modules/



清除完毕,进入madwifi的主目录,开始编译:make

然后执行安装: make intsall



系统没有提示出现错误安装,安装成功 !准备下一步测试。



开始加载驱动模块 :

   [root@Jack ~]#  modprobe ath_pci



设置成为AP模式:



[root@Jack ~]#  wlanconfig ath0 create wlandev wifi0 wlanmode ap



madwifi使用的是 VAP的概念(即 虚拟AP),既是station mode ,也是master AP mode 。这时,系统会有2wireless interfacewifi0,ath0 一般情况下,对无线网络接口设置,包括ip设置,都在 ath0 进行。





iwconfig设置无线物理参数:

1.网络标识:[root@Jack ~]#  iwconfig ath0 essid “jack”

2.网络频率:[root@Jack ~]# iwconfig ath0 freq 5.2G

3.网络频道:[root@Jack ~]# iwconfig ath0 channel 11

4.网络速率:[root@Jack ~]# iwconfig ath0 rate 54M auto

5.WEP加密:[root@Jack ~]# iwconfig ath0 key DEAD-BEFF-AA  (可选,默认不加密)

6.发射功率: [root@Jack ~]# iwconfig ath0 txpower 30 (可选, dBm为单位,自动使用默认值)



此外 可以在加载驱动模块时添加入自动匹配参数:

   modprobe ath_pci  autocreate=ap,系统会使用默认值,以代替上面的iwconfig命令(除了第一个的网络标识设置),省去麻烦。(笔者比较喜欢)



至此,无线网络的物理参数设置完毕。



开始手动设置AP ip  地址:

[root@Jack ~]# ifconfig ath0 192.168.0.1 netmask 255.255.255.0



打开ibookG4aiport ,此时airport可以检测到信号的存在,选择要加入的网络 jack ,用 airport  GUI工具 指定 ip 192.168.0.90



至此,网络设置完毕,可以测试连同情况了。


  
附件:

本文由hew 发布于Linuxsky 论坛,网址:http://bbs.linuxsky.org/thread-3158-1-1.html

你的鼓励,我的动力.
做人厚道,看贴回贴.
my linux blog

TOP

使用 Linux 做无线AP(二)
http://bbs.linuxsky.net/thread-3159-1-1.html

使用 Linux 做无线AP(三)
http://bbs.linuxsky.net/thread-3160-1-1.html

使用 Linux 做无线AP(四)
http://bbs.linuxsky.net/thread-3161-1-1.html
你的鼓励,我的动力.
做人厚道,看贴回贴.
my linux blog

TOP

老大很强哦!!!

TOP

发新话题