ssh:无法parsing主机名:节点名或服务器名提供,或不知道

我正在尝试使用Raspberry Pibuild立一个VPN,第一步是从本地networking外部获取ssh设备。 不pipe出于什么原因,这已经certificate是不可能的,我也没有丝毫的线索。 当我尝试ssh到我的服务器与user@hostname ,我得到的错误:

 ssh: Could not resolve hostname [hostname]: nodename nor servname provided, or not known 

不过,我可以login到服务器,

 ssh user@[local IP] 

服务器是运行Raspbian的最新发行版的Raspberry Pi Model B,而我尝试连接的机器是运行Mavericks的Macbook Pro。 当我build立Raspbian时, ssh在Raspberry Pi上启用了。

我已经仔细阅读了堆栈溢出几个小时试图看看是否有其他人有这个问题,我还没有find任何东西。 我发现每一个ssh教程都说,我应该能够在远程机器上设置它并使用主机名从任何地方login,而且我从来没有成功过。

最近我遇到了同样的问题。 我能够在我的networking上ssh到我的pi,但不能从我的家庭networking外部。

我已经:

  • 在我的家庭networking上安装并testing了ssh。
  • 为我的pi设置一个静态IP。
  • 设置一个dynamicDNS服务,并在我的pi上安装该软件。 我参考了这些设置静态IP的说明,还有更多的指导资源。

另外,我在我的路由器上设置了端口,用于托pipe一个网站,我甚至将端口22转发到我的pi的静态IP地址作为ssh,但是我将这个字段留空,指定正在执行端口转发的应用程序路由器。 无论如何,我在这个领域加了'ssh',VOILA! 一个从任何地方工作的SSH连接到我的pi。

我会写出我的路由器的端口转发设置。

(ApplicationTextField)_ssh(外部端口)_22(内部端口)_22(协议)_Both(到IP地址)_192.168.1。###(启用)_checkBox

虽然端口转发设置对于不同的路由器可能会有所不同,所以请为您的路由器查找路线。

现在,当我在家庭networking之外时,通过input以下内容连接到我的pi:

ssh pi @ [主机名]

然后我可以input我的密码并连接。

我有同样的问题连接到远程机器。 但我设法login如下:

 ssh -p 22 myName@hostname 

要么:

 ssh -l myName -p 22 hostname 

如果你在Mac上,重新启动DNS响应者为我解决了这个问题。

 sudo killall -HUP mDNSResponder 

如果您需要从世界任何地方访问您的VPN,您需要注册一个域名,并指向您的VPN /网关的公共IP地址。 您也可以使用dynamicDNS服务将主机名连接到您的公共IP地址。

如果您只需从本地networking的 Mac中将ssh发送到您的Raspberry,请执行以下操作:在您的Mac上,编辑/etc/hosts 。 假设树莓有主机名“浆果”和IP“172.16.0.100”,添加一行:

 # ip hostname 172.16.0.100 berry 

现在: ssh user@berry应该工作。

我遇到了同样的问题,我可以通过向主机名添加.local来解决问题,ala ssh user@hostname.local

我有同样的问题:首选项 – >共享 – >远程login中显示的地址不起作用,我得到了一个'…节点名或服务器名提供,或不知道'。 但是,当我手动编辑设置(在首选项 – >共享 – >远程login – >编辑),并启用“使用dynamic全局主机名”,它突然工作。

在这里输入图像说明

在这里输入图像说明

尝试访问Github时发生了这种情况。 问题是,我习惯于这样做:

git remote add <xyz> ssh:\\git@github.com......

但是,如果你有这个问题的错误,删除ssh:\\可能会解决这个问题。 它解决了我的!

请注意,您必须执行git remote remove <xyz>然后重新添加不带ssh:\\的远程URL。

如果你的命令是:

 $ ssh -p 1122 path/to/pemfile user@[hostip/hostname] 

你也将面临同样的错误

 ssh: Could not resolve hostname [hostname]: nodename nor servname provided, or not known 

当你想念ssh的选项-i /path/to/pemfile

所以命令应该是:

 $ ssh -p 1122 -i path/to/pemfile user@[hostip/hostname] 

我需要连接到远程的亚马逊服务器

ssh -i ~/.ssh/test.pem -fN -L 5555:localhost:5678 ubuntu@hostname.com

我得到以下错误。

ssh: Could not resolve hostname <hostname.com>: nodename nor servname provided, or not known

解决scheme适用于Mac OSX

Ping主机解决了这个问题。 我正在使用Mac OSX Seirra。

ping hostname.com

现在问题解决了。 能够连接到服务器。

:我也试过这个解决scheme 。 但它没有解决。 然后ping解决了这个问题。

试试这个,考虑你允许的端口。 例如,将.pem文件存储在“ Documents文件夹中。

现在要访问它,所有你需要做的就是cd [directory] ,它将你移动到分配文件的目录。 您可以先inputls ,列出您当前所在的目录内容:

 ls cd /Documents chmod 400 mycertificate.pem ssh -i "mycertificate.pem" ec2-user@ec2-1-2-3-4.us-compass-0.compute.amazonaws.com -p 80