树莓派配置AP模式

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

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

pi@raspberrypi ~ $ 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 001 Device 004: ID 0bda:8176 Realtek Semiconductor Corp. RTL8188CUS 802.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 600; 
max-lease-time 7200; 
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=6
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 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 755 /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=1
或者直接:
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 "404404404"

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

转载于:https://www.cnblogs.com/buptmuye/p/3695790.html

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
好的,我理解了你的问题。为了回答你的问题,我将分为两部分进行解答。 首先,关于AP模式和STA模式的共存问题。一般来说,一个Wi-Fi芯片只能在AP模式或STA模式中运行,不能同时在两种模式下运行。但是,有些芯片支持同时在AP模式和STA模式下运行,这种功能被称为“SoftAP”或“APSTA”模式。如果你的芯片支持这种功能,你就可以同时在AP模式和STA模式下运行。 其次,关于如何配置树莓派为WiFi热点(AP模式)。以下是配置树莓派为WiFi热点的步骤: 1. 首先,你需要安装hostapd和dnsmasq软件。你可以使用以下命令进行安装: ``` sudo apt-get install hostapd dnsmasq ``` 2. 接下来,你需要编辑hostapd的配置文件。使用以下命令打开配置文件: ``` sudo nano /etc/hostapd/hostapd.conf ``` 然后,将以下内容添加到配置文件中: ``` interface=wlan0 driver=nl80211 ssid=MyPiHotspot hw_mode=g channel=7 macaddr_acl=0 auth_algs=1 ignore_broadcast_ssid=0 wpa=2 wpa_passphrase=MyPiPassword wpa_key_mgmt=WPA-PSK wpa_pairwise=TKIP rsn_pairwise=CCMP ``` 上述配置文件中,`interface`指定了使用的无线网卡接口,`ssid`指定了热点的名称,`wpa_passphrase`指定了热点的密码。 3. 接下来,你需要编辑dnsmasq的配置文件。使用以下命令打开配置文件: ``` sudo nano /etc/dnsmasq.conf ``` 然后,将以下内容添加到配置文件中: ``` interface=wlan0 dhcp-range=192.168.4.2,192.168.4.20,255.255.255.0,24h ``` 上述配置文件中,`interface`指定了使用的无线网卡接口,`dhcp-range`指定了分配给连接到热点的设备的IP地址范围。 4. 保存并退出配置文件后,你需要启动hostapd和dnsmasq服务。使用以下命令启动服务: ``` sudo service hostapd start sudo service dnsmasq start ``` 如果你希望这两个服务在系统启动时自动启动,可以使用以下命令启用它们: ``` sudo systemctl enable hostapd sudo systemctl enable dnsmasq ``` 5. 最后,你需要将树莓派的无线网卡接口wlan0配置为静态IP地址。使用以下命令编辑网络配置文件: ``` sudo nano /etc/network/interfaces ``` 然后,将以下内容添加到配置文件中: ``` allow-hotplug wlan0 iface wlan0 inet static address 192.168.4.1 netmask 255.255.255.0 network 192.168.4.0 broadcast 192.168.4.255 ``` 6. 保存并退出配置文件后,重启树莓派以使所有更改生效。使用以下命令重启树莓派: ``` sudo reboot ``` 这就是配置树莓派为WiFi热点(AP模式)的步骤。希望能对你有所帮助。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值