vscode连接ssh用户名相同 ip相同 但是端口号不同的情况
目前需求是同一个ip同一个用户名但是通过不同端口号去区分机器
1. 远程连接命令为
和本地ssh命令一致
ssh user@ip -p portID
2. 实际遇到的问题
2.1 本地终端可以正常区分端口机器,但是vscode没有。
【现象】不管怎么输入端口号,vscode使用连接的是其中一台服务器。
【原因】
这种情况一般出现在vscode目前已经连接了其中一台有重复ip现象的服务器。
vscode的ssh配置文件默认的Host是ip,当不主动修改的时候,vscode会认为已经连接上了这个ip的服务器。此种情况哪怕你打开配置文件,上面显示的是不同端口,仍然会只连接目前已经连接上的那个。
【解决办法】打开vscode的configure ssh host ,默认是第一个。修改Host值,可以改成不一样但是能区分服务器的值。
例如
【仍然可能有的问题及其解决办法】
- 修改后没解决——查看已经登陆的服务器状态,如果在线,那么更改后不起作用,需要重新打开。如下图
- 不要reload window,此时host 已经更改,reload是找不到之前的名字的,直接reload会一直告诉你链接不上需要重试。
如图,在线状态修改了config文件后显示的仍然是原来的ip,需要推出重新登录。
3. 总结
需要修改ssh配置文件的Host值。
默认mac: User/你的名字/.ssh/config
win应该是在前面加上C盘。user大小写可能需要修改。