lwIP是否支持Zeroconf?

问题描述 投票:13回答:4

我看到lwIP有一些AutoIP(又名IPv4LL,又名RFC 3927)代码,但我不知道它是否在Zeroconf堆栈中做了更高的任务,即mDNS和DNS-SD(与RFC 2782)。

那么,lwIP是否支持DNS-SD服务发现?如果没有,那么从Avahi这样的项目中移植代码是否容易(假设许可允许)?

c networking embedded zeroconf lwip
4个回答
8
投票

不,除了AutoIP之外,lwIP不支持Zeroconf的任何部分。我没有看过Avahi,但将苹果mDNSResponder移植到lwIP是非常简单的。有一点肮脏,你必须拉回pbuf标头来访问IP标头以获取发送方IP(我认为这是一个“正确”的方法是为lwIP工作,但AFAIK它还没有发布) 。

使用mDNSResponder,您可以获得服务广告和发现。


5
投票

我无法评论您的问题的LWIP部分(我上次使用LWIP时它甚至没有支持IPv4LL),但您可能有兴趣知道Apple开源了他们的mDNSResponder代码,可从以下处获得: http://developer.apple.com/networking/bonjour

这个实现的有趣之处在于它们提供了一个VxWorks平台层,与Avahi库相比,它可能更适合移植到嵌入式目标。


3
投票

lwIP网站有一个带有以下三个项目的task tracker(看起来它们是在2010年左右添加的,大约是最初问这个问题的时间):


0
投票

这是一个非常小的mDNS响应器,可以很容易地移植到lwIP:

https://bitbucket.org/geekman/tinysvcmdns

对于非常小的系统(就RAM使用而言),苹果mDNSResponder仍然相当重量级,因此如果只需要基本功能,那么这可能是首选。

© www.soinside.com 2019 - 2024. All rights reserved.