问题描述
我要挂到远程桌面上。由于必须通过Internet进行连接,因此我使用ngrok暴露了远程端的ssh端口(22),一切正常。我使用命令连接到桌面
ssh username@2.tcp.ngrok.io -p portno
当我从显示以下内容的行启动ngrok服务时,从远程获得portno
Forwarding tcp://2.tcp.ngrok.io:portno -> localhost:22
但是,每次我在远程端启动新的ngrok会话时,都会生成一个新的portno
。现在,除非打开辅助连接(通常使用teamviewer),否则我将无法知道该端口号是什么。
如何使用固定的portno
启动ngrok服务。这是因为我想在启动时使用ngrok服务,因为我必须重启远程桌面几次,但仍想使用ssh连接到桌面。
谢谢。
解决方法
你需要在 ngrok 上预留一个 TCP 地址,它会给你一个固定地址。
要将隧道与保留的 TCP 地址关联,您应该在启动隧道时在 ngrok 配置中包含 remote-addr
选项。
来自 eclipse-settings-maven-plugin 的示例:ngrok tcp --region=us --remote-addr 1.tcp.ngrok.io:20301 22