我编写了一个客户端应用程序,它使用 mdnsreponder 进行一些服务发现。我有一个要求,我的客户端 IP 会非常频繁地更改。每当 IP 发生变化时,我都需要再次进行发现。所以我编写了简单的测试应用程序,它将每 1 分钟更改一次 IP 并进行发现。
一切正常,但经过几次 IP 更改(大约 7-10 次更改)后,它给出了以下套接字错误。
(下面是mdnsresponder代码中sendto socket函数的错误码)
mdnsplatformsend udp got error 22 .
之后,我的请求将不会将其放在具有新 IP 的接口上。
我再次必须重新启动我的应用程序,然后只有它才能工作......
有人可以帮助解决这个问题,为什么在几次试验后它就停止了?