同时使用两个 IP 地址的 ssh 远程转发?

同时使用两个 IP 地址的 ssh 远程转发?

我一直在使用 sublimeremotesubl包,这样我就可以使用 sublime 作为文本编辑器在远程服务器上工作。关注这个remotesublgithub教程,我能够使用远程端口转发等来设置系统。现在我的问题是,如果我有两个想要同时处理的远程服务器,我可以使用相同的端口吗?

例如我当前的~/.ssh/config设置如下:

Host serverip1
    RemoteForward 52698 localhost:52698
    User foo

Host serverip2
    RemoteForward 52698 localhost:52698
    User goo

现在说一下,如果我在 server1 上使用一个脚本打开 Sublime,在 server2 上使用另一个脚本打开 Sublime,两个服务器都使用端口 52698 进行转发,是否会发生冲突问题?

我不熟悉端口转发,也无法在网上找到正确的信息。因此我想知道这是否可行,如果可行,我应该如何正确设置?任何帮助都将不胜感激!

答案1

一般来说:两个进程不能尝试监听同一个本地端口1(因为无法区分它们),但两个进程可以连接到同一个远程端口(因为有其他东西可以保持连接的不同)。

由于这是Remote转发——即“监听”端在两个不同的服务器上,并且两个 SSH 客户端都只是連接至您的本地 localhost:52698 – 它不应该冲突。(假设 Sublime 可以处理多个入站连接。)

Local转发将在 SSH 客户端设置一个侦听器并连接到 SSH 服务器上,因此尝试为同一端口设置两个转发规则冲突。)


1(从技术上讲,相同的地址:端口。通过在转发选项中指定监听地址,可以有两个监听器。)

相关内容