cn.tom.nat.NatTrans Maven / Gradle / Ivy
The newest version!
package cn.tom.nat;
/**
* NAT 代理模式, 透传转发
* UDP 穿透, 记录 各自的 address 即可, 映射 address 关系链, udp 不需要
* TCP 穿透, 记录 各自的 tcpSeesion即可, 映射 Session 关系链,tcp需要维持session
* 就这么简单
* @author tomsun
*
*/
public class NatTrans {
/*3.打洞过程 UDP P2P
(1)ClientA请求Server。
(2)ClientB请求Server。
(3)Server把ClientA的IP和端口信息发给ClientB。
(4)Server把ClientB的IP和端口信息发给ClientA。
(5)ClientA利用信息给ClientB发消息。(A信任B) 此时server通知B, B就可以直接发消息给A
(6)ClinetB利用信息给ClientA发消息。(B信任A)
(7)连接已经建立。两者可以直接通信了
*/
}