将派改为无线路由器

安装所需软件包

sudo apt-get install dnsmasq hostapd

配置无线网卡

编辑sudo vim /etc/dhcpcd.conf :

denyinterfaces wlan0

编辑sudo vim /etc/network/interfaces

allow-hotplug wlan0  
iface wlan0 inet static  
    address 172.24.1.1
    netmask 255.255.255.0
    network 172.24.1.0
    broadcast 172.24.1.255

配置hostapd

编辑sudo vim /etc/hostapd/hostapd.conf

interface=wlan0
driver=nl80211

# 设置无线网络名
ssid=raspberryAP

hw_mode=g

# 设置信道
channel=6
ieee80211n=1
wmm_enabled=1
ht_capab=[HT40][SHORT-GI-20][DSSS_CCK-40]
macaddr_acl=0
auth_algs=1

# 是否隐藏无线网络名
ignore_broadcast_ssid=0
# 使用WPA2
wpa=2
wpa_key_mgmt=WPA-PSK

# 设置无线网络的密码
wpa_passphrase=12345678
rsn_pairwise=CCMP

编辑sudo vim /etc/default/hostapd

DAEMON_CONF="/etc/hostapd/hostapd.conf"

配置DHCP服务

我们先备份下dnsmasq的原配置文件

sudo mv /etc/dnsmasq.conf /etc/dnsmasq.conf.bak

编辑sudo vim /etc/dnsmasq.conf

#使用网卡接口
interface=wlan0    
#监听地址
listen-address=172.24.1.1
#绑定接口
bind-interfaces
#dns服务器地址  
server=223.5.5.5
domain-needed
bogus-priv
#地址范围,从50-150、租用时间为12小时。
dhcp-range=172.24.1.50,172.24.1.150,12h

配置网络转发

首先我们来开启内核的IPv4包转发,编辑sudo vim /etc/sysctl.conf: 在最后一行添加

net.ipv4.ip_forward=1

然后执行sudo sysctl -p让其生效。

接下来,执行下面命令设置转发规则:

sudo iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
#下面两个是为了防止pi默认开启了防火墙,若无不执行也开。
sudo iptables -A FORWARD -i eth0 -o wlan0 -m state --state RELATED,ESTABLISHED -j ACCEPT  
sudo iptables -A FORWARD -i wlan0 -o eth0 -j ACCEPT

执行完上面命令后,我们要想开机就能够让其生效,还需要将其加入开机启动。我们编辑sudo vim /etc/rc.local

sudo iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
sudo iptables -A FORWARD -i eth0 -o wlan0 -m state --state RELATED,ESTABLISHED -j ACCEPT  
sudo iptables -A FORWARD -i wlan0 -o eth0 -j ACCEPT

exit 0

在exit 0 之上,将上面的命令加进去。

全部完成后,重启pi即可。