有个东西叫NAT穿透,根据通信双方所在局域网NAT类型的不同,需要采用不同的NAT穿透方式。
其中有一些场景无法穿透,遇上这类用户就只能流量从公网服务器转发通信,其他情况下,只需要建立连接阶段服务器参与即可。
也就是你的需求有实现的可能。
但是NAT穿透的流程很繁琐很复杂,也不好调试,对于初学者来说,自己写一套P2P机制很困难,可以找找现成的库或者应用,如Zero-Tier等
至于楼下那个不懂装懂的,给你扯什么DDOS什么塞病毒的,直接无视吧。(如果你程序写的差,确实可能如此,但不管你做不做P2P功能都会如此)