乐鑫技术交流
直播中

hxjq

13年用户 927经验值
私信 关注
[问答]

DHCP报错ffffffff的原因?

020-05-23 22:19:04:795-< [0;32mI (13998124) Wi-Fi: heap_size=118816[0m

2020-05-23 22:19:05:043-< I (13998334) wifi: new:<1,1>, old:<1,1>, ap:<1,1>, sta:<1,1>, prof:1
I (13998334) wifi: station: c8:2b:96:b9:7a:3c join, AID=1, bgn, 40U
D (13998344) event: SYSTEM_EVENT_AP_STACONNECTED, mac:c8:2b:96:b9:7a:3c, aid:1[0m
[0;32mI (13998344) Wi-Fi:
*********SYSTEM_EVENT_AP_STACONNECTED*********
[0m
[0;32mI (13998354) Wi-Fi: station:c8:2b:96:b9:7a:3c join, AID=1[0m

2020-05-23 22:19:05:164-< dhcps: handle_dhcp-> receive a packet
dhcps: handle_dhcp malloc_len=548 rx_len=308dhcps: handle_dhcp-> p->tot_len = 308
dhcps: handle_dhcp-> p->len = 308
01 01 06 00 cc c7 c6 a4 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 c8 2b 96 b9
7a 3c 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 63 82 53 63
35 01 01 39 02 05 dc 0c 09 65 73 70 72 65 73 73
69 66 37 0c 01 03 1c 06 0f 2c 2e 2f 1f 21 79 2b
ff 00 00 00 00 00
2020-05-23 22:19:05:320-<  00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 dhcps: handle_dhcp-> parse_msg(p)
dhcps: len = 68
dhcps: (s16_t)*optptr = 53
dhcps: (s16_t)*optptr = 57
dhcps: (s16_t)*optptr = 12
dhcps: (s16_t)*optptr = 55
dhcps: (s16_t)*optptr = 255
dhcps: DHCPD_STATE_OFFER
dhcps: return s.state = 1
dhcps: xid changed
dhcps: client_address.addr = 20aa8c0
dhcps: handle_dhcp-> DHCPD_STATE_OFFER
udhcp: send_offer>>p->ref = 1
dhcps: send_offer>>pbuf_alloc succeed
dhcps: send_offer>>p->tot_len = 548
dhcps: send_offer>>p->len = 548
02 01 06 00 cc c7 c6 a4 00 00 80 00 00 00 00 00
c0 a8 0a 02 00 00 00 00 00 00 00 00 c8 2b 96 b9
7a 3c 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 63 82 53 63
35 01 02 01 04 ff ff ff 00 33 04 00 06 97 80 36
04 c0 a8 0a 01 03 04 c0 a8 0a 01 06 04 c0 a8 0a
01 1c 04 c0 a8 0a ff 1a 02 05 dc 1f 01 00 2b 06
01 04 00 00 00 02 ff 00 00 00 00 00 00 00 00 00
00 00 0
2020-05-23 22:19:05:467-< 0 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 [0;32mI (13998604) UART1: ESP->MCU:Get Date_time
[0m
dhcps: send_offer>>udp_sendto result ffffffff
udhcp: send_offer>>free pbuf

当前模式是STA+AP模式。

上面是Debug,可见在第二个步骤OFFER时,通过UDP发送提示udp_sendto result ffffffff

值得注意的是,出现此现象的时候,heap的大小仍有118816字节;并且在此过程中,还有另外一个UDP正在向外广播数据,并且UDP偶尔报错 errno 12。

这种现象导致了其他STA再也无法连接上这个AP了,只有重启才能够重新连接上。

此现象的复现过程是:这个ESP32频繁连接断开一个目标路由器,并且有另一个STA频繁连接断开这个STA。

问题:1、出现这个问题的可能原因有哪些?2、heap空间大小是足够的,但是UDP偶尔报错12提示内存不足,是否是因为heap分为了几个区域,虽然总的大小有118816字节,但是实际上留给UDP或者DHCP使用的已经不足?

问题困扰多时,影响项目进度,感谢支持!
                                                                                                                                                           

回帖(1)

youyoulan

2024-6-25 17:05:39
根据您提供的错误信息,这个问题可能是由于DHCP(动态主机配置协议)在分配IP地址时遇到了问题。错误代码"ffffffff"通常表示一个错误或异常情况。以下是一些可能的原因和解决方案:

1. **网络设备问题**:可能是路由器或交换机等网络设备存在问题。尝试重启这些设备,看看问题是否得到解决。

2. **DHCP服务器配置错误**:DHCP服务器可能配置不正确,导致无法正确分配IP地址。检查DHCP服务器的配置,确保它能够正确分配IP地址。

3. **IP地址耗尽**:如果DHCP服务器的IP地址池已经耗尽,它将无法为新设备分配IP地址。检查IP地址池的大小,确保有足够的地址可供分配。

4. **设备驱动问题**:设备上的网络驱动可能存在问题,导致无法正确处理DHCP请求。尝试更新或重新安装网络驱动。

5. **操作系统问题**:操作系统可能存在问题,导致无法正确处理DHCP请求。尝试更新操作系统或修复系统设置。

6. **网络拥堵或干扰**:网络拥堵或干扰可能导致DHCP请求无法成功发送或接收。检查网络环境,确保没有过多的干扰或拥堵。

7. **设备硬件问题**:设备的硬件可能存在问题,导致无法正确处理DHCP请求。检查设备硬件,确保其正常工作。

8. **软件冲突**:某些软件可能与DHCP协议产生冲突,导致无法正确分配IP地址。检查系统中安装的软件,看看是否有可能影响DHCP的软件。

9. **网络安全设置**:网络安全设置可能阻止了DHCP请求的发送或接收。检查网络安全设置,确保它们允许DHCP通信。

10. **时间同步问题**:如果设备的系统时间与DHCP服务器的时间相差太大,可能导致DHCP请求失败。确保设备和DHCP服务器的时间同步。

解决这个问题的步骤可能包括:

- 重启网络设备,如路由器或交换机。
- 检查DHCP服务器的配置,确保其正确设置。
- 检查IP地址池的大小,确保有足够的地址可供分配。
- 更新或重新安装网络驱动。
- 更新操作系统或修复系统设置。
- 检查网络环境,确保没有过多的干扰或拥堵。
- 检查设备硬件,确保其正常工作。
- 检查系统中安装的软件,看看是否有可能影响DHCP的软件。
- 检查网络安全设置,确保它们允许DHCP通信。
- 确保设备和DHCP服务器的时间同步。

如果问题仍然存在,可能需要进一步的诊断和技术支持。
举报

更多回帖

发帖
×
20
完善资料,
赚取积分