我的服务器只有一个ipv6地址,我的电脑可以通过这个地址直接ssh
到它。但是,当我尝试在Pycharm中的此服务器上添加远程解释器时,它会在看到ipv6地址时告诉我SFTP host is invalid
。
我怎样才能让它发挥作用?谢谢!
更新:添加括号[2001:da8:...]
有助于传递主机语法检查。但现在单击“确定”,Pycharm告诉我“java.net.SocketException:Protocol family unavailable”。怎么通过这个?
答案 0 :(得分:2)
最后,我得到了工作。
首先,有效的IPV6 SFTP地址必须用括号括起来。也就是说,您应该写2001:da8:201:1146:226:b9ff:....
。
[2001:da8:201:1146:226:b9ff:....]
其次,如果你这样做,你会发现Pycharm告诉你“java.net.SocketException:Protocol family unavailable”并且拒绝连接。这是在JDK 1.7下运行的Pycharm问题(是的,Pycharm基于Java)。要解决这个问题:
-Djava.net.preferIPv4Addresses=true
,但我不确定它是否重要。答案 1 :(得分:1)
如果错误来自PyCharm(而不是ssh),我建议在~/.ssh/config
中创建一个别名,例如:
Host myipv6host
HostName 2001:da8:201:1146:226:b9ff:....
这样你可以告诉pycharm连接到myipv6host,它永远不会看到ipv6地址。