首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >[C#] 判断IP端口是否开启

[C#] 判断IP端口是否开启

作者头像
科控物联
发布于 2023-10-01 13:12:56
发布于 2023-10-01 13:12:56
2.2K0
举报
文章被收录于专栏:科控自动化科控自动化
代码语言:javascript
复制

 static bool IsPortOpen(string host, int port)
{
  try
  {
    IPAddress ipAddress = GetIpAddress(host);
    if (ipAddress == null)
    {
      return false;
    }
    IPEndPoint remoteEP = new IPEndPoint(ipAddress, port);
    using Socket socket = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);
    socket.Connect(remoteEP);
    return true;
  }
  catch
  {
    return false;
  }
}
static IPAddress GetIpAddress(string host)
{
  try
  {
    IPAddress[] addressList = Dns.GetHostEntry(host).AddressList;
    foreach (IPAddress iPAddress in addressList)
    {
      if (iPAddress.AddressFamily == AddressFamily.InterNetwork)
      {
        return iPAddress;
      }
    }
    return null;
  }
  catch
  {
    return null;
  }
}

通过控制台也可以确认

代码语言:javascript
复制
telnet 10.168.1.100 80

再次确认一下,没有启用的808端口。需要接近30s才返回结果

网关应用之 多协议转Modbus

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2023-10-01 08:44,如有侵权请联系 cloudcommunity@tencent.com 删除
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档