ssh – Hot to get external host names for each internal private addresses?


My lab has a private network like this

(public address: 133.3.133.133, host name: my.lab.host.name)
lab-gateway (private address: 192.168.0.1)
 |__labgpu01 (private address: 192.168.0.3)
 |__labgpu02 (private address: 192.168.0.4)

How can I directly point to labgpu01 from public internet ?

I want to do sth like

.ssh/config
 Host gpu01
     HostName be.internally.resolved.to.labgpu01.hostname
     User remoteuser

I am not familiar with network, and I really hope somebody could help me, so I can connect my vscode to my gpuserver. 😭😭😭

I always do

localuser@local ~ $ ssh lab
remoteuser@lab-gateway ~ $ ssh labgpu01
remoteuser@labgpu01 ~ $

with .ssh/config

Host *
    AddKeysToAgent yes
Host lab
    HostName my.lab.host.name
    User remoteuser

To access the gpuserver from our home, we now use ssh tunnel
ssh -L 8888:localhost:9000 remoteuser@my.lab.host.name -t ssh -L 9000:localhost:9000 labgpu01 and fire up a python jupyter server on the labgpu01, and access it via browser localhost:8888