A客户端(局域网内网) B服务端(外网)
A客户端发送指令 “Down#1#” --------->B服务端
B服务端通过 EndPoint ep = socket.RemoteEndPoint;得到A端IP 和端口号(每次得到的这个端口号都是随机的)
B服务端得到ep后,发指令给A (把端口号发送给A),然后A客户端又作为服务端来监听这个端口;
B服务端然后开始用该端口 用NetworkStream 流发送给A端
A端又作为服务端侦听这个端口来接收数据,实现下载,这样分析,可不可以实现?
哪位能给个例子,谢谢
A客户端发送指令 “Down#1#” --------->B服务端
B服务端通过 EndPoint ep = socket.RemoteEndPoint;得到A端IP 和端口号(每次得到的这个端口号都是随机的)
B服务端得到ep后,发指令给A (把端口号发送给A),然后A客户端又作为服务端来监听这个端口;
B服务端然后开始用该端口 用NetworkStream 流发送给A端
A端又作为服务端侦听这个端口来接收数据,实现下载,这样分析,可不可以实现?
哪位能给个例子,谢谢
A客户端使用端口AA发送指令 “Down#1#” --------->B服务端 A客户端监听端口AAB服务端通过 EndPoint ep = socket.RemoteEndPoint;得到A端IP 和端口号(每次得到的这个端口号都是A客户端的AA端口在路由器中的映射端口,是随机的) B服务端得到ep后,开始用该ep 用NetworkStream 流发送给A端
结构很简单的,当然你也可以不这么麻烦,直接使用A客户端的连线,用NetworkStream 流发送给A端