Socket.bind到所有ips - 提供了无效的参数

时间:2011-09-26 15:23:20

标签: c# sockets

我想使用以下方法将套接字绑定到计算机上可用的所有IP地址:

  mainSocket.Bind(new IPEndPoint(IPAddress.Parse("0.0.0.0"), 0)); //or IPAddress.Any

但我在

上获得An invalid argument was supplied
 mainSocket.IOControl(IOControlCode.ReceiveAll, byTrue, byOut);

相反,当我指定IP时,它可以正常工作。

enter image description here

好吧也许这是不可能实现的。但是如何检测正在使用哪个互联网接口连接到互联网并获取它的IP? (假设用户在NAT /路由器后面)

1 个答案:

答案 0 :(得分:1)

我认为这是不可能的。 根据本文档,使用插座进行操作具有局限性 TCP/IP Raw Sockets