美文网首页树莓派3333
树莓派Pi3设置wifi热点

树莓派Pi3设置wifi热点

作者: xaiolos | 来源:发表于2017-02-12 10:27 被阅读11311次

        年前换了部手机还是iphone的,但是几年过去了,google邮箱,digg reader的google账号没法直接登陆啦,捂脸。翻墙要越狱,想简单点拿台笔记本修改个hosts再开个热点就可以啦,郁闷的是用的macbook air没有有线插口开不了wifi热点,再捂脸。只能打起树莓派的注意。系统啥的就不说了,直接正题:

一、安装hostapd和dnsmasq软件包

天天干着linux上的路由系统,居然没接触到这两个软件,可见打杂功底至深,有空研究研究吧。照例先装着:

sudo apt-get install dnsmasq hostapd

hostapd 是 Host Access Point 守护进程,提供对基于 Linux 的无线接入点的强 WPA2 加密和身份验证。配置 hostapd 非常简单,它支持 WPA2-Personal 和 Enterprise,提供了对 WPA2-Personal 的独特修改,可让管理它变得更复杂或更简单。

dnsmasq是一个小巧且方便地用于配置DNS和DHCP的工具,适用于小型网络,它提供了DNS功能和可选择的DHCP功能。主用适用于NAT的家庭网络,用modem,cable modem,ADSL设备连接到因特网。

二、接口配置

将无线接口wlan0的IP配置成静态地址。以太网接口eth0默认DHCP配置并接入因特网。在树莓派系统中,默认是DHCPCD配置网络接口。所以要告诉系统我们给wlan0分配静态IP地址,操作是打开配置文件并增加配置参数指令。

sudo nano /etc/dhcpcd.conf

interface wlan0

static ip_address=192.168.0.1/24

为了防止wpa_supplicant运行和干扰设定wlan0为接入点模式。需要打开接口配置文件,在wlan0段落中注释掉wpa-conf这行

sudo nano /etc/network/interfaces

allow-hotplug wlan0

iface wlan0 inet manual

#    wpa-conf /etc/wpa_supplicant/wpa_supplicant.conf

执行完后还要重启dhcpcd服务,系统将会给wlan0接口分配一个静态IP,树莓派也需要重启,因为只有重启后才生效。

sudo service dhcpcd restart

sudo reboot

三、 配置HOSTAPD

创建一个新的文件配置HOSTAPD

sudo nano /etc/hostapd/hostapd.conf

内容如下

interface=wlan0

driver=nl80211

ssid=pipi

hw_mode=g

channel=6

wmm_enabled=1

macaddr_acl=0

auth_algs=1

ignore_broadcast_ssid=0

wpa=2

wpa_passphrase=12345678

wpa_key_mgmt=WPA-PSK

rsn_pairwise=CCMP

其中

interface=wlan0,指定网卡名称为wlan0。

wpa=2,采用WPA2加密方式。

ssid=pipi为热点名称,可根据实际情况修改。

wpa_passphrase=12345678为热点密码,可根据实际情况修改,如果采用WPA2加密方式,密码的长度应该不少于8个字符。

接下来检查是否配置成功,如果出现AP-ENABLED并且客户端能搜索到SSID,表示AP模式已启用成功。如果有报错,说明驱动和hostapd配置没有正确设置。

sudo /usr/sbin/hostapd /etc/hostapd/hostapd.conf

为了能让系统每次启动都自动加载AP模式下的配置,我们需要配置hostapd为自启动模式。打开默认配置文件,找到#DAEMON_CONF=””,将前面的#号去掉,

sudo nano /etc/default/hostapd

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

手机测试连接ap正常。

四、配置DNSMASQ

为了实现上网功能,需要对DNSMASQ服务进行配置,首先备份一下系统默认的文件,然后创建一个新的配置文件。

sudo mv /etc/dnsmasq.conf/etc/bak_dnsmasq.conf

sudo nano /etc/dnsmasq.conf

具体的配置信息如下所示:DNS请求服务器地址这里要配置成本地上网的DNS地址,否则可能解析错误。

interface=wlan0

bind-interfaces

server=218.2.2.2

server=114.114.114.114

server=8.8.8.8

domain-needed

bogus-priv

dhcp-range=192.168.1.2,192.168.1.254,12h

五、设置IPV4转发

打开系统配置文件sysctl.conf,将IPV4转发那一行的#去掉

sudo nano /etc/sysctl.conf

# Uncomment the next two lines toenable Spoof protection (reverse-path filter)

# Turn on Source AddressVerification in all interfaces to

# prevent some spoofing attacks

#net.ipv4.conf.default.rp_filter=1

#net.ipv4.conf.all.rp_filter=1

# Uncomment the next line toenable TCP/IP SYN cookies

# Note: This may impact IPv6 TCPsessions too

#net.ipv4.tcp_syncookies=1

# Uncomment the next line toenable packet forwarding for IPv4

net.ipv4.ip_forward=1

下一次重启后会生效,如果不想现在重启,可以直接输入如下指令直接生效。

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

为了实现PI3以太网接口共享给wlan0上网,需要配置NAT,需先执行如下防火墙命令

sudo iptables -t nat -APOSTROUTING -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

当然,为了不每次都手动配置,需要将以上规则设为自启动。

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

通过获取DHCPCD来运行NAT需要创建一个新文件

sudo nano/lib/dhcpcd/dhcpcd-hooks/70-ipv4-nat

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

最后需要重启服务:

sudo service hostapdstart

sudo service dnsmasq start

sudo reboot

当然树莓派还是要拿来连wifi上网,上述iptbales设为自启动还没有尝试,只是开机后下了三条iptables命令,测试OK啦。修改了linux下etc/hosts,手机连上登陆gmail,google账号一切正常。😄

参考:

PI3体验之无线网AP模式设定及热点分享

http://bbs.elecfans.com/forum.php?mod=viewthread&tid=605803&extra=page=5&mobile=2

相关文章

  • 树莓派Pi3设置wifi热点

    年前换了部手机还是iphone的,但是几年过去了,google邮箱,digg reader的google账...

  • 我的Raspberry Pi 3B连接之旅(二)

    Step Two 树莓派开机自动连接WiFi 参考帖子:树莓派 Raspberry Pi 设置无线上网 树莓派3B...

  • 树莓派与笔记本直接通过wifi(无线)直接连接

    所需环境: 一台可以开启wifi热点的笔记本,树莓派 开启电脑热点后,树莓派连接电脑的热点就可以直接登...

  • 树莓派 WIFI 热点

    1. 安装配置DNSmasq DNSmasq是一个小巧且方便地用于配置DNS和DHCP的工具,适用于小型网络,它提...

  • 树莓派

    1.设置静态IP 确认端口设置IP、掩码、路由和DNS 最后执行 2.设置wifi 设置树莓派的wifi连接 最后执行

  • 树莓派设置wifi

    树莓派官方系统直接输入,图形化设置,忽略后面 输入下列命令,安装wifi模块 reboot #重启

  • 树莓派-设置wifi

    首先检查是否具有wifi功能 查看是否具有 wlan0 信息如果没有就要购买外接设备 然后配置wifi账户密码 写...

  • 树莓派 WIFI 热点 AP

    参考:https://zhuanlan.zhihu.com/p/101089893[https://zhuanla...

  • 树莓派基础设置-连接WIFI

    1:树莓派连接wifi 树莓派刚开始烧录好系统时无法直接连接WIFI,因为树莓派官方系统默认的地区和时区是英国,因...

  • 如何将树莓派设置为WiFi热点

    折腾让树莓派作为 WiFi 热点,搞了几套不同的方案。最后结论是方案三直接安装 Mate 固件更简单些。但我偏要先...

网友评论

  • 9ee09014351b:请问出现了
    Failed to create interface mon.wlan0: -95 (Operation not supported)
    wlan0: Could not connect to kernel driver
    这个驱动错误,要怎么办
  • dceecc979eaa:感谢,参考您的步骤,热点可以开启,然后找了其他的文章配置了ss+redsocks+iptables,国内网站能访问,并且访问ip.cn也显示在墙外,但是就是google,youtube等打不开,请问楼主有解决办法么
    dceecc979eaa:@guojiakun 配置好了,shadowsocks-lib+chinadns+iptables
    3b44b1bfe0e8:可以考虑一下openwrt,不过有点麻烦:stuck_out_tongue_closed_eyes:
  • 3b44b1bfe0e8:修改完net.ipv4.ip_forward=1 后 在命令行输入sysctl -p 直接生效
    xaiolos:@guojiakun :+1:
  • shiyongsway:大神,为啥我的都成功了,手机也可以获取Ip,路由也建立了,但是无法上网
    shiyongsway:@xaiolos 能呀,现在拔掉网线之后,就可以ping通树莓派的网关,设置好路由转发就不行了。跪求大佬!!
    xaiolos:@shiyongsway 树莓派本身能上网吗?
  • shiyongsway:大神,为啥我的是手机可以获取IP,但是没法上网呢??是不是路由规则不对??
  • be6e36631fef:您好 感谢分享 请问 在重启dnsmasq服务后跳出
    Job for dnsmasq.service faild becase the control process exited error code
    See "systemctl status dnsmasq.service" and "journalctl -xe" for details是怎么回事?
  • cc42ee93f6b1:dhcp-range=192.168.1.2,192.168.1.254,12h
    应该更改成下面这样:
    dhcp-range=192.168.0.2,192.168.0.254,12h
    因为前面地址:
    interface wlan0
    static ip_address=192.168.0.1/24
    要不然手机啥的连不上这个逼格满格的pipi WiFi:smiley:
  • 额外变化:感谢分享
  • 56ad2affbb2e:您好,问一下,
    通过获取DHCPCD来运行NAT需要创建一个新文件

    sudo nano/lib/dhcpcd/dhcpcd-hooks/70-ipv4-nat

    iptables-restore</etc/iptables.ipv4.nat
    这一部总是提示command not found是怎么回事呢?谢谢
    oldfool:您好,我按照您的提示设置之后,手机应该是可以连接上WIFI了,但显示“无互联网连接”,猜测可能是PI3的有线网络无法共享给WIFI上网,请问您有遇到类似的问题吗?
    56ad2affbb2e:最后的 dnsmasq的服务也没办法start...
    显示:Job for dnsmasq.service failed. See 'systemctl status dnsmasq.service' and 'journalctl -xn' for details.
    xaiolos:@kingslandings iptables-restore找不到?
  • facdc5fb24a4:感谢分享,但是我操作过程出现了一点问题,留下qq1373681053求解决
    xaiolos:@冚_795d dhcp进程还在吗?
    7c1cc7246923:楼主,我只想把树莓派开个热点,当成局域网用,但是,我操作完后,发现ip无法获取,连接失败,请问是什么地方出问题了
    xaiolos:@只为你_0d7a 什么问题?

本文标题:树莓派Pi3设置wifi热点

本文链接:https://www.haomeiwen.com/subject/ttmoittx.html