我的程序正在做数据包分析。我现在有一个DNS/Radius问题。 DNS使用UDP端口53 Radius使用UDP端口1645/1646/1812/1813当Wireshark在UDP端口中使用Radius端口时,如何识别DNS流量?我怎么知道?
逻辑是如果我看到53,那么它是一个DNS数据包;如果我看到1812 ...它是一个Radius数据包。然后出现问题,一些DNS数据包也使用Radius端口,例如UDP端口src 53/dst 1812或反之。然后我的程序无法处理这个问题。
但wireshark不会混淆,我想知道它是如何能够知道真正的协议。它是否尝试解码有效载荷?然后告诉?或者下划线libpcap或者其他东西能够告诉真正的协议类型。所以如果我采用可以使用libpcap的代码,libpcap是否提供了告诉携带协议的功能?
任何人都可以请帮忙吗?我GOOGLE了一段时间,但没有结果。
感谢 康