扫二维码与项目经理沟通
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流
树莓派怎样创建wifi热点,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。
创新互联从2013年开始,是专业互联网技术服务公司,拥有项目成都网站设计、成都网站建设网站策划,项目实施与项目整合能力。我们以让每一个梦想脱颖而出为使命,1280元利津做网站,已为上家服务,为利津各地企业和个人服务,联系电话:028-86922220
如果接上USB无线网卡,使用ifconfig命令,能直接看到wlan0,那么恭喜你,可以直接跳过这一步。
如果没有请查询一下树莓派支持的USB无线网卡型号,可参考以下网址:
http://elinux.org/RPi_VerifiedPeripherals#USB_Wi-Fi_Adapters
sudo vim /etc/network/interfaces
添加下面的:
allow-hotplug wlan0 iface wlan0 inet static address 10.10.10.1 netmask 255.255.255.0 gateway 10.10.10.1
完成之后需要重启
官方的hostapd不支持8188CUS,后面需要重新卸载安装新的
笔者测试貌似这里必须先装旧的,然后后面卸了装新的,否则也不能用
sudo apt-get install hostapd
1)编辑hostapd 默认配置文件:
sudo vim /etc/default/hostapd
找到#DAEMON_CONF= "",修改为:
DAEMON_CONF="/etc/hostapd/hostapd.conf"
2)然后编辑:
sudo vim /etc/hostapd/hostapd.conf
增加以下代码:
# Basic configuration interface=wlan0 ssid=RaspberryPi_Wifi channel=1 #bridge=br0 # WPA and WPA2 configuration macaddr_acl=0 auth_algs=1 ignore_broadcast_ssid=0 wpa=3 wpa_passphrase=12345678 wpa_key_mgmt=WPA-PSK wpa_pairwise=TKIP rsn_pairwise=CCMP # Hardware configuration driver=rtl871xdrv ieee80211n=1 hw_mode=g device_name=RTL8192CU manufacturer=Realtek
3)保存退出,然后重启服务:
sudo service hostapd restart # 或者 sudo hostapd -dd /etc/hostapd/hostapd.conf
4)如果你使用的网卡提示一下信息
Configuration file: /etc/hostapd/hostapd.conf
nl80211: 'nl80211' generic netlink not found
Failed to initialize driver 'nl80211'
rmdir[ctrl_interface]: No such file or directory
那么,还是要使用第三方的hostapd。
1)删除原来的hostapd
sudo apt-get autoremove hostapd
2)下载第三方驱动并安装
链接:http://share.weiyun.com/783e42c87ca22c458cebd2456b067de6 (密码:kZHA)注:如已失效,请在下面评论通知
tar -zxvf v1.1.tar.gz
3)编译:
cd RTL8188-hostapd-1.1/hostapd sudo make sudo make install
4)然后再重启服务,应该提示成功:
$ sudo service hostapd restart [ ok ] Stopping advanced IEEE 802.11 management: hostapd. [ ok ] Starting advanced IEEE 802.11 management: hostapd.
5)将hostapd加入开机自启动
sudo service hostapd start sudo update-rc.d hostapd enable
以上步骤建立起了wifi热点,但是无法自动获取ip,需要以下步骤
sudo apt-get install udhcpd
1)编辑配置文件:
sudo vim /etc/udhcpd.conf #修改以下信息,start和end是允许自动获取的起始和结束,注意跟第一步的静态ip在一个网段 start 10.10.10.10 end 10.10.10.100 interface wlan0
2)接下来编辑/etc/default/udhcpd并且将下面这行注释掉,以使DHCP Server正常工作:
#DHCPD_ENABLED="no"
3)启动dhcp服务器
sudo service udhcpd start sudo update-rc.d udhcpd enable
经过此步手机已经可以接入wifi网络,并且自动获取ip
理论上是经过这一步,手机可以通过共享树莓派的无线网络上网了,但是笔者一直没有成功
1)设置路由映射规则
sudo iptables -F sudo iptables -X 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 sudo bash -c iptables-save > /etc/iptables.up.rules
2)编辑:
sudo vim /etc/network/if-pre-up.d/iptables
添加下面两行代码:
#!/bin/bash /sbin/iptables-restore < /etc/iptables.up.rules
保存退出,然后修改iptables权限:
sudo chmod 755 /etc/network/if-pre-up.d/iptables
4)开起内核转发:
sudo vim /etc/sysctl.conf
找到下面两行:
#Uncomment the next line to enable packet forwarding for IPv4 #net.ipv4.ip_forward=1
把net.ipv4.ip_forward 前面的#去掉,保存退出。
然后:
sudo sysctl -p
如果wlan0无法设置ip, 将/etc/default/ifplugd的内容修改配置如下:
INTERFACES="eth0" HOTPLUG_INTERFACES="eth0" ARGS="-q -f -u0 -d10 -w -I" SUSPEND_ACTION="stop"
看完上述内容是否对您有帮助呢?如果还想对相关知识有进一步的了解或阅读更多相关文章,请关注创新互联行业资讯频道,感谢您对创新互联的支持。
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流