相关配置
Ubuntu 12.04/Ubuntu 13.04
无线网卡Tenda 803u / Tp-link TL-WIN310G
VMware Workstation 10
(注:直接安装的是Ubuntu系统的PC也可以)
步骤
安装Hostapd 2.0
Almighty@Ubuntu:~$ sudo apt-get install libnl-dev libpopt-dev libssl-dev
Almighty@Ubuntu:~$ wget http://hostap.epitest.fi/releases/hostapd-2.0.tar.gz
Almighty@Ubuntu:~$ cp hostapd-2.0.tar.gz /mnt/hgfs/github #拷贝到windows下的目录,方便在windows下阅读和修改代码
Almighty@Ubuntu:~$ cd /mnt/hgfs/github/
Almighty@Ubuntu:/mnt/hgfs/github$ tar -zxvf hostapd-2.0.tar.gz
Almighty@Ubuntu:/mnt/hgfs/github$ cd hostapd-2.0/hostapd/
Almighty@Ubuntu:/mnt/hgfs/github/hostapd-2.0/hostapd$ cp defconfig .config
Almighty@Ubuntu:/mnt/hgfs/github/hostapd-2.0/hostapd$ make
Almighty@Ubuntu:/mnt/hgfs/github/hostapd-2.0/hostapd$ sudo make install
配置无线网卡
1. 这里使用tenda 832u,插上网卡后虚拟机会跳出提示,VMware左下角会出现USB设备,
点击连接设备,最终命令行下ifconfig时能看到wlan0网口。
(直接是Ubuntu系统的跳过此步)
2.
配置wlan0网口
Almighty@Ubuntu:~/hostapd-2.0/hostapd$ sudo gedit /etc/network/interfaces
auto wlan0
iface wlan0 inet static
address 192.168.0.1
netmask 255.255.255.0
此时有线网口eth0应该可以上网。
配置hostapd
打开hostapd的配置文件
Almighty@Ubuntu:~/hostapd-2.0/hostapd$ sudo gedit /etc/hostapd.conf
配置文件的参数范例如下:
interface=wlan0
driver=nl80211
ssid=Almighty
hw_mode=g
channel=11
dtim_period=1
rts_threshold=2347
fragm_threshold=2346
macaddr_acl=0
auth_algs=3
#ieee80211n=0
wpa=2
wpa_passphrase=12345678
wpa_key_mgmt=WPA-PSK
wpa_pairwise=TKIP
rsn_pairwise=CCMP
安装dnsmasq
DNSmasq是一个小巧且方便地用于配置DNS和DHCP的工具,适用于小型网络。
它提供了DNS功能和可选择的DHCP功能。
当前环境默认已安装运行dnsmasq,这里需要先把它杀掉,然后升级一下。
当前环境默认已安装运行dnsmasq,这里需要先把它杀掉,然后升级一下。
Almighty@Ubuntu:~$ ps -e | grep dnsmasq
1293 ? 00:00:00 dnsmasq
Almighty@Ubuntu:~$ sudo killall dnsmasq
Almighty@Ubuntu:~$ sudo apt-get install dnsmasq
Almighty@Ubuntu:~$ ping www.163.com
Almighty@Ubuntu:~$ sudo reboot
配置DHCP服务器
Almighty@Ubuntu:~/hostapd-2.0/hostapd$ sudo gedit /etc/dnsmasq.conf
配置参数如下:
interface=wlan0
bind-interfaces
except-interface=lo
dhcp-range=192.168.0.100,192.168.0.200,6h
dhcp-option=3,192.168.0.1
其中
dhcp-range=192.168.0.100,192.168.0.200,6h #设置dhcp地址范围,即租借时间6小时
dhcp-option=3,192.168.0.1 #为手机配置网关
dhcp-range=192.168.0.100,192.168.0.200,6h #设置dhcp地址范围,即租借时间6小时
dhcp-option=3,192.168.0.1 #为手机配置网关
配置hostapd,dnsmasq
Almighty@Ubuntu:~$ sudo ifconfig wlan0 192.168.0.1 netmask 255.255.255.0
Almighty@Ubuntu:~$ sudo hostapd -B /etc/hostapd.conf
Configuration file: /etc/hostapd.conf
Using interface wlan0 with hwaddr c8:3a:35:cc:76:cd and ssid "Almighty"
Almighty@Ubuntu@ubuntu:~$ sudo /etc/init.d/dnsmasq restart
这时station(Android手机、iphone、ipad等)可以连接我们搭建AP了,但还无法上网,尽管我们的虚拟机中eth0可以上网。
配置路由上网
Almighty@Ubuntu:~$ sudo -s
root@Ubuntu:~# echo "net.ipv4.ip_forward=1" >> /etc/sysctl.conf
root@Ubuntu:~# echo 1 > /proc/sys/net/ipv4/ip_forward
root@Ubuntu:~# exit
exit
Almighty@Ubuntu:~$ sudo iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
Almighty@Ubuntu:~$
这时我们的station可以打开网页上网。