Linux WIFI STA和AP模式配置

验证设备:hciconfig
在这里插入图片描述

bluetoothctl

在这里插入图片描述

iw list | grep SSID

在这里插入图片描述

Wifi STA模式设置:
打开wlan0

ifconfig wlan0 up

搜索WIFI名称:

iw dev wlan0 scan | grep SSID

在这里插入图片描述
安装 wpasupplicant

sudo apt-get install wpasupplicant

输入要连接的WIFI名称和密码:

wpa_passphrase "名称" "密码" > wifi        (具体看你要连接的wifi)

在这里插入图片描述

连接:

wpa_supplicant -Dnl80211 -iwlan0 -c wifi -B

在这里插入图片描述
在这里插入图片描述

分配IP给wlan0:

dhclient wlan0

在这里插入图片描述

查看获得IP

ifconfig

在这里插入图片描述

Wifi AP模式设置:
打开端口节点:ifconfig wlan0 up

sudo apt-get install hostapd

创建hostapd.conf配置文件。注意热点名称密码,可以自行设置(已标红)。

vi /etc/hostapd/hostapd.conf   
配置内容:
interface=wlan0
driver=nl80211
#driver=madwifi
ssid=FBWFBI9
channel=9
hw_mode=g
macaddr_acl=0
ignore_broadcast_ssid=0
auth_algs=1
wpa=3
wpa_passphrase=12345678wer
wpa_key_mgmt=WPA-PSK
wpa_pairwise=TKIP
rsn_pairwise=CCMP

开启热点,执行:hostapd /etc/hostapd/hostapd.conf -B
在这里插入图片描述

此时手机能发现 FBWFBI9的热点,但连接不了。
需要安装udhcpd 它是工作在server端的DHCP服务。

 sudo apt-get install udhcpd

打开 vi /etc/udhcpd.conf 注意自己看是不是wlan0,不是要修改。下图画红也要改,配置内容:
在这里插入图片描述
在这里插入图片描述

ifconfig wlan0 192.168.0.1

在这里插入图片描述
在这里插入图片描述

给连接热点的设备分配地址:

udhcpd /etc/udhcpd.conf &

在这里插入图片描述

打开 IP 转发模式:

echo 1 > /proc/sys/net/ipv4/ip_forward

启用iptables伪装ip,注意网口eth:

iptables -F
iptables -P FORWARD ACCEPT
iptables -t nat -A POSTROUTING -o eth3 -j MASQUERADE

然后用手机打开wifi,输入密码连接热点,成功实现上网。
在这里插入图片描述!](https://img-blog.csdnimg.cn/9fe756731073454089b71a2b6d8dcdd8.jpeg)

  • 4
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
ESP32可以同时运行在STAStation)模式AP(Access Point)模式下,实现STAAP的共存。以下是一种实现方式: 1. 首先,你需要在ESP32上初始化WiFi模块,并分别设置STAAP的参数。 ```cpp #include <WiFi.h> void setup() { // 初始化串口和WiFi模块 Serial.begin(115200); WiFi.mode(WIFI_MODE_STA); // 设置为STA模式 // 连接到WiFi路由器 WiFi.begin("your_ssid", "your_password"); while (WiFi.status() != WL_CONNECTED) { delay(1000); Serial.println("Connecting to WiFi..."); } // 设置AP模式的参数 WiFi.softAP("your_ap_ssid", "your_ap_password"); } void loop() { // 在这里可以添加其他代码 } ``` 在上述代码中,你需要将`"your_ssid"`和`"your_password"`替换为你的WiFi路由器的名称和密码,将`"your_ap_ssid"`和`"your_ap_password"`替换为你希望设置的AP的名称和密码。 2. 在ESP32上同时运行STAAP模式后,你可以通过STA模式连接到一个WiFi路由器,并且其他设备可以通过AP模式连接到ESP32。这样,ESP32即可以作为一个WiFi客户端连接到网络,又可以作为一个WiFi热点提供网络给其他设备连接。 请注意,ESP32的STAAP之间共享同一个物理无线接口,因此在同时使用STAAP模式时,网络性能可能会受到影响。同时,ESP32的资源有限,如果同时处理大量的STAAP连接请求,可能会导致性能下降。因此,在实际应用中,需要根据具体需求和设备能力进行合理的配置和优化。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值