我有一个工作系统,通过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