Чтобы проверить определенный порт TCP (myPort
) на известном сервере, используйте следующий фрагмент. Вы можете перехватить исключение System.Net.Sockets.SocketException
, чтобы указать, что порт недоступен.
using System.Net;
using System.Net.Sockets;
...
IPHostEntry myHostEntry = Dns.GetHostByName("myserver");
IPEndPoint host = new IPEndPoint(myHostEntry.AddressList[0], myPort);
Socket s = new Socket(AddressFamily.InterNetwork,
SocketType.Stream, ProtocolType.Tcp);
s.Connect(host);
Далее, специализированные проверки могут попробовать ввод-вывод с таймаутами на сокете.