【问题标题】:Java Ganymed ssh tunnelling... How to check that a tunnel is still open?Java Ganymed ssh 隧道...如何检查隧道是否仍然打开?
【发布时间】:2010-08-23 15:41:26
【问题描述】:

我有一个使用 Ganymed 的 LocalPortForwarder 类创建的 ssh 隧道。它工作正常。问题是如何(以 Java 编程方式)检查隧道是否仍处于打开状态和活动状态?

作为参考,这里是创建隧道的代码 sn-p(为简洁起见,删除了错误检查):

Connection conn = new Connection(remoteHostName);

conn.connect();

boolean isAuthenticated = conn.authenticateWithPassword(username, password);

LocalPortForwarder lpf1
               = conn.createLocalPortForwarder(newPort,
                                               remoteHostName, 
                                               Integer.parseInt(remoteHostPort));

【问题讨论】:

  • 你认为什么是“开放和活跃的”?
  • 即未超时。无需重新登录即可立即使用。

标签: java ssh tunnel ganymede


【解决方案1】:

检测任何 TCP 连接状态的唯一方法是尝试使用它。它没有像 SNA 过去那样的“心跳”。

【讨论】:

    猜你喜欢
    • 2011-01-01
    • 1970-01-01
    • 2020-09-11
    • 2011-05-20
    • 1970-01-01
    • 2016-02-17
    • 2011-12-05
    • 2017-07-10
    • 2015-04-02
    相关资源
    最近更新 更多