首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何通过C#套接字使用ngrok tcp隧道

问如何通过C#套接字使用ngrok tcp隧道
EN

Stack Overflow用户
提问于 2020-12-17 02:58:50
回答 1查看 144关注 0票数 2

我需要借助ngrok连接到本地tcp服务器。我试着像这样联系:

代码语言:javascript
复制
Socket _clientSocket = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);
_clientSocket.Connect(IPAddress.Parse("<int>.tcp.ngrok.io"), 10543); // Port of tcp tunnel

但有一个问题,那就是它没有连接我。

EN

回答 1

Stack Overflow用户

发布于 2021-10-25 15:59:09

从网站下载ngrok文件,并使用以下命令启动它:

代码语言:javascript
复制
ngrok tcp (your port here)

当你启动它的时候,在转发之后你应该会看到域名。复制不带tcp://的文件,然后打开cmd并键入:

代码语言:javascript
复制
ping (ngrok domain eg. 2.tcp.ngrok.io:69420 becomes 2.tcp.ngrok.io)

为了使ping真正起作用,您需要删除域之后的端口,然后在cmd中您应该会看到一个ip,您应该会在输出中看到一个ip。将此ip复制到连接到服务器的代码的ip地址部分。选择端口作为域端口。

代码语言:javascript
复制
Client.Connect(IPAddress.Parse("ip in the cmd output"), port of the ngrok domain);

我相信这是可行的,虽然不是完全确定,但值得一试。

编辑:我尝试了上面列出的东西,IP似乎每隔一段时间就会改变一次,每次改变时它似乎仍然有效,而不需要我更新代码中的ip

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/65329516

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档