该功能主要用于搭建一个小型的的网络,使得连接至热点的各个设备可以进行通信,用于构建物联网系统(如智能家居)或是无线控制指定设备。另外这一网络也是独立的,并未启用NAT连接至互联网,具有一定的安全性也为研究提供了一定的便利。

目前已经有很多方案几乎可以一键实现此功能,例如RaspAP,它还提供一个很友好的热点管理界面。

但是在实际一键安装过程中总是会遇到很多问题,手动安装过程冗长而且忙活了半天输入了一堆不明白是干什么的指令,实在有些不值当,因此推荐以下的方法,易懂而且帮助你复习你的计算机网络知识。

原帖地址:

Setting up a Raspberry Pi 3 as an Access Point​learn.sparkfun.com

笔者使用树莓派3B自带无线网卡,安装官方raspbian操作系统。

在树莓派终端输入

ifconfig

即可查询树莓派的所有网络接口(interface)信息,若此时你的树莓派连接了网线或者连接了wifi,查询结果还会包括分配给这一接口的IP地址,该接口所连接网络的相关信息等。一般而言树莓派3B的网线接口(以太网)和无线网卡分别对应了eth0和wlan0这两个名称,若你使用了外接的USB无线网卡则需要自行对应相应的网络接口名称。

一、配置网卡

我们要把当前的网卡作为热点,则首先将该网卡禁用,让其停止作为接入其他热点的功能。在较新版本的raspbian中通过dhcpcd管理。

sudo nano /etc/dhcpcd.conf

nano为自带的文本编辑器,最大便利在于所见即所得,相比于vim更容易上手一些,nano的基本操作包括Ctrl+O写入,Ctrl+X退出,每次的编辑要写入后再退出

dhcpcd.conf即为树莓派dhcpcd的配置文件,在最后一行加上

denyinterfaces wlan0

即禁用了wlan0接口。

禁用之后该接口不再能接入其他热点,即不能通过其他热点dhcp功能获取到IP地址,因此需要手动给这一接口一个静态的IP地址

sudo nano /etc/network/interfaces

此次修改的文件是interfaces文件,在其中加入

allow-hotplug wlan0
iface wlan0 inet staticaddress 192.168.1.1netmask 255.255.255.0network 192.168.1.0broadcast 192.168.1.255

回想一下计算机网络的知识,192.168.xxx.xxx 是典型的私有IP地址,即拥有这样地址的IP数据报不会在互联网中传播(路由器会自动丢弃它),需要依靠NAT转发(不在本文讨论范围内)。此时配置的分别是wlan0接口的IP地址,AP所形成的网络的掩码、网络和广播IP。

二、AP配置

一个WIFI热点(Access Point)正常工作基本上要实现两部分的功能:

  • 实现接入管理
  • DHCP功能

接下来分别实现这两项功能

1、实现接入管理--配置hostap

接入管理中,最简单的,我们需要设置一个wifi的名字并且广播出去让其他设备可以查找到,我们需要设置密码让闲杂设备靠边......

hostap就是实现这一系列功能的程序,实际上几乎所有AP解决方案都绕不开这一相同的步骤(只是有时候它帮你完成了),下载hostap

sudo apt-get -y install hostapd

-y参数表示询问是均回答yes,如果下载缓慢或者无法连接,可移步清华tuna设置下载镜像。

修改(当文件不存在时则创建)hostap配置文件

sudo nano /etc/hostapd/hostapd.conf

输入以下信息

interface=wlan0
driver=nl80211
ssid=YourAPname
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
wpa=2
wpa_key_mgmt=WPA-PSK
wpa_passphrase=raspberry
rsn_pairwise=CCM

以上信息即为要创建热点的基本信息,包括使用的网络接口interface为wlan0,热点名称ssid,密码等,请根据需要修改ssid和wpa_passphrase,若加密方式选择了wpa2(wpa=2)则设置的密码至少为8位(目前你手机连接上网的wifi的密码一般也至少需要8位,意味着加密方式应当也是wpa2)。

之后需要向hostap指定它的配置文件位置(你不告诉我我怎么知道

sudo nano /etc/default/hostapd

文件中找到以下语句并修改

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

这里填入的就是上一步设置的配置文件的位置。

2、实现DHCP功能--配置dnsmasq

dhcp即为接入的新设备分配一个IP地址,这样才具有完整的网络通信功能。

实现dhcp的工具有很多,这里选用dnsmasq,其他工具的核心步骤是相同或者相似的。

下载dnsmasq并且修改配置文件,此时我们先备份原有的配置文件因为它里面有很多有用的信息,比如如何给设备分配静态IP地址,IP地址的租赁时长等等,在第三部分你将会看到。

sudo apt-get -y install dnsmasq
sudo mv /etc/dnsmasq.conf /etc/dnsmasq.conf.bak
sudo nano /etc/dnsmasq.conf

之后你可以配置dhcp的信息了

interface=wlan0
listen-address=192.168.1.1
bind-interfaces
server=8.8.8.8
domain-needed
bogus-priv
dhcp-range=192.168.1.100,192.168.1.200,24h

这里填入了我们给wlan0的静态IP地址,8.8.8.8是谷歌的默认DNS服务器地址(本文用不到),之后设置了分配给设备的IP地址范围192.168.1.100-192.168.1.200以及默认IP租赁时长24小时。

写入退出,重启你的树莓派,用你的电脑或者手机就可以搜索到你的wifi热点了。

三、测试以及更多功能

1、测试IP

我先用手机测试,我设置的ssid为pi_wifi

连接后查询手机的IP地址

这正是我们之前设置的dhcp分配ip的范围之内。

2、测试连接

你可能发现了上一部分我们热点上出现的无Internet的提示,接下来我们就测试设备之间是否连通,最简单的方法是利用Ping。

此时我的电脑连接了家里的wifi,则应当可以访问诸如百度知乎等网站。使用win+R打开命令提示符。

正常Ping通,之后,连接刚才树莓派创建的wifi

回忆我们之前给树莓派wlan0设置的IP地址为192.168.1.1

正常Ping通说明已经正确连接上了热点,但是再Ping百度网站的时候

此时我的手机、电脑和树莓派形成了一个微小而独立的网络,仅仅三者之间可以进行通信。使用NAT转发功能实现连接互联网的配置将在以后的专栏文章中展示。

3、dhcp更多功能--静态IP设置

如之前提到的,查看dnsmasq的配置文件备份可以获得更多功能的信息,这里我出于实验需要希望给固定的设备分配固定的IP地址(而不是在一个范围中选择)。标识主机我们使用的是IP地址,那么标识一个硬件设备我们需要的是它的物理地址(mac地址),它在硬件出厂时就由制造商给定了,一般来说如同IP地址一样是全球唯一的。

windows下命令行使用

ipconfig /all

查看你的mac地址

我在dnsmasq.conf文件中添加了我的电脑网卡的mac地址和我想设置的静态IP,具体格式请从配置文件备份dnsmasq.conf.bak中获取。完成后无论何时我使用电脑连接到树莓派的热点,分配给我的IP地址都会是相同的。


若有不足或不正确的地方敬请指正。

树莓派3 有线静态路由设置_配置树莓派为wifi热点(AP模式)相关推荐

  1. 树莓派3 有线静态路由设置_clash在树莓派

    clash: 上网软件,不多做介绍 主路由:openwrt 树莓派系统:archlinux 为什么是树莓派? 主路由性能太差,开着openclash wifi就各种断连 带宽跑不满,上树莓派后家里带宽 ...

  2. android wifi 静态地址设置_安卓手机连接wifi故障的6种常见解决方法

    现如今,人们已经离不开wifi的使用了,有了wifi,流量不够用什么的都是浮云.如果手机连接wifi出了问题怎么办?不要抓狂不要沮丧,六招让你手机wifi满血复活! 第一招:关闭并重启WIFI连接 用 ...

  3. 华为5720设置静态路由不通_静态路由理论知识详解

    一.简介 静态路由是一种需要管理员手工配置的特殊路由. 静态路由在不同网络环境中有不同的目的: 当网络结构比较简单时,只需配置静态路由就可以使网络正常工作. 在复杂网络环境中,配置静态路由可以改进网络 ...

  4. 路由器中的静态路由设置

    静态路由设置实例解析 随着宽带接入的普及,很多家庭和小企业都组建了局域网来共享宽带接入.而且随着局域网规模的扩大,很多地方都涉及到2台或以上路由器的应用.当一个局域网内存在2台以上的路由器时,由于其下 ...

  5. 静态路由特点及其配置

    许多人错误地认为静态路由很简单,就一个命令,没什么好学的.其实这是因为他们根本没有深入理解静态路由的工作原理,对于仅有一条静态路由配置命令中的各参数和选项的含义和使用方法也是一知半解,结果造成的是遇到 ...

  6. 静态路由设置实例解析

    静态路由设置实例解析 随着宽带接入的普及,很多家庭和小企业都组建了局域网来共享宽带接入.而且随着局域网规模的扩大,很多地方都涉及到2台或以上路由器的应用.当一个局域网内存在2台以上的路由器时,由于其下 ...

  7. 你所不了解的静态路由特点及配置

    以下内容摘自正在全面热销的最新网络设备图书"豪华四件套"之一<Cisco路由器配置与管理完全手册>(第二版)(其余三本分别是:<Cisco交换机配置与管理完全手册 ...

  8. 网络工程师必备——什么是静态路由?如何配置静态路由?

    一.静态路由功能介绍: 静态路由就是手工配置的路由,使得数据包能够按照预定的路径传送到指定的目标网络.当不能通过动态路由协议学到一些目标网络的路由时,配置静态路由就会显得十分重要 需要更多网工学习资料 ...

  9. 树莓派4b与Manjaro,安装、配置、修复WiFi频段5G和Country Code

    树莓派4b与Manjaro,安装.配置.修复WiFi频段5G和Country Code 安装Manjaro到树莓派4b 下载Manjaro 烧录系统到SD卡并启动 修复无线网络5G频段 更新软件仓库 ...

最新文章

  1. UIWebView保存网页中的图片(转载)
  2. CUDA error:invalid argument
  3. Spark详解(二):Spark完全分布式环境搭建
  4. 【网络安全】详细记录一道简单面试题的思路和方法
  5. mysql数据库复制基本原理_MySQL的复制原理以及流程
  6. delphi开发日志——基窗体,使用面向对象编程的编程思想创建基类
  7. 定义一个空切片_Python进阶:全面解读高级特性之切片
  8. 使用正则表达式的技巧
  9. class传参 python_Python 初学者必备的常用内置函数
  10. Enterprise Suse运维
  11. springboot~让我习惯了TDD的开发模式
  12. linux 指定库名 登录mysql_linux终端mysql用户操作只看这篇够了
  13. Vue(三)goods组件开发
  14. 原生 javascript 操作 websocket
  15. 得力人脸识别考勤机密码设置_得力人脸识别考勤机使用与上传数据方法哪位清楚?...
  16. CS入门学习笔记14-MIT 6.00.1x- Lecture 12 Object Oriented Programming (Class Generator
  17. java指定路径不存在_Java在指定路径上创建文件提示不存在解决方法
  18. 生物信息学之抗癌药物反应论文阅读三:ML+PDX
  19. Python+Turtle 魔法阵效果(简陋)
  20. matlab音乐合成卡农,神马FL神马Cubase都弱爆了!【matlab】弹凑卡农

热门文章

  1. 系统SDK介绍-02
  2. HTML 5 应用程序缓存
  3. “阿里巴巴大数据系统体系”学习笔记-纲领篇
  4. opensuse-KDE桌面下自定义快捷键,ctrl+alt+t打开konsole
  5. Linux 交换空间管理和技巧
  6. c++成员函数的调用
  7. C# 函数覆盖总结学习
  8. 转: java并发编程-Executor框架
  9. CentOS 4.6 中 yum 的使用
  10. 我要回家软件_这个中秋节,我也要回家