模仿 Natter 写了一个 rust 版本的 tcp 打洞器
[Natter](
https://github.com/MikeWang000000/Natter.git)
程序会开启监听, 然后试着
在同样的网络拓扑下, 试了几个环境, 都有不同的效果
1. Ubuntu: 测试最正常, 能够正常打洞, 远程连接也有响应
2. Windows: 开启监听后, 本地尝试连接是连不上的, 但是使用工具在其他地方尝试打开, 却是发现已经开启的(使用 natter 效果一样)
使用的工具[站长工具](
https://tool.chinaz.com/port)
在本地尝试连接的错误是: { code: 10061, kind: ConnectionRefused, message: "由于目标计算机积极拒绝,无法连接。" }
使用上面的工具发现外部能正常连接并打印出远程地址
3. fedora coreos: 跟 windows 情况一样
在本地尝试连接的错误是: { code: 111, kind: ConnectionRefused, message: "Connection refused" }
一开始以为是防火墙的问题, 然后测试测试着发现貌似跟防火墙关系不大, 在 windows 下, 没有添加端口的入站规则, 从外部进行连接也是可以的
所以现在十分凌乱, 不太清楚还有什么可能性会导致这种情况
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
https://www.v2ex.com/t/990696
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.