telnet新手。有一個服務器列表,我需要檢查,如果每個服務器都能夠成功地通過端口(25)遠程登錄某個服務器(10.20.30.100)。如何從遠程服務器進行遠程登錄 - c#
這個想法是從一個地方運行一個控制檯應用程序,它將檢查所有列出的服務器。
遵循@ freedomn-m的解決方案,但仍然卡住。
var centralServer = "10.20.30.100";
var centralPort = 25;
var servers = "11.12.13.201,11.12.13.202,11.12.13.203";
var telnetPort = 23;
foreach (var server in servers.Split(','))
{
TcpClient tc = null;
try
{
tc = new TcpClient(server, telnetPort);
tc.Client.Send(System.Text.Encoding.ASCII.GetBytes("telnet " + centralServer + " " + centralPort));
}
catch (SocketException se)
{
// telnet failed on 'server'
}
finally
{
if (tc != null)
{
tc.Close();
}
}
}
即使centralserver或centralport無效/不正確,也不會發生異常。代碼仍然繼續完成for循環。我無法知道一臺服務器是否能夠成功telnet。我應該如何繼續下去。
嗯,有什麼問題?你錯過了打開TCP客戶端,如果TCP客戶端連接,那麼你的telnet服務器是可達的... – Gusman
因此,你想確定你是否可以打開從該列表中的每個服務器到一個共同的「其他」的telnet連接,服務器?那麼當然你需要依次打開你所在的服務器上的telnet連接,並從那裏打開向前的telnet連接? – ClickRick