1

我正在尝试 porgram 一个 ssh 隧道程序,但似乎不再使用的端口仍然不可用。我的隧道结构示例:

第一条隧道:本地端口-> 22,本地IP:1.2.3.4,用户...,密码...,隧道端口-> 5000

下一条隧道:本地端口 -> 5000,本地 IP:localhost,用户...,pw..,隧道端口 -> 5001

下一条隧道:本地端口 -> 5001,本地 IP:localhost,用户...,pw..,隧道端口 -> 5002

到目前为止,一切都很好。现在这是我尝试关闭所有隧道的代码:

private void sortiiii(Map<Session, Integer> sessions) throws JSchException{
    Map<Session, Integer> map = sessions;
    ValueComparator bvc = new ValueComparator(map);
    TreeMap<Session, Integer> sorted_map = new TreeMap(bvc);

    sorted_map.putAll(map);
    for (Session key : sorted_map.keySet()) {
        System.out.println(sorted_map.get(key));
        String [] alle = key.getPortForwardingL();
        for (int i=0; i<alle.length; ++i){
            System.out.println(alle[i]);
        }


        key.delPortForwardingL(sorted_map.get(key));
        key.disconnect();
    }
}

地图已排序,因为一条隧道需要之前的一条,依此类推......

谁能想象为什么在我清理连接后端口 5000、5001、5002... 不可用?

4

0 回答 0