任何人都可以建議如果遠程服務器可用,檢查(使用.NET 3.5)的最佳方法是什麼?C#檢查遠程服務器
我想用下面的代碼,但想知道,如果社會上有另一種選擇存在更好的方法。
TcpClient client = new TcpClient("MyServer", 80);
if (!client.Connected)
{
throw new Exception("Unable to connect to MyServer on Port 80");
}
client.Close();
我的印象是,使用Ping對象在企業內聯網或有防火牆的網絡中是不可取的?我可能應該說我想檢查公司網絡上的可用性。任何人都能評論? – Kane 2009-06-25 11:21:45
@Kane:爲什麼不可取? ping是檢查主機可用性的標準,經過嘗試和測試的方式。打開大量的HTTP連接並且無所事事更可能相當於濫用/惡意。如果ping端口是關閉的,那麼這是一個不同的問題 - 但是,它應該被打開。 – Noldorin 2009-06-25 11:25:09
我認爲如果防火牆阻止Ping(ICMP Echo)數據包,Ping可能無法工作?難道這是真的,因爲我真的不知道? – Kane 2009-06-25 11:29:08