递归火山软件开发平台

标题: 【求助】非局域网如何通讯 [打印本页]

作者: xiah0127    时间: 2022-7-26 19:57
标题: 【求助】非局域网如何通讯
RT,小白一枚,想在多台电脑直接进行通讯,用了案例的HP-SOCKET,成功在同一个局域网下进行了通讯。

但是!!!我想在另一台非局域网下进行通讯却失败了,尝试了公网IP和IPv4地址不行,尝试了转发端、代理端也不行,应该是能力不够,最后一天都没解决。
假设场景如下:三台电脑,不在同一个局域网,都有公网IP,一个服务端,两个客户端,如何进行通讯呢。

求助!!

作者: xrea    时间: 2022-7-26 21:30
是不是程序在服务器中的端口被防火**拦截了
作者: xiah0127    时间: 2022-7-26 22:02
xrea 发表于 2022-7-26 21:30
是不是程序在服务器中的端口被防火**拦截了

用的私人电脑测试的,也不行
作者: 1325901607    时间: 2022-7-26 22:04
你确定你的电脑在外面的链接上吗?
有公网IP吗?
下个花生壳弄一下就好了
看好防火**和端口
作者: xiah0127    时间: 2022-7-26 22:12
哪里有问题吗,真的能力有限找不出来。。。

作者: xiah0127    时间: 2022-7-26 22:15
图里的客户端地址换成公网的也不行,换成公网的地址本机都连不上
作者: xiah0127    时间: 2022-7-26 22:17
1325901607 发表于 2022-7-26 22:04
你确定你的电脑在外面的链接上吗?
有公网IP吗?
下个花生壳弄一下就好了

大佬有空看下楼下的图吗
花生壳的话是用在服务端还是客户端的。。。
作者: 创世魂    时间: 2022-7-26 22:53
xiah0127 发表于 2022-7-26 22:12
哪里有问题吗,真的能力有限找不出来。。。

。。。装宽带的ip都不是独立ip,直接用ip访问肯定是行不通的。。。要端口转发一类的操作,上花生壳啥的。
作者: xiah0127    时间: 2022-7-27 00:09
创世魂 发表于 2022-7-26 22:53
。。。装宽带的ip都不是独立ip,直接用ip访问肯定是行不通的。。。要端口转发一类的操作,上花生壳啥的。 ...

谢谢,我再研究一下
作者: 0晨鹤0    时间: 2022-7-27 13:38
本帖最后由 0晨鹤0 于 2022-7-27 13:39 编辑

LZ知识欠缺的有点多。

首先,LZ没有公网IP。因为你通过网页查的 IP 和系统显示的 IP 不一样。系统显示的是 100.83.* 这明显是电信的局域网 IP。

其次。公网 IP 不代表可以通讯。

通常我们的网络架构是:入户线 - 路由器 - 电脑。
假设路由器拿到了公网IP,还需要在路由器配置端口转发,这样这个 IP 接受的数据包才能转给电脑。

除此之外,默认情况下路由器和电脑都是不允许外部数据传入,所以分别需要配置防火**。

如果你的架构是 入户线 - 电脑。那么就不需要配置端口转发了,依然要配置电脑的防火**。

如果你是公,.司环境那更复杂了,你通常也没权限配置路由器的转发。建议放弃走穿透。
作者: 0晨鹤0    时间: 2022-7-27 13:44
本帖最后由 0晨鹤0 于 2022-7-27 13:45 编辑

另外,家庭环境直连通信问题多的是。

需要牵扯的技术包括但不限于:udp 打洞,UPnP。并且这还依赖路由器的配置。随着 Bilibili 迅雷等滥用 UPnP 把用户作为 P2P 节点,越来越多的路由器系统开始默认关闭 UPnP 了。

综上,如果你没有强烈的需求(例如固定客户使用),整一个服务器是最有性价比的选择。别忘了,开发和维护成本也是成本。
作者: 赵曰天    时间: 2022-7-27 15:50
使用穿透软件
或者把服务端放在云服务器,设置一下开发端口这些就可以通信了。
老马家的新人优惠3年1m 单核2.4 才40块钱
作者: xiah0127    时间: 2022-7-27 16:47
0晨鹤0 发表于 2022-7-27 13:44
另外,家庭环境直连通信问题多的是。

需要牵扯的技术包括但不限于:udp 打洞,UPnP。并且这还依赖路由器的 ...

谢谢耐心回复,今天买了个服务器,设置了一个协议端口就可以了。自己瞎弄的,不知道对不对。。。
作者: xiah0127    时间: 2022-7-27 16:50
赵曰天 发表于 2022-7-27 15:50
使用穿透软件
或者把服务端放在云服务器,设置一下开发端口这些就可以通信了。
老马家的新人优惠3年1m 单核 ...

谢谢回复,没蹲到这么便宜的,估计过年有这种活动。先买了个50/年的测试项目
作者: 4463424    时间: 2022-7-27 17:35
其实有个非常方便的解决办法,那就是用IPV6地址,可以直接访问!
作者: xiah0127    时间: 2022-7-27 19:20
4463424 发表于 2022-7-27 17:35
其实有个非常方便的解决办法,那就是用IPV6地址,可以直接访问!

....IPV4还没弄明白呢哈哈哈哈
作者: 4463424    时间: 2022-7-29 09:28
xiah0127 发表于 2022-7-27 19:20
....IPV4还没弄明白呢哈哈哈哈

其实就是把IPV4改成IPV6只不过看你家有没有开通IPV6!




欢迎光临 递归火山软件开发平台 (https://bbs.voldp.com/) Powered by Discuz! X3.4