所需硬件:树莓派、无线网卡

1.查看无线网卡是否被识别

pi@raspberrypi ~ $ sudo lsusb
Bus Device : ID : Standard Microsystems Corp.
Bus Device : ID 1d6b: Linux Foundation 2.0 root hub
Bus Device : ID :ec00 Standard Microsystems Corp.
Bus Device : ID 0bda: Realtek Semiconductor Corp. RTL8188CUS .11n WLAN Adapter
pi@raspberrypi ~ $

WLAN Adapter代表的就是无线网卡被系统识别,芯片是RTL8188CUS

2.无线网卡配置静态IP地址

sudo vim /etc/network/interfaces  #配置静态地址

pi@raspberrypi ~ $ sudo vim /etc/network/interfaces
auto lo

iface lo inet loopback
iface eth0 inet dhcp

allow-hotplug wlan0
iface wlan0 inet static
address 192.168.8.1
netmask 255.255.255.0
保存后重启wlan0网卡

sudo ifdown wlan0
sudo ifup wlan0

3.安装DHCP服务软件

sudo apt-get install isc-dhcp-server

配置DHCP服务

sudo vim /etc/dhcp/dhcpd.conf  #编辑配置文件
#option domain-name "example.org"; #注释
#option domain-name-servers ns1.example.org, ns2.example.org; #注释
authoritative; #去除注释
#在配置文件底部添加发下配置
subnet 192.168.8.0 netmask 255.255.255.0 {
range 192.168.8.100 192.168.8.200;
option broadcast-address 192.168.8.255;
option routers 192.168.8.1;
default-lease-time ;
max-lease-time ;
option domain-name "local";
option domain-name-servers 8.8.8.8, 8.8.4.4;
}
#注解
option broadcast-address#广播地址
option routers           #网关地址
default-lease-time       #默认租约时间
max-lease-tim            #最大租约时间
option domain-name       #网络域名
option domain-name-servers#DNS地址
使wlan0提供dhcp服务
sudo vim /etc/default/isc-dhcp-server #编辑配置文件
INTERFACES="wlan0"

4.安装AP软件与配置

sudo apt-get install hostapd
配置Access Point
sudo vim /etc/hostapd/hostapd.conf
interface=wlan0
driver=rtl871xdrv#这个是树莓派无线网卡驱动,不要改
ssid=pi#无线信号名字,随意设
hw_mode=g
channel=
macaddr_acl=
auth_algs=
ignore_broadcast_ssid=
wpa=
wpa_passphrase=raspberry#密码,随意设
wpa_key_mgmt=WPA-PSK
wpa_pairwise=TKIP
rsn_pairwise=CCMP

设置读取加载配置文件

sudo vim /etc/default/hostapd   #找到#DAEMON_CONF=""修改成
DAEMON_CONF="/etc/hostapd/hostapd.conf"

默认安装的版本比较新,该驱动需要用V0.8的版本,否则运行hostapd会报错

wget http://www.adafruit.com/downloads/adafruit_hostapd.zip
unzip adafruit_hostapd.zip
sudo mv /usr/sbin/hostapd /usr/sbin/hostapd.ORIG
sudo mv hostapd /usr/sbin
sudo chmod /usr/sbin/hostapd
测试一下
sudo /usr/sbin/hostapd /etc/hostapd/hostapd.conf
手机wifi扫描搜索下,是否有pi的无线SSID。

5.启动dhcp、hostapd服务

sudo service isc-dhcp-server start  #启用DHPCServere服务
sudo service hostapd start #启用AP服务

设置开启自启动

sudo update-rc.d hostapd enable
sudo update-rc.d isc-dhcp-server enable

6.开启转发

sudo vim /etc/sysctl.conf  #开机启动设置ip转发
#底部加上一行
net.ipv4.ip_forward=
或者直接:
sudo sh -c "echo 1 > /proc/sys/net/ipv4/ip_forward"

7.添加防火墙规则

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

8.保存规则并开机自动生效

sudo sh -c "iptables-save > /etc/iptables.ipv4.nat"
sudo vim /etc/network/interfaces #开机生效
up iptables-restore < /etc/iptables.ipv4.nat #底部增加一行

---------------------------------------------------------------------------------------------------

后记:如果有两个无线网卡,又想设置两个AP,那么可以修改/etc/network/interfaces和/etc/dhcp/dhcpd.conf以及添加一个/etc/hostapd/hostapd2.conf

如下:

pi@raspberrypi ~ $ sudo vim /etc/network/interfaces
auto lo

iface lo inet loopback
iface eth0 inet dhcp

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

#继续添加

auto wlan1
iface wlan0 inet static
address 192.168.9.1
netmask 255.255.255.0
network 192.168.9.0
broadcast 192.168.9.255

接着,修改/etc/default/isc-dhcp-server文件,添加wlan1

sudo vim /etc/default/isc-dhcp-server #编辑配置文件
INTERFACES="wlan0"

接着,修改/etc/dhcp/dhcpd.conf

sudo vim /etc/dhcp/dhcpd.conf  #编辑配置文件
#option domain-name "example.org"; #注释
#option domain-name-servers ns1.example.org, ns2.example.org; #注释
authoritative; #去除注释
#在配置文件底部添加发下配置
subnet 192.168.8.0 netmask 255.255.255.0 {
range 192.168.8.100 192.168.8.200;
option broadcast-address 192.168.8.255;
option routers 192.168.8.1;
default-lease-time 600;
max-lease-time 7200;
option domain-name "local";
option domain-name-servers 8.8.8.8, 8.8.4.4;
}
#继续添加
subnet 192.168.9.0 netmask 255.255.255.0 {
range 192.168.9.100 192.168.9.200;
option broadcast-address 192.168.9.255;
option routers 192.168.9.1;
default-lease-time 600;
max-lease-time 7200;
option domain-name "local";
option domain-name-servers 8.8.8.8, 8.8.4.4;
} 最后,添加一个/etc/hostapd/hostapd2.conf,内容类似hostapd.conf,但是channel要不一样,否则出现干扰
interface=wlan1
driver=rtl871xdrv#这个是树莓派无线网卡驱动,不要改
ssid=pi2#无线信号名字,随意设
hw_mode=g
channel=2
macaddr_acl=0
auth_algs=1
ignore_broadcast_ssid=0
wpa=2
wpa_passphrase=raspberry#密码,随意设
wpa_key_mgmt=WPA-PSK
wpa_pairwise=TKIP
rsn_pairwise=CCMP 如此,启动
sudo /usr/sbin/hostapd /etc/hostapd/hostapd.conf /etc/hostapd/hostapd2.conf
即可启动两个AP,如果加上-B,可运行于后台。 ------------------------------------------------------------------------------------------
此外,如果想配置成wlan0 ap模式,wlan1 连接路由器模式,可以修改/etc/network/interfaces文件,添加wlan1的设置即可。
auto wlan1
allow-hotplug wlan1
iface wlan1 inet dhcp
wpa-ssid "SDN2.4"
wpa-psk ""

重启wlan1(sudo ifdown wlan1  sudo ifup wlan1)即可。

树莓派配置AP模式的更多相关文章

  1. 关于 RTL8723BS 同时开启 STA/AP 模式

    最近接到一个调试 wifi 驱动的任务,使用的是 rtl8723bs 芯片组.要求是让无线设备工作在 station 模式的时候同时开启一个 ap 热点.简单来讲就是连接其他 wifi 的同时发出一个 ...

  2. 树莓派做AP发射wifi(RTL8188CUS芯片) 分类: shell ubuntu Raspberry Pi 2014-11-29 01:25 822人阅读 评论(0) 收藏

    最近在做一个项目,需要用树莓派作为AP发射wifi,对比cubieboard,树莓派的配置容易得多,而且支持也更多. 较为官方的介绍配置为无线热点的文章莫过于这一篇<RPI-Wireless-H ...

  3. Android KitKat 4.4 Wifi移植AP模式和网络共享的调试日志

    Tethering技术在移动平台上已经运用的越来越广泛了.它能够把移动设备当做一个接入点,其它的设备能够通过Wi-Fi.USB或是Bluetooth等方式连接到此移动设备.在Android中能够将Wi ...

  4. Marvell w8782 sdio wifi AP模式设置

    http://blog.csdn.net/junllee/article/details/8895908 w8782工作在station模式一切正常,于是想试试AP模式(master mode): A ...

  5. 树莓派配置 USB 无线网卡

    树莓派配置 USB 无线网卡来上网的过程. 本人使用的USB无线网卡型号:EP-N8508GS(树莓派专用型号) 一.检查 USB 无线网卡是否已经正确识别 将无线 USB 网卡插入树莓派后启动树莓派 ...

  6. ESP8266-Soft AP模式 —— 谁想连上我

    AP是Access Point简称,也就是访问接入点,是网络的中心节点.一般家庭的无线路由器就是一个AP,众多站点(STA)加入到它所组成的无线网络,网络中的所有的通信都通过AP来转发完成. 软AP也 ...

  7. 华硕RT-AC86U路由器 AP模式实现多路由器组网,扩展主路由器的无线网范围

    描述: 宽带拨号上网的路由器为 TP-LINK  TL-WAR1200L,由于室内空间大,遂在此路由器下接入一个 华硕RT-AC86U路由器: 配置使该 华硕路由器与 TP-LINK 路由器的网段相同 ...

  8. Nacos源码结构和AP模式注册中心实现介绍

    前言 NacosAP模式源码分析目录 微服务下的注册中心如何选择 Nacos使用和注册部分源码介绍 Nacos服务心跳和健康检查源码介绍 Nacos服务发现 Nacos源码结构介绍 Nacos版本基于 ...

  9. External Configuration Store Pattern 外部配置存储模式

    Move configuration information out of the application deployment package to a centralized location. ...

随机推荐

  1. [iOS基础控件 - 3.3] 图片浏览器

    需求: 1.显示当前图片序号/总图片数 2.显示图片 3.上一张图片.下一张图片转换 4.显示图片描述     A.数据的加载方式 1.逐个加载.处理 2.使用数组.字典分离数据和逻辑 3.延迟加载 ...

  2. 转载MSDN 在ASP.NET 中执行 URL 重写

    转载文章原网址 http://msdn.microsoft.com/zh-cn/library/ms972974.aspx 摘要:介绍如何使用 Microsoft ASP.NET 执行动态 URL 重 ...

  3. Qt Creator编辑器乱问题

    新安装的Qt Creator 打开原来的工程源码时提示:无法用 "UTF-8"-编码解码 "main.cpp". 无法编辑   解决办法:修改项目属性的编辑器设 ...

  4. 解决IE6不支持fixed

    /* IE6 是不支持position:fixed的,解决如下*/.right-bar{ _position:absolute;_top:expression(eval(document.docume ...

  5. SQL 存储过程(学生,课程表,选修表)

    SQL 存储过程(学生,课程表,选修表) 一.存储过程的分类 在SQL Server中存储过程分过两类: 1)系统存储过程("sp_"作为前缀) 2)用户自定义存储过程 二.创建和 ...

  6. String的那点小事儿

    1.== 比较的是什么? 1 package xupengwei.string; 2 /** 3 * @describe: 4 * @author chenmo-xpw 5 * @version 20 ...

  7. 基于EF创建数据库迁移

    通过创建的实体类和DbContext类利用EF的Code First数据库迁移创建数据库. 下面看代码. 一.先创建实体类 我先添加一个BaseEntity,里面就一个属性 [Key] public ...

  8. Ubuntu字体设置

    Ubuntu所带的字体不是很好看,比较模糊,现修改为微软雅黑 Win7安装分区下的 \windows\fonts\文件夹下,复制msyh.ttf和msyhhd.ttf到/home/m/msfonts文 ...

  9. Lync边缘服务器配置

    以下步骤均使用Lync管理员权限即可完成 1.在前端下载并编辑拓扑,新建边缘池 如果边缘池中只有一台服务器,则池名称与服务器名称相同,如下: 如果需要删除边缘池,则需要先取消关联,如下: 2.发布拓扑 ...

  10. nape.dynamics.InteractionFilter

    (转载http://tomyail.com/blog/1123) Nape定义了三种交互方式: Collision(碰撞) Sensor(感应) Fluid(浮力) 默认情况下两个物体只会发生Coll ...