如何使用C#或Java发送SYN数据包

前端之家收集整理的这篇文章主要介绍了如何使用C#或Java发送SYN数据包前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我想将SYN数据包发送到远程主机,现在的问题是,如果我使用任何.NET框架类,那么我就不能这样做;例如TCP客户端获取主机IP和端口号并建立连接,与 java中的ClientSocket类相同.

我想控制自己的连接建立;我的意思是我想发送连接请求(SYN数据包)然后等待连接回复然后发送数据包.我知道没有外部库可能并不容易,所以如果有人可以指导我如何在C#或Java中完成它. .

解决方法

而不是到目前为止评论两个答案…自XP以来,Windows中的原始套接字受到限制(对抗恶意软件攻击).阅读以下:

http://msdn.microsoft.com/en-us/library/ms740548(v=vs.85).aspx

一旦完成,您当然可以根据Mat的Java答案或Ritch的C#规则构建一个原始套接字.

它将严格限制访问,并且非常依赖于系统.我不知道一种方法来完成3路握手并通过TCP / UDP传输数据(虽然我有兴趣听一个).

我想我应该快速修改这个答案.如果你不使用winsock而是使用不同的TCP堆栈,你可能得到你想要的东西(但是这仍然不能直接在OS中使用).以此为例提供:http://www.komodia.com/tcpip-library-v5-1/或此前SO线程What is a popular,multi-platform,free and open source socket library

猜你在找的C#相关文章