我有一個工作系統,通過UDP數據包接收數據發送到一個固定的IP:端口,我想用一個程序(某種代理?)發送副本將這些數據包添加到新的IP:端口(或IP:端口列表中,但全部位於程序所在的同一LAN內)。轉發UDP數據包到幾個IP維護原始源地址
並不像看起來那麼容易,因爲我需要複製的數據包具有與原始IP地址相同的源IP地址。
在我的研究中,我發現PCap.Net(WinPCap .NET wrapper)非常有用,因爲它可以從頭構建一個數據包,並且它支持修改所有地址字段。我設法捕獲數據包並構建它們。但有些他們沒有到達所需的目的地(!?)。我應該使用不同的PacketCommunicator來接收和發送它們嗎?
無論如何,這個問題與PCap.Net沒有完全相關,而是知道實現我想要的目標的替代方法。通過免費的應用程序?商業應用?開源示例?任何其他圖書館使用?
我的系統是基於Windows的(這裏沒有Linux可用)。我有C#(.NET)經驗(如果.NET綁定不可用,我不能使用C++庫)。
的幫助
此「代理」將在LAN上運行,不涉及路由器。源數據包來自互聯網,一旦在局域網中,代理程序將發送相同的數據包(保持公共IP源地址)到兩個或更多IP:端口。 – Opera362 2010-12-03 07:21:14
我編輯了我的原始問題與LAN的評論。感謝:-) – Opera362 2010-12-03 07:25:50
你將不得不確保這個流量不通過路由器,而是直接從你的計算機發送到LAN上。我不確定這是LAN上UDP的默認行爲。這是可以強制使用原始套接字和/或pcap。 – Artemiy 2010-12-03 16:03:11