因为公司有个工作,需要解析mDNS,本来使用苹果的Bonjour可以,但是不可能让程序附带bonjour的安装包,所以只能依据他的mdns协议,开发;
首先mDNS协议,数据报是按照DNS数据报格式,因此只需要解析DNS协议就好
接着是mDNS协议只是和DNS不一样的是,朝5353端口,并且在组播地址
IPv4地址224.0.0.251或IPv6地址ff02 :: fb 进行数据广播
接就是发送数据到两个地址及对应端口
那么就有必要解析并且能够组装mDNS的数据
先看抓包
因为这个数据报的介绍网上太多了,我就只简单介绍一下
首先对于数据报,固定前面12字节是标识部分,我自己定义为header,后面是数据主体,我定义为entities
header的标识,会影响后面怎么解析;
首先,数据分为查询和响应,查看 message is a query处,标志位是0&#