通过树莓派上网,详细步骤制作Wifi热点

把树莓派打造成wifi热点是扩展Wi-Fi覆盖范围,提供额外接入网络的好方法。Raspberry-Pi-WiFi-Access-Point-VPN-v3.jpg

在本教程中,我将展示如何用树莓派搭建一个wifi热点,让用户像连接路由器本身一样连接到热点。

USB Wi-Fi的网速有限,不要对网速有太大期待。应该避免让太多的连接到设备上,这样体验会好一些。

这个教程将直接使用包含Wi-Fi模块的Raspberry Pi 3进行配置。如果使用的是Raspberry Pi的早期型号,可以从众多网站上购买一个支持作为接入点使用的Wi-Fi适配器,在购买前要问清楚,以保证USB的wifi能在Raspberry Pi上工作。

本教程可以和VPN接入点的教程很好地结合起来。 VPN接入点教程展示了如何配置一个OpenVPN客户端,并通过该客户端重定向所有流量。

设备清单

下面是我在这个教程中使用的所有设备,没有什么特别的东西。

建议:

可选:

设置无线接入点

和我做的大多数教程一样,这个教程只是使用了一个干净的Raspbian版本,已经更新到了最新的包。

为了设置Raspberry Pi无线接入点,需要使用两个软件包。hostapd是利用Wi-Fi设备作为热点的软件包,在我的例子中,我会利用它把Raspberry Pi 3的Wi-Fi变成热点。

dnsmasq既是DHCP又是DNS服务器,这样就可以通过Raspberry Pi本身分配IP地址和处理DNS请求。

幸运的是,dnsmasq很容易设置和配置。它还有一个好处,就是与isc-dhcp-server和bind9包相比,它是比较轻量级的。

请记住,需要使用以太网网络连接,而不是Wi-Fi连接。

1. 在开始安装和设置软件包之前,首先通过运行以下两个命令在Raspberry Pi上运行更新。

sudo apt-get update
sudo apt-get upgrade

2. 做好了这些,现在就可以安装两个包了,运行下面的命令来安装hostapd和dnsmasq。

sudo apt-get install hostapd dnsmasq

3. 现在已经安装了软件包,但还不想让它们运行,因为还没有正确配置它们。

通过在终端中使用以下两个命令来停止软件包的运行。这些命令将告诉系统管理员停止dnsmasq和hostapd服务。

sudo systemctl stop hostapd
sudo systemctl stop dnsmasq

4. 在hostapd和dnsmasq停止后,要修改dhcpd配置,这样就可以控制wlan0接口了。

有了这个文件,就可以给自己设置一个静态的IP地址,同时告诉它不要使用wpa_supplicant文件,这样就可以只将它配置为设备的接入点。

在Raspberry Pi上运行以下命令开始修改dhcpcd.conf文件。

sudo nano /etc/dhcpcd.conf

5. 在这个文件中,需要在底部添加以下一行,把wlan0接口设置成我们想要的方式。

如果已经升级到Raspbian Stretch,wlan0可能需要更改,如果你使用的是Raspberry Pi 3或Pi Zero W的内置wifi,你可以继续使用wlan0。使用ifconfig命令查看新的名称,它们可能很长。你需要在本教程中更新任何对新值的引用。

interface wlan0
    static ip_address=192.168.220.1/24
    nohook wpa_supplicant

现在可以通过按Ctrl +X然后按Y然后按Enter键保存并退出文件。

6. 现在重新启动dhcpd服务,这样它就会加载所有的配置更改。要做到这一点,运行以下命令来重新加载dhcpd服务。

sudo systemctl restart dhcpcd

7. 接下来,需要调整hostapd配置,要做到这一点,需要用以下命令开始编辑配置文件。

sudo nano /etc/hostapd/hostapd.conf

8. 在这个文件中,需要写出以下几行,这些基本上是设置如何与wlan设备交互。在这个文件中,唯一需要担心的是ssid=行和wpa_assphrase=行。

作为一般的经验法则,应该尽量让你的WPA密码口令长于6个字符,以帮助保持你的连接安全。

注意:如果使用不同的Wi-Fi设备来做这个教程,然后使用内置的Pi 3,你可能还需要将driver=行改为你的设备的最佳驱动,谷歌将是你的朋友,可以帮助你找出最好的驱动。

interface=wlan0
driver=nl80211

hw_mode=g
channel=6
ieee80211n=1
wmm_enabled=0
macaddr_acl=0
ignore_broadcast_ssid=0

auth_algs=1
wpa=2
wpa_key_mgmt=WPA-PSK
wpa_pairwise=TKIP
rsn_pairwise=CCMP

# This is the name of the network
ssid=Pi3-AP
# The network passphrase
wpa_passphrase=pimylifeup

记得把wpa_assphrase改成自己的密码,一定要设置成安全的密码,这样其他人就不能随便连接到你的Wi-Fi接入点。

现在可以通过按Ctrl +X然后按Y然后按Enter键保存并退出文件。

9. 做完这些,现在应该有了hostapd配置,但是在使用之前,需要编辑两个文件。这两个文件是 hostapd 将会读取新配置文件的文件。

要开始编辑这两个文件中的第一个文件,请运行以下命令。

sudo nano /etc/default/hostapd

10. 在该文件中,我们需要找到以下一行并将其替换。

找。

#DAEMON_CONF="" 

替换为:

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

现在可以按Ctrl +X然后按Y然后按Enter键保存并退出文件。

11. 现在需要编辑第二个配置文件,这个文件位于init.d文件夹内。可以用下面的命令来编辑这个文件。

sudo nano /etc/init.d/hostapd

12. 在该文件中,需要找到以下一行并将其替换:

找。

DAEMON_CONF= 

替换为:

DAEMON_CONF=/etc/hostapd/hostapd.conf

现在可以按Ctrl +X然后按Y然后按Enter键保存并退出文件。

13. hostapd已经设置完毕,需要继续设置dnsmasq。在开始编辑配置文件之前,重命名当前的配置文件,因为不需要它当前的任何配置。

可以在Raspberry Pi上使用以下命令来实现。

sudo mv /etc/dnsmasq.conf /etc/dnsmasq.conf.orig

14. 现在原始配置文件已经被重新命名,我们可以开始创建我们自己的新配置文件。我们将使用以下命令创建和编辑新文件。

sudo nano /etc/dnsmasq.conf

15. 在该文件中增加以下几行:

这些行告诉dnsmasq服务如何处理所有通过的连接,以及它应该为哪些接口处理这些连接。

interface=wlan0       # Use interface wlan0  
server=1.1.1.1       # Use Cloudflare DNS  
dhcp-range=192.168.220.50,192.168.220.150,12h # IP range and lease time  

现在可以通过按Ctrl + X然后按Y然后按Enter键保存并退出文件。

16. 接下来,需要配置你的Raspberry Pi,让它将所有的流量从wlan0连接转发到以太网连接。

通过sysctl.conf配置文件来启用它,用下面的命令开始编辑它。

sudo nano /etc/sysctl.conf

17. 在这个文件中,你需要找到以下一行,并将开头的#去掉。

找。

#net.ipv4.ip_forward=1

替换为:

net.ipv4.ip_forward=1

18. 现在,我不想等待下次启动时启用,可以运行下面的命令来立即激活它。

sudo sh -c "echo 1 > /proc/sys/net/ipv4/ip_forward"

19. 启用IPv4转发后,可以在wlan0接口和eth0接口之间配置一个NAT。这将把所有的流量从我们的接入点转发到我们的以太网连接上。

运行以下命令将新规则添加到iptable中。

sudo iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE

20. iptable在每次启动Raspberry Pi时都会被刷新,所以需要将新规则保存在某个地方,以便在每次启动时都能加载回来。

要保存新规则集,运行以下命令。

sudo sh -c "iptables-save > /etc/iptables.ipv4.nat"

21. 现在,新规则已经安全地保存在某个地方,需要让这个文件在每次重启时重新加载进来。最简单的方法是修改rc.local文件。

运行以下命令开始编辑文件。

sudo nano /etc/rc.local

22. 在这个文件中,需要添加下面一行。确保这行出现在 exit 0 的上方。这一行基本上是从iptables.ipv4.nat文件中读取设置,并将它们加载到iptables中。

找。

exit 0

在 “0号出口 “上面加上。

iptables-restore < /etc/iptables.ipv4.nat

现在我们可以通过按Ctrl +X然后按Y然后按Enter键保存并退出文件。

23. 最后,需要做的就是启动这两个服务,并在systemctl中启用它们。运行以下两个命令。

sudo systemctl unmask hostapd
sudo systemctl enable hostapd
sudo systemctl start hostapd
sudo service dnsmasq start

24. 现在,您应该终于有了一个完全可操作的Raspberry Pi无线接入点,可以通过使用您的任何无线设备,并使用教程中早先设置的SSID和WPA密码口令连接到您的新接入点来确保其工作。

为了确保一切都能顺利运行,最好现在就尝试重新启动。这将确保当Raspberry Pi重新启动时,一切都会成功重新启用。运行以下命令重新启动Raspberry Pi。

sudo reboot

这是树莓派的又一个好玩的项目,它可以被扩展为一个非常有用的工具。正如我上面提到的,你可以把它做成一个WiFi接入节点,在这里你可以通过VPN来路由所有的互联网流量。

希望这篇Raspberry Pi wifi热点的教程能够帮助到你。如果你遇到任何问题或有一些与本教程相关的反馈,那么请不要犹豫,在下面留言。

平均: 0 / 5. votes: 0

到目前为止还没有投票!成为第一位评论此文章。

欢迎转载,请留下出处链接:Labno3 » 通过树莓派上网,详细步骤制作Wifi热点

赞 (2)

评论

9+7=