2016-10-23 21 views
1

java.net.ConnectExceptionが発生しました:192.168.2.100(ポート22)への接続に失敗しました:接続に失敗しました:ECONNREFUSED接続が拒否されました)。SSH経由でサーバーに接続するときは、JSCH-0.1.54をAndroidにインストールします。接続エラー:192.168.2.100への接続に失敗しました(ポート22)AndroidおよびJSCHでECONNREFUSED

ファイアウォールは、IPアドレスが通過できるように設定されています。 パテを介してWindowsからサーバーへのSSH接続が可能です。 サーバのIPアドレスは問題ありません。

それ以外に何ができますか?

私が使用しているコードは以下の通りです:

protected Long doInBackground(String... params) 
{ 
    try 
    { 
     System.setProperty("http.keepAlive", "false"); 
     JSch jsch = new JSch(); 
     Session session = jsch.getSession("root", "192.168.2.100", 22); 
     session.setPassword("Password"); 
     session.setTimeout(10000); 
     Properties props = new Properties(); 
     props.put("StrictHostKeyChecking", "no"); 
     session.setConfig(props); 
     session.connect(); 
     ChannelExec channel = (ChannelExec) session.openChannel("exec"); 
     if(params[0]=="poweroff") 
     { 
      LogPublic("Server wird heruntergefahren"); 
     } 
     else if(params[0]=="reboot") 
     { 
      LogPublic("Server wird neugestartet"); 
     } 
     channel.setCommand(params[0]); 
     channel.connect(); 
     channel.disconnect(); 
     session.disconnect(); 
     jsch.removeAllIdentity(); 
     jsch = null; 
     return new Long(1); 
    } 
    catch (Exception ex) 
    { 
     LogPublic(ex.getMessage()); 
     return new Long(0); 
    } 
} 
+0

例外スタックを表示してください。また、あなたのアンドロイドホストのIPとマスクは何ですか?ネットワークに接続された実際のデバイスやエミュレータを使用してアプリを実行していますか? –

+0

デバイスからスタンドアロンSSH端末アプリケーションを使用してホストに接続できますか? –

+0

@Ahmed Ghonim:私はこれを行うことができます。今日後でそれを追加します。私は今問題が私のDHCPであると仮定します...私のモバイルは私のNASと同じIPアドレスを持っています:/私はネットワークに接続された実際のデバイスでアプリを実行しています。 – FranzHuber23

答えて

0

ソリューションは、これはIPの競合を引き起こしたとして、私のルータのDHCP範囲外のサーバーの静的IPアドレスを設定することでした。

関連する問題