c# - 数据包嗅探器套接字异常

标签 c# .net sockets sniffer

下面的代码

        Socket s = new Socket(AddressFamily.InterNetwork, SocketType.Raw, ProtocolType.IP);
        s.Bind(new System.Net.IPEndPoint(IPAddress.Parse("127.0.0.1"),0));
        s.SetSocketOption(SocketOptionLevel.IP, SocketOptionName.HeaderIncluded, true);
        byte[] bin = new byte[4]{1, 0, 0, 0};
        byte[] bout = new byte[4];
        s.IOControl(IOControlCode.ReceiveAll, bin, bout);

我收到以下异常:

Socket Exception: An invalid argument was supplied

在下面一行

        s.IOControl(IOControlCode.ReceiveAll, in, out);

但我不明白为什么我提供了错误的论点。

最佳答案

好的,我找到了。

127.0.0.1 不是一个正确的 IP 地址注释。我必须使用本地的(192.168.0.100);

天哪,事情总是那么容易。

关于c# - 数据包嗅探器套接字异常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4013217/

相关文章:

c# - MessageBox.Show中的参数MessageBoxResult defaultResult是做什么用的?

.net - 哪里是开始学习LINQ的好地方

python - 如何修复此错误 "AttributeError: module '套接字'没有属性 'gethostname'“

java - 无法使用 PHP 客户端从 Java 套接字服务器读取响应

c++ - 处理隧道时,套接字 read() 函数有时从不返回 0

c# - 从 ARM 模板部署新的 Azure VM 时,无法格式化 .WithParameters() 的有效 JObject

c# - 使用谷歌地图的地址验证器

C# 如何在多个文件中为同一个类定义方法?

c# - ASP.NET 中的每请求静态数据

c# - 如何在 .NET 代码分析器中获取解决方案路径