创建原始数据包以欺骗UDP数据包

时间:2009-03-16 15:09:00

标签: java sockets udp

我希望使用Java欺骗UDP数据包。有没有很好的Java库可以让你创建自己的RAW SOCKETS?

4 个答案:

答案 0 :(得分:5)

我会使用包装libpcap的Java API。

libpcap有一个“注入”功能,允许您发送原始数据包。 (当然,您必须在尝试发送数据包的计算机上拥有root权限或管理员权限。)有许多可用的Java API,例如jNetPcapjpacp。例如,jpcap有class that allows you to send any packet

答案 1 :(得分:0)

这不是需要不同库的东西。它通常是平台上标准套接字库的一部分,如Winsock或Berkeley套接字。相关选项通常称为ASOCK_RAW

答案 2 :(得分:0)

在Windows XP SP2中(可能是更高版本,包括vista,但我不确定),raw sockets are disabled。这些限制对于UDP套接字而言比对TCP套接字要严格得多,因此您仍然可以做任何您想要做的事情。该链接包含有关您可以做什么以及如何做的信息,可能对您有所帮助,或者至少可以帮助您确定是否可能。

答案 3 :(得分:-2)

如果您正在编写java程序来欺骗UDP数据包,那么我会使用Mike建议的jNetPcap或jpcap。如果你只想欺骗(不写程序)那么我会尝试wireshark