检查TCP连接是否活动的最佳方法

4

如果给定一组IP地址,我该如何以编程方式检查本地计算机是否仍然与这些IP地址保持活动的TCP连接?我正在使用C#。

3个回答

6
using System.Net.NetworkInformation    

IPGlobalProperties properties = IPGlobalProperties.GetIPGlobalProperties();
TcpConnectionInformation[] tcpInfoList = properties.GetActiveTcpConnections();

好的解决方案...我实际上并不知道有一个简单的托管调用可以获取这样的信息。 - Noldorin

0

0

我不太明白问题的具体内容,但是如果你有一份地址列表和一个监听某些端口的软件,可以尝试使用 Socket 类连接到那里:

Socket m_Socket = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);
m_Socket.Connect(serverEndPoint);

最终尝试捕获异常...

如果您的代码中已经建立了连接,您可以检查m_Socket.Connected属性。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接