1、安装需要的包
sudo apt-get install hostpad uhdcpd
2、配置/etc/network/interfaces文件
配置wlan0为静态地址
格式如下:
iface wlan0 inet static
address 192.168.10.1
netmask 255.255.255.0
保存,退出
3、配置/etc/udhcpd.conf文件
设置 自动分配地址范围 dns 网关等
具体如下:(依据个人需要进行配置)
start 192.168.10.2 # This is the range of IPs that the hostspot will give to client devices.
end 192.168.10.200
interface wlan0 # The device uDHCP listens on.
remaining yes
opt dns 8.8.8.8 8.8.4.4 # The DNS servers client devices will use.
opt subnet 255.255.255.0
opt router 192.168.10.1 # The Pi‘s IP address on wlan0 which we will set up shortly.
opt lease 864000 # 10 day DHCP lease time in seconds
4、sudo vim /etc/default/hostpad
将
#DAEMON_CONF= "" 改为
DAEMON_CONF= "/etc/hostapd/hostapd.conf"
5、编辑/etc/hostapd/hostapd.conf
如下:
- # 把无线网卡wlan0 作为接入点
- interface=wlan0
- # 使用nl80211驱动
- driver=nl80211 (有的可能是rtl871xdrv,我的不行,提示“未知的”)
- #共享网络的SSID是RaspberryPi
- ssid=RaspberryPi(WiFi名)
- # 网卡工作在802.11G模式
- hw_mode=g
- #无线网卡选用11信道
- channel=11
- # WPA2 配置
- wpa=2
- #wpa密码是raspberry
- wpa_passphrase=raspberry(WiFi密码)
- #认证方式为WPA-PSK 加密方式为CCMP
- wpa_key_mgmt=WPA-PSK
- wpa_pairwise=CCMP
- rsn_pairwise=CCMP
- beacon_int=100
- auth_algs=3
- wmm_enabled=1
6、编辑 /etc /default/udhcpd
将 其注释掉
#DHCPD_ENABLED=no
7、配置路由转发
下一步就是让从无线网卡 wlan0 进来的数据 转发到 有线网卡 eth0上面 通过有线网卡连接网络接到互联网。
因为eth0是获取的动态ip,所以这里通过iptables来实现简单的路由转发。
输入命令
- sudo iptables -F
- sudo iptables -X
- sudo iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
- sudo bash
- iptables-save > /etc/iptables.up.rules
- exit
复制代码
输入命令
- sudo nano /etc/network/if-pre-up.d/iptables
复制代码
把下面两行复制粘贴到编辑窗口
- #!/bin/bash
- /sbin/iptables-restore < /etc/iptables.up.rules
复制代码
保存退出
输入命令
- sudo chmod 755 /etc/network/if-pre-up.d/iptables
复制代码
开启内核转发
输入命令
- sudo nano /etc/sysctl.conf
复制代码
找到这里
- # Uncomment the next line to enable packet forwarding for IPv4
- #net.ipv4.ip_forward=1
复制代码
去掉 net.ipv4.ip_forward 前面的#
保存退出
输入命令
- sudo sysctl -p
复制代码
8、将服务设置为开机自启模式
sudo update-rc.d hostapd enable
sudo update-rc.d udhcpd enable
之后,重启机器,使用手机手机应该能看到设置的WiFi,连接后,访问以下外网,看看是否可用