无法使用主机名连接到linux机器(能够使用带有SharpSSH和C sharp的Ip地址连接)

时间:2011-04-20 07:34:25

标签: c# linux

我正在尝试使用主机名连接到Linux远程计算机,但是使用Shrp SSH作为接口,它失败了(但我能够使用Ipaddress进行连接)。这是我的示例代码

public void ConnectToLinuxParttion()
{
    string username = "aaaa";
    string password = "aaaa";
    string partionName = Lmac;

    try
    {
        SshExec exec = new SshExec(partionName,username,password);
        exec.Connect();
        Console.WriteLine("OK");
        exec.Close();
    }
    catch (Exception ex)
    {
        Console.WriteLine("The Reason for Not Connecting is " + ex.ToString());
    }
}

我得到的错误是:

  

未连接的原因是Tamir.SharpSsh.jsch.JSchException:    System.Net.Sockets.SocketException(0x80004005):请求的名称是    有效并且在数据库中找到,但它没有正确的关联数据   System.Net.Dns.InternalGetHostByName(字符串   

中的hostName,Boolean includeIPv6)      

System.Net.Dns.GetHostByName(字符串   

的hostName)      

Tamir.SharpSsh.java.net.Socket..ctor(字符串   

的主机,Int32端口)      

Tamir.SharpSsh.jsch.Util.createSocket(字符串   

的主机,Int32端口,Int32超时)      

Tamir.SharpSsh.jsch.Session.connect(的Int32   

时的connectTimeout)      

Tamir.SharpSsh.jsch.Session.connect()

     

Tamir.SharpSsh.SshBase.ConnectSession(Int32 tcpPort)

     

Tamir.SharpSsh.SshBase.Connect(Int32 tcpPort)

     

Tamir.SharpSsh.SshBase.Connect()

请帮助解决此问题

当我们在我们的机器上安装Bonjour服务并且在Linux机器上添加AVahi时,它工作正常。本地分区名称它们只能在相同的子网地址中工作,否则它不会。

0 个答案:

没有答案