The last blog uses
ssh fb-react01-teer.xx.yy.zz
to log in to remote server. But do you notice thatxx.yy.zz
should not be entered by us either
机器名 | IP | 端口 | 用户名 | 密钥 |
---|---|---|---|---|
gg-android01-node.xx.yy.zz | 48.132.144.01 | 22000 | corvo | ~/.ssh/id_rsa_test |
gg-android02-node.xx.yy.zz | 48.132.144.02 | 22000 | corvo | ~/.ssh/id_rsa_test |
gg-android03-node.xx.yy.zz | 48.132.144.03 | 22000 | corvo | ~/.ssh/id_rsa_test |
gg-android04-node.xx.yy.zz | 48.132.144.04 | 22000 | corvo | ~/.ssh/id_rsa_test |
ms-vscode01-master.xx.yy.zz | 42.188.144.01 | 22000 | corvo | ~/.ssh/id_rsa_test |
ms-vscode02-master.xx.yy.zz | 42.188.144.02 | 22000 | corvo | ~/.ssh/id_rsa_test |
ms-vscode03-master.xx.yy.zz | 42.188.144.03 | 22000 | corvo | ~/.ssh/id_rsa_test |
fb-react01-teer.xx.yy.zz | 59.143.138.01 | 22000 | corvo | ~/.ssh/id_rsa_test |
fb-react02-teer.xx.yy.zz | 59.143.138.02 | 22000 | corvo | ~/.ssh/id_rsa_test |
fb-react03-teer.xx.yy.zz | 59.143.138.03 | 22000 | corvo | ~/.ssh/id_rsa_test |
What we really want?
We want to use ssh fb-react01-teer
to log in.
How to implement?
Obviously, OpenSSH does not use the hostname to connect to the remote host, because TCP connections use IP addresses.
OpenSSH does a DNS lookup first to convert fb-react03-teer.xx.yy.zz
to 59.143.138.03
.
What if we query the real IP address by an incomplete hostname and offer to the OpenSSH,
it seems we can omit the .xx.yy.zz
.
Get the IP address
There is a command in Linux called getent
1 | # Use getent to get a record |
Pass IP address to OpenSSH
Thers is another way to use ProxyCommand
.
1 | Host gg-* ms-* fb-* |
This configuration will allow you to use ssh fb-react01-teer
. A little wild, but very effective.
Extend ProxyCommand
You can see that the ProxyCommand
help us to use IP address directly. It gave me more inspiration.
Well, there are some hosts in company I don’t the excat name but only address. So I create an alias for these hosts.
1 | Host ttt-* |
It converts ttt-1.2.3.4
to 1.2.3.4
, and you can use this command:
1 | ~ ❤ ssh ttt-1.2.3.4 |
Hope you enjoy with this simple extension.