1. STA 模式下的 DHCP(客户端角色)
ESP32 当 Station(STA) 时,它的行为就跟你的手机/笔记本连 Wi-Fi 一样:
DHCP 客户端 → 去路由器(DHCP 服务器)要一个 IP。
特点
启用 DHCP(
AT+CWDHCP=1,1
)ESP32 自动向路由器申请 IP、网关、DNS。
此时你不能用
AT+CIPSTA
设置静态 IP,设置了也会被忽略。所以说 STA 下“DHCP 与静态 IP 互斥”。
关闭 DHCP(
AT+CWDHCP=0,1
)ESP32 不再自动申请 IP。
你必须用
AT+CIPSTA="IP","网关","掩码"
手动配置,否则 ESP32 没有 IP。这种模式常见于对网络有严格要求的应用,比如 IoT 网关、工业设备。
典型应用
家用 Wi-Fi:大部分情况用 DHCP 自动获取。
工业/测试环境:可能要求固定 IP,就关 DHCP 用静态。
2. AP 模式下的 DHCP(服务器角色)
ESP32 当 Access Point(AP) 时,它就像一台小路由器,手机/电脑通过它上网。
DHCP 服务器 → 给连上来的客户端分配 IP。
特点
启用 DHCP(
AT+CWDHCP=1,2
)ESP32 给接入的手机/电脑分配 IP(比如 192.168.4.2、192.168.4.3…)。
地址池和租期可以用
AT+CWDHCPS
配置。ESP32 自己的 IP(
AT+CIPAP
,默认 192.168.4.1)不受影响。
关闭 DHCP(
AT+CWDHCP=0,2
)ESP32 不再分配 IP。
手机/电脑连上后不会自动获得 IP,需要用户手动设置静态 IP。
这种模式少见,一般用于和上级路由器桥接或测试场景。
典型应用
开发调试:默认开 DHCP,让手机连上就能直接通信。
特殊网络:关 DHCP,让上级网络设备(比如真实路由器)来分配 IP。
3. 核心区别总结
模式 | DHCP 角色 | 控制对象 | 启用 DHCP 的效果 | 关闭 DHCP 的效果 |
---|---|---|---|---|
STA | 客户端 | ESP32 自己 | 自动从路由器获取 IP、网关、DNS;静态 IP 被禁用 | 必须手动用 AT+CIPSTA 设置 IP |
AP | 服务器 | 连接的终端 | 给接入的手机/电脑自动分配 IP;ESP32 自己的 IP 不变 | 手机/电脑需要手动配静态 IP |
👉 所以:
STA 下 DHCP = ESP32 向别人要 IP(客户端),和静态 IP 互斥。
AP 下 DHCP = ESP32 给别人分配 IP(服务器),和 ESP32 自己的静态 IP 没关系。