.Net の TcpClient を使用すると、接続が確立できるかどうかをテストできます。そのため、リモート ポートが開いているかどうかを教えてください。
このコードを確認してください:
TcpClient tcpCLient = new TcpClient();
try
{
tcpCLient.Connect("www.google.com", 80);
Console.WriteLine("Yes");
Console.ReadLine();
}
catch (Exception)
{
Console.WriteLine("No");
Console.ReadLine();
throw;
}
www.google.com の TCP ポート 80 をテストしましたが、開いているため、コンソールに「はい」というメッセージが表示されます。ここで、閉じている www.google.com の TCP ポート 70 を試します。
TcpClient tcpCLient = new TcpClient();
try
{
tcpCLient.Connect("www.google.com", 70);
Console.WriteLine("Yes");
Console.ReadLine();
}
catch (Exception)
{
Console.WriteLine("No");
Console.ReadLine();
throw;
}
例外が発生することが予想されたので、コンソールに「いいえ」と表示されるはずです。なぜ何も起こらないのですか?ありがとうございました!!
更新: コンソールは、数分後もこの状態を維持します。