我的程序正在做數據包分析。我現在有一個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了一段時間,但沒有結果。
感謝 康