树莓派做AP发射wifi(RTL8188CUS芯片)

最近在做一个项目,需要用树莓派作为AP发射wifi,对比cubieboard,树莓派的配置容易得多,而且支持也更多。

较为官方的介绍配置为无线热点的文章莫过于这一篇《RPI-Wireless-Hotspot》

按照这个设置,我的其实不成功,于是找到这篇文章《Turn
Your Raspberry Pi Into a WiFi Hotspot with Edimax Nano USB EW-7811Un (RTL8188CUS chipset)》

下面是我配置的过程,主要是hostapd加桥接的方式:

1,安装hostapd

sudo apt-get install hostapd

hostapd实现的是无线共享,但需要注意的是官方提供的程序不兼容RTL8188CUS芯片的无线网卡,不过Edimax团队为我们专门编译了兼容的版本,下面的操作需要替换hostapd为兼容版本。

wget http://www.daveconroy.com/wp3/wp-content/uploads/2013/07/hostapd.zip
   unzip hostapd.zip
   sudo mv /usr/sbin/hostapd /usr/sbin/hostapd.bak
   sudo mv hostapd /usr/sbin/hostapd.edimax
   sudo ln -sf /usr/sbin/hostapd.edimax /usr/sbin/hostapd
   sudo chown root.root /usr/sbin/hostapd
   sudo chmod 755 /usr/sbin/hostapd

接下来有两种方式搭建你的AP,一种是通过桥接的方式设置,类似交换机,另一种是路由的方式。

2,桥接的方式实现。

首先要安装桥接的软件

sudo apt-get install bridge-utils

然后配置网卡:

sudo vim /etc/network/interfaces

最后的配置文件如下:

auto lo

iface lo inet loopback
iface eth0 inet dhcp

#allow-hotplug wlan0
#iface wlan0 inet manual
#wpa-roam /etc/wpa_supplicant/wpa_supplicant.conf
#iface default inet dhcp

#bridge
auto br0
iface br0 inet dhcp
bridge_ports eth0 wlan0

然后配置hostapd:

sudo <span style="font-family:Microsoft YaHei;">vim</span> /etc/hostapd/hostapd.conf

配置如下:

interface=wlan0
driver=rtl871xdrv
bridge=br0
ssid=My_SSID_Name
channel=1
wmm_enabled=0
wpa=1
wpa_passphrase=MYPASSWORD
wpa_key_mgmt=WPA-PSK
wpa_pairwise=TKIP
rsn_pairwise=CCMP
auth_algs=1
macaddr_acl=0

然后重启树莓派,就可以测试是否成功了。

sudo reboot

重启完成后,测试是否成功:

sudo hostapd /etc/hostapd/hostapd.conf 

应该是可以搜索到你的wifi并且正常上网的,这时候树莓派的ip地址就是你的br0的ip地址,查询使用ifconfig。

3,路由的方式实现

首先要安装DHCP软件,用来动态分配ip给你的设备。

sudo apt-get install udhcpd

配置udhcpd,编辑/etc/udhcpd.conf,主要内容如下:

start 192.168.42.2 # This is the range of IPs that the hostspot will give to client devices.
end 192.168.42.20
interface wlan0 # The device uDHCP listens on.
remaining yes
opt dns 8.8.8.8 4.2.2.2 # The DNS servers client devices will use.
opt subnet 255.255.255.0
opt router 192.168.42.1 # The Pi's IP address on wlan0 which we will set up shortly.
opt lease 864000 # 10 day DHCP lease time in seconds

接下来编辑/etc/default/udhcpd并且将下面这行注释掉,以使DHCP
Server正常工作:

#DHCPD_ENABLED="no"

配置无线网卡:

修改interfaces文件,给你的无线网卡分配静态IP,无线网卡的配置如下:

allow-hotplug wlan0
iface wlan0 inet static
address 192.168.42.1
netmask 255.255.255.0

hostapd配置:

interface=wlan0
driver=rtl871xdrv
ssid=My_SSID_Name
hw_mode=g
channel=6
macaddr_acl=0
auth_algs=1
ignore_broadcast_ssid=0
wpa=2
wpa_passphrase=MYPASSWORD
wpa_key_mgmt=WPA-PSK
wpa_pairwise=TKIP
rsn_pairwise=CCMP

启动IP转向功能以便于开通NAT:

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

编辑/etc/sysctl.conf改动下面这行:

net.ipv4.ip_forward=1

配置iptables防火墙:

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

将刚才配置的iptables保存下来:

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

编辑/etc/network/interfaces然后在最后加上下面这行以使每次启动都自动加载iptables配置:

up iptables-restore < /etc/iptables.ipv4.nat
<span style="font-family:Microsoft YaHei;">重启并测试hostapd</span>

sudo reboot
sudo hostapd /etc/hostapd/hostapd.conf

另外:在http://wangye.org/blog/archives/845/ 日志中,指出了一种解决DHCP不稳定的方法:有遇到的同学可以参考:

最近经常发现无线网卡配置的DHCP不能发挥作用,经过排查发现给无线网卡指定的静态IP失败了,也就是说无线网卡没有IP导致DHCP无法工作,在网上找到这篇文章《Why
won‘t dnsmasq‘s DHCP server work when using hostapd?》
,根据内容我将/etc/default/ifplugd的内容修改配置如下:

INTERFACES="eth0"
HOTPLUG_INTERFACES="eth0"
ARGS="-q -f -u0 -d10 -w -I"
SUSPEND_ACTION="stop"

重启了几次进行测试,结果一切正常!

时间: 2024-12-26 16:29:36

树莓派做AP发射wifi(RTL8188CUS芯片)的相关文章

【树莓派】【转】将树莓派Raspberry Pi设置为无线路由器(WiFi热点AP,RTL8188CUS芯片)

下文为转载,文章转自:http://wangye.org/blog/archives/845/,仅供本次学习实践参考. 最近又开始折腾起Raspberry Pi来了,因为某处上网需要锐捷拨号,于是我就想能不能让我的树莓派代劳,当然首先要将其改造为路由器,默认自带的网口作为WAN口,我们还缺一个网口,木有办法,只好占用一个USB口,接上一个USB网卡,网上的USB转RJ45网线口的适配器比较少,价格也不便宜,于是就考虑干脆将其改造成无线路由,也符合时下高端大气上档次的标准. 准备工作,当然要先去购

将树莓派Raspberry Pi设置为无线路由器(WiFi热点AP,RTL8188CUS芯片)

本文是基于在某东购买的usb无线网卡(RTL8188CUS芯片)来制作无线热点.本来想制作一个一键脚本.只是先把实现的过程记录下来. 參考文章 Turn Your Raspberry Pi Into a WiFi Hotspot with Edimax Nano USB EW-7811Un (RTL8188CUS chipset) Why won't dnsmasq's DHCP server work when using hostapd? 1.更新系统,安装须要的软件 我们首先须要更新系统.

树莓派配置AP模式

所需硬件:树莓派.无线网卡 1.查看无线网卡是否被识别 [email protected] ~ $ sudo lsusb Bus 001 Device 002: ID 0424:9512 Standard Microsystems Corp. Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub Bus 001 Device 003: ID 0424:ec00 Standard Microsystems Corp. Bus

树莓派学习笔记——USB wifi配置指南

0 前言 树莓派既可以使用有线网络又可以无线网络,如果使用有线网络不方便的话可以借助USB wifi无线网卡让树莓派也插上无线"翅膀".但是和使用有线网络即插即用的方式不同,USB wifi网卡需要进行一些配置.通过一天的配置实验,本文总结了树莓派wifi配置的两种方法--[1]使用wpa_gui工具方法和[2]修改配置文件方法. [1]使用wpa_gui工具方法 wpa_gui是一种linux平台常用的wifi配置工具,wpa_gui具有图形界面操作简单.由于,树莓派B板只有两个US

用树莓派做无线路由器

原理:Pi使用有线连入网络,然后接USB无线网卡作为热点,提供Wifi接入. 1.有线网络,如果是自动获取IP的,直接接上网线即可. 2.关于USB无线网卡驱动问题. 如果接上USB无线网卡,使用ifconfig命令,能直接看到wlan0,那么恭喜你,可以直接跳过这一步. 官方推荐的无线网卡是TL-WN725N,我上淘宝买了,很不幸,买到的是2.0版的.而官方的驱动只支持1.0,好在有爱好者做了第三方驱动. 如果你淘宝上买到的也是2.0版的,看我的这篇文章安装驱动TL-WN725N v2.0 D

用树莓派做一个离线下载机

原文:用树莓派做一个离线下载机 用树莓派可以做很多有意思的东西,它相当于一个小型的电脑,装上系统完全可以作为一个家用的小型服务器. 通过这个小型服务器,可以实现一个"离线"下载机.不过这里的离线下载不是真的离线,因为树莓派还是在线的--既然树莓派当做了小型服务器,那应该长期保持在线状态了--不过由于树莓派的功耗很小,而且占用空间也很小,所以当做家用服务器还是很可以的. 这个树莓派的离线下载器是使用aria搭建的,aria是一个开源的多线程下载工具,可以完成很多种类的下载任务.通过ari

27 树莓派做直播平台

http://www.52pi.net/archives/981 用树莓派做 RTMP 流直播服务器,可推送至斗鱼直播 用树莓派DIY共享鱼缸,支持微信远程喂鱼 http://shumeipai.nxez.com/2017/09/27/nature-aquarium-for-sharing.html 原文地址:https://www.cnblogs.com/kekeoutlook/p/11380234.html

Mac osx如何配置树莓派3 及 远程wifi控制树莓派

树莓派初次启动需要以下几个步骤: 安装系统镜像到SD卡 连接配置树莓派 配置远程控制树莓派 所需准备的材料如下: 16G以上高速存储SD卡一张.(请注意,树莓派3采用micro卡,网上买的手机内存卡可以直接使用) 读卡器一个mac一个网线一根路由器一个 1.  安装树莓派操作系统到sd卡 1)先到树莓派的官方网站去下载一个系统镜像,推荐下载Raspbian. 下载后,得到镜像如下 2)之后,读卡器中插入SD卡,插读卡器入电脑,这样我们使用df -h ,来查看一下,SD卡有没有插上. 如图,我们可

(16)给树莓派B+ 安装一个实时时钟芯片DS1302

在这里首先感谢glgoo在google被墙的情况下提供搜索功能,还要感谢 http://wiringpi.com/ 以及github,尽管自己眼瞎,几经波折还是发现了尘封已久的少林"七十二绝技",没错,每种绝技都能克制一个树莓派GPIO控制外设的问题,七十二绝技的核心就是wiringpi这个为Pi GPIO写的C语言库了,而每种绝技则暗藏在wiringPi/examples/目录下,这里就不一一罗列了,大家想学什么招式,就去看每个example,都非常简短. 其实早在第9篇文章&quo