从Virtualbox Guest到DynDNS地址的SSH

时间:2016-01-07 18:04:05

标签: networking ssh virtualbox

我将Windows 10作为主机,Manjaro安装为Virtualbox上的Guest。 我已经在安装了ssh的另一个房子上设置了Debian服务器。我在Debian的网络上设置了一个dyndns,所以我可以远程访问它。

例如......

从地址12.34.56.78我ssh到foo.dyndns.org:1234。此端口将我重定向到192.168.1.5:22,因为这是我的Debian机器并且建立了连接。我可以从Windows 10以及我的Android和12.34.56.78中的任何其他设备或3G中执行此操作。

但是...

当我尝试这样做时

 tbl <- table(df1$species)>1
 df1[df1$species %in% names(tbl)[tbl],]

来自Virtualbox的Manjaro Guest我收到以下错误:

$ ssh foo.dyndns.org:1234

所以我做了ifconfig,我看到我的inet地址是10.0.2.15。我将virtualbox的网络适配器从NAT更改为Bridged,因此我可以获得一个局域网IP,并获得主机的IP,192.168.2.4。所以我又试了一次,但仍然没有用。

此外,如果我在同一网络中尝试从vm连接到服务器

ssh: Could not resolve hostname foo.dyndns.org:1234: Name or service not known

它有效。在这种情况下,virtualbox的网络适配器是NAT。

如果我从我的android(connectbot)尝试此命令。

我可以从Windows的PuTTY以相同的方式连接。

所以我的问题是:

  • 可以吗?

  • 如果是这样,怎么样? (为什么?)

  • VBox Guest可以获得与主机不同的LAN IP吗?

我还应该提供更多信息吗?

我已经在这里和谷歌搜索了几天,所有我找到了解决方案,如何有人可以ssh INTO一个虚拟机。没有人(从我看到的)问相反的事情。

1 个答案:

答案 0 :(得分:1)

检查ssh的手册页显示命令行选项的格式:

ssh [...] [-p port] [...] [user@]hostnamessh

这只是描述,您需要更改

ssh foo.dyndns.org:1234

ssh -p 1234 foo.dyndns.org

如果域正确解析到ip地址。