首页 > 其他分享 >树莓派开机自启动热点(使用有线eth0上网,使用wlan0进行热点)

树莓派开机自启动热点(使用有线eth0上网,使用wlan0进行热点)

时间:2024-11-08 17:00:07浏览次数:4  
标签:树莓 hostapd sudo etc systemctl dnsmasq wlan0 自启动 热点

一、背景内容

其实就是接了一单,有人需要我帮忙配置一下树莓派开机启动热点。这边做个记录,该方式树莓派4B、3B都可以使用。

二、实际操作

1、使用网线连接路由器和树莓派

树莓派的网络接口一共有三个,分别是:

  • eth0:有线网络接口(以太网接口)
  • wlan0:无线网络接口(WiFi接口)
  • lo:本地回环接口(用于本地通信,localhost:127.0.0.1)

由于需要配置热点,所以需要对wlan0进行配置,故其WiFi功能需要被关闭,这里使用eth0进行网络的连接,其已经默认配置为通过DHCP来自动获取IP地址。连上网线之后通过

ifconfig

查看eth0是否有固定的IP地址,用于判断网络是否连接。
image

2、关闭wlan0的网络连接

终端输入:

ip route

可以看到:
image
说明我的设备通过eth0和wlan0连接到了网络,第一点已经提到了需要用到wlan0来开启热点,故这里需要断开wlan0的wifi连接功能再进行配置。
终端输入:

sudo nano /etc/wpa_supplicant/wpa_supplicant.conf

删除里面的全部内容,然后保存退出重启服务,一键三连~~~

3、树莓派换源

因为后续需要使用apt install来安装Linux软件包,请确保自己的树莓派的apt源是没问题的。这里不过多展开,后续会添加一些其他链接。

4、hostapd

hostapd可以将设备的无线网络接口配置为热点模式,使其成为一个软AP,接受其他设备的连接。

(1)安装且停止服务

终端输入指令进行安装:

sudo apt install hostapd

停止hostapd的服务:

sudo systemctl stop hostapd

(2)热点参数的配置

终端输入:(如果没用这个文件,在这个路径下新建一个即可)

sudo nano /etc/hostapd/hostapd.conf

填入:

interface=wlan0
driver=nl80211
ssid=???
hw_mode=g
channel=7
wmm_enabled=0
macaddr_acl=0
auth_algs=1
ignore_broadcast_ssid=0
wpa=2
wpa_passphrase=???
wpa_key_mgmt=WPA-PSK
wpa_pairwise=TKIP
rsn_pairwise=CCMP

ssid是热点名称;wpa_passphrase是热点密码,根据需要修改。
填完之后如图:
image

(3)给hostapd指定热点配置文件的路径

终端输入:

sudo nano /etc/default/hostapd

去掉DAEMON_CONF的注释,并配置成/etc/hostapd/hostapd.conf,如图所示。意思就是告诉hostapd要从/etc/hostapd/hostapd.conf读取配置参数。具体如图:
image
最后重启hostapd服务,终端输入:

sudo systemctl unmask hostapd
sudo systemctl enable hostapd
sudo systemctl start hostapd

稍等就可以看到产生的热点信号了。但是此时热点无法连接,因为此热点信号没有连接网络,也无法给客户端分配IP。
image

5、dhcpcd

dhcpcd是用于进行IP地址相关操作的软件包,这里我们用这个软件包来进行热点IP地址的固定。
终端输入指令进行安装:

(1)安装dhcpcd

sudo apt install dhcpcd

(2)编辑配置文件

编辑dhcpcd配置文件,终端输入:

sudo nano /etc/dhcpcd.conf

删除当中的全部内容,然后输入:

interface wlan0
    static ip_address=192.168.4.1/24
    nohook wpa_supplicant

这里设置的static ip_address最好不要和你周围的无线网络在同一个网段,比如你家无线网络的网段是192.168.2.X,那么这里的静态IP的第三位就设置成其他的就好

保存好之后,重启dhcpcd 服务,终端输入:

sudo systemctl restart dhcpcd

(3)检查

之后检查wlan0的IP地址,终端输入

ifconfig

可以看到IP地址被固定了,如图:
image

6、dnsmasq

dnsmasq软件包用于给连接热带的设备自动分配IP地址

(1)安装dnsmasq

终端输入:

sudo apt install dnsmasq

停止其服务:

sudo systemctl stop dnsmasq

(2)配置参数

终端输入:

sudo nano /etc/dnsmasq.conf

删除其全部内容,填入:

interface=wlan0
dhcp-range=192.168.4.2,192.168.4.20,255.255.255.0,24h

含义:dhcp 服务会给客户端分配 192.168.4.2 到 192.168.4.20 的 IP 空间,24 小时租期。
如图:
image
之后重启服务。终端输入:

sudo systemctl reload dnsmasq

如果报错了,就执行如下指令:

sudo systemctl unmask dnsmasq
sudo systemctl enable dnsmasq
sudo systemctl start dnsmasq

(3)尝试连接热点

服务重启之后,热点就可以连接了。因为树莓派给连接热点的设备分配了IP。不过此时还无法上网。
image

7、启用IP转发

终端输入:

sudo nano /etc/sysctl.conf

找到并且取消注释以下行:

net.ipv4.ip_forward=1

如图:
image

8、配置树莓派防火墙

终端输入:

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

之后保存防火墙规则:

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

之后让设备每次重启都重载这个防火墙规则:

sudo nano /etc/rc.local

将iptables-restore < /etc/iptables.ipv4.nat加到最后一行exit 0的前面,如图:
image

9、重启设备,enjoy yourself~

重启全部服务:

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

重启设备:

sudo reboot

标签:树莓,hostapd,sudo,etc,systemctl,dnsmasq,wlan0,自启动,热点
From: https://www.cnblogs.com/Vsonic12138/p/18535290

相关文章

  • 树莓派创建开机自启动任务
    一、编写需要开机启动的后台任务毕竟为了醋才能包饺子嘛~简单写一个输出x.hello的demo用于测试后续的配置是否成功。importtime#文件路径file_path="/home/pi/Desktop/output.txt"#根据具体情况修改defwrite_hello():count=1try:whileTru......
  • 树莓派建站
    使用树莓派作为服务器托管你的应用或网站是一个有趣且实用的项目。借助树莓派的低功耗和小尺寸,你可以轻松地在家中搭建一个轻量级的服务器。以下是如何使用树莓派搭建服务器和结合CloudflareTunnel的步骤:1.准备树莓派安装操作系统:使用RaspberryPiImager或其他工具将树......
  • 基于springboot框架在线生鲜商城推荐系统 java实现个性化生鲜/农产品购物商城推荐网站
    基于springboot框架在线生鲜商城推荐系统java实现个性化生鲜/农产品购物商城推荐网站爬虫、数据分析、排行榜基于协同过滤算法推荐、基于流行度热点推荐、平均加权混合推荐机器学习、大数据、深度学习OnlineShopRecommendEx一、项目简介1、开发工具和使用技术IDEA,jdk......
  • 基于django框架开发在线书店推荐系统 python实现个性化网上书店/图书购物商城推荐网站
    基于django框架开发在线书店推荐系统python实现个性化网上书店/图书购物商城推荐网站爬虫、兴趣标签、排行榜标签推荐、热点推荐、协同过滤算法推荐大数据深度学习机器学习人工智能WebBookShopRecPy一、项目简介1、开发工具和使用技术Pycharm、Python3及以上版本,D......
  • 基于django框架开发在线美食推荐系统 python实现个性化美食食谱推荐系统 爬虫、排行榜
    基于django框架开发在线美食推荐系统python实现个性化美食食谱推荐系统爬虫、排行榜、可视化数据分析基于流行度热点推荐、基于用户/物品协同过滤算法推荐、平均加权混合推荐大数据深度学习机器学习OnlineFoodRecommendPy一、项目简介1、开发工具和使用技术Pycharm......
  • 开源的 API 学习平台「GitHub 热点速览」
    前有5万颗星标的开源项目HTTPie因误操作导致Star清零(2022年),上周知名开源项目Elasticsearch也经历了Star一夜清零的事件。这些事故的原因均是管理员误将开源项目从公开状态转为私有状态所导致。为避免类似事件再次发生,GitHub已在转为私有的功能处增加了两次确认步骤,并......
  • 上周热点回顾(10.28-11.3)
    热点随笔:· C#13(.Net9)中的新特性-半自动属性 (Rwing)· 赠送天翼云电脑,解决一点园子的商业化烦恼 (博客园团队)· 全中国有多少公网IP地址? (轩辕之风)· 6年30kstar,这个明星项目停止更新! (程序员鱼皮)· .NET8.0开源在线考试系统(支持移动端) (小码编匠)· ......
  • 树莓派开发相关知识六 -串口通讯
    1、uart串口通信uart串口通信协议,使用txd,rxd双引脚实行异步数据传输,其中txd为传输口,rxd为接收口。其协议如上图,由起始位+有效数据位+奇偶校验位(*可选),停止位(*宽度可调),空闲位组成,即根据uart协议,当我们需要发送如01010101这8位有效数据时,我们应该让txd引脚成010101010(LSB......
  • 华为OD机试-(E卷,100分) - 热点网站统计(Java & Python& JS & C++ & C )
    最新华为OD机试题目描述企业路由器的统计页面,有一个功能需要动态统计公司访问最多的网页URLtopN。请设计一个算法,可以高效动态统计TopN的页面。输入描述每一行都是一个URL或一个数字,如果是URL,代表一段时间内的网页访问;如果是一个数字N,代表本次需要输出的TopN个URL......
  • 基于django的在线购物商城推荐系统 python个性化购物商城推荐系统的设计与开发 爬虫
    基于django的在线购物商城推荐系统python个性化购物商城推荐系统的设计与开发爬虫排行榜可视化数据基于流行度的热点推荐平均加权混合推荐协同过滤推荐大数据机器学习深度学习OnlineShopRecommendPy一、项目简介1、开发工具和使用技术Pycharm、Python3及以上版......