`

记录一下我的p2p的UDP打洞过程【云服务器公网版本】

    博客分类:
  • JAVA
阅读更多
服务端连接了成功处理了两个客户端的登录并且成功打洞后的log记录



2014-07-19 22:41:20 INFO [com.p2p.udp_dig_hole.server.MainServer] 服务端开始启动!
2014-07-19 22:41:25 INFO [com.p2p.udp_dig_hole.server.MainServer] [StartP2PServiveChanege]我收到一个客户端发送的信息: [ip:14.20.224.132,port:42332 ],content: LOGIN|wood
2014-07-19 22:41:25 INFO [com.p2p.udp_dig_hole.server.MainServer] 进入了[dealLogin]方法-处理登陆请求.
2014-07-19 22:41:25 INFO [com.p2p.udp_dig_hole.server.MainServer] [dealLogin]向客户端返回当前所有用户的登录列表,其数据为:LIST_ONLINE|14.20.224.132,42332,wood|
2014-07-19 22:41:41 INFO [com.p2p.udp_dig_hole.server.MainServer] [StartP2PServiveChanege]我收到一个客户端发送的信息: [ip:14.20.224.132,port:42354 ],content: LOGIN|joy
2014-07-19 22:41:41 INFO [com.p2p.udp_dig_hole.server.MainServer] 进入了[dealLogin]方法-处理登陆请求.
2014-07-19 22:41:41 INFO [com.p2p.udp_dig_hole.server.MainServer] [dealLogin]向客户端返回当前所有用户的登录列表,其数据为:LIST_ONLINE|14.20.224.132,42332,wood|14.20.224.132,42354,joy|
2014-07-19 22:43:00 INFO [com.p2p.udp_dig_hole.server.MainServer] [StartP2PServiveChanege]我收到一个客户端发送的信息: [ip:14.20.224.132,port:42354 ],content: WANT_TO_CONNECT|14.20.224.132|41960|wood
2014-07-19 22:43:00 INFO [com.p2p.udp_dig_hole.server.MainServer] 进入了[notifyPunchHole]方法-通知打洞.
2014-07-19 22:43:00 INFO [com.p2p.udp_dig_hole.server.MainServer] [notifyPunchHole]给客户端返回信息:[PUNCH_HOLE_TO|14.20.224.132|42354]
2014-07-19 22:44:12 INFO [com.p2p.udp_dig_hole.server.MainServer] [StartP2PServiveChanege]我收到一个客户端发送的信息: [ip:14.20.224.132,port:42332 ],content: WANT_TO_CONNECT|14.20.224.132|42354|joy
2014-07-19 22:44:12 INFO [com.p2p.udp_dig_hole.server.MainServer] 进入了[notifyPunchHole]方法-通知打洞.
2014-07-19 22:44:12 INFO [com.p2p.udp_dig_hole.server.MainServer] [notifyPunchHole]给客户端返回信息:[PUNCH_HOLE_TO|14.20.224.132|42332]
2014-07-19 22:44:12 INFO [com.p2p.udp_dig_hole.server.MainServer] [StartP2PServiveChanege]我收到一个客户端发送的信息: [ip:14.20.224.132,port:42354 ],content: SUCCESS_HOLE_TO|14.20.224.132|42332
2014-07-19 22:44:12 INFO [com.p2p.udp_dig_hole.server.MainServer] 进入了[notifyPunchHoleSuccess]方法-通知打洞成功.
2014-07-19 22:44:12 INFO [com.p2p.udp_dig_hole.server.MainServer] [notifyPunchHoleSuccess]给客户端返回信息:[CAN_P2P_TO|14.20.224.132|42354]





客户端joy登录了。

我是客户端,我的身份是:182.254.141.29|1000|joy
[MainClient]我收到了一份数据,内容是:[ip:182.254.141.29,port:1000]内容是:LIST_ONLINE|14.20.224.132,42332,wood|14.20.224.132,42354,joy|
[dealListOnline]请问客户端您要和谁连接(192.168.0.2|1000|xwz),请输入(xxx不连接):14.20.224.132|41960|wood
[dealListOnline]哦,知道了,你想连接:WANT_TO_CONNECT|14.20.224.132|41960|wood
[dealListOnLine]我已经向服务器发送了:WANT_TO_CONNECT|14.20.224.132|41960|wood
[MainClient]我收到了一份数据,内容是:[ip:182.254.141.29,port:1000]内容是:PUNCH_HOLE_TO|14.20.224.132|42332
[dealPunchTo]原来是请求打洞,我接下来发送报文:HELLO_MYP2P_FRIEND|打洞
[dealPunchTo]告诉服务器打洞成功:SUCCESS_HOLE_TO|14.20.224.132|42332
[MainClient]我收到了一份数据,内容是:[ip:14.20.224.132,port:42332]内容是:HELLO_MYP2P_FRIEND|你好,我是wood



客户端wood登录了,并且请求向joy打洞成功

我是客户端,我的身份是:182.254.141.29|1000|wood
[MainClient]我收到了一份数据,内容是:[ip:182.254.141.29,port:1000]内容是:LIST_ONLINE|14.20.224.132,42332,wood|
[dealListOnline]请问客户端您要和谁连接(192.168.0.2|1000|xwz),请输入(xxx不连接):14.20.224.132|42354|joy
[dealListOnline]哦,知道了,你想连接:WANT_TO_CONNECT|14.20.224.132|42354|joy
[dealListOnLine]我已经向服务器发送了:WANT_TO_CONNECT|14.20.224.132|42354|joy
[MainClient]我收到了一份数据,内容是:[ip:14.20.224.132,port:42354]内容是:HELLO_MYP2P_FRIEND|打洞
[MainClient]我收到了一份数据,内容是:[ip:14.20.224.132,port:42354]内容是:HELLO_MYP2P_FRIEND|打洞
[MainClient]我收到了一份数据,内容是:[ip:14.20.224.132,port:42354]内容是:HELLO_MYP2P_FRIEND|打洞
[MainClient]我收到了一份数据,内容是:[ip:182.254.141.29,port:1000]内容是:CAN_P2P_TO|14.20.224.132|42354

分享到:
评论

相关推荐

    java udp p2p nat 等打洞技术实现通信,已测试成功

    UDP打洞实现了子网间的穿透功能,首先在一台拥有公网IP服务器上运行server,在不同的两个子网PC上运行client,输入服务器IP,即可进行打洞,实现不同子网的通信。

    最基本的p2p代码演示

    告之两client我的外网地址,然后他们能与服务器通讯,服务器保存client的信息(IP,port),然后当client1要与client2通讯时,即通过服务器中转打洞消息(把client1的相关信息发送给client2),client2能够收到打洞信息,但...

    java-udp-qq聊天源码,p2p通信完全实现

    java-udp-qq聊天源码,p2p通信完全实现 UDP打洞实现了子网间的穿透功能,首先在一台拥有公网IP服务器上运行server,在不同的两个子网PC上运行client,输入服务器IP,即可进行打洞,实现不同子网的通信。

    udp穿透客户端.zip

    打洞实现 1、开一个云服务器,或自家的宽带,全主机映射。 2、云控制台上安全组udp打开相应的端口,打开防火墙上相应的端口。 3、两台客户端。。 4、A通过Udp访问S,S把这个记录下。B通过Udp访问S,S把这个记录...

    NAT的完全分析及其UDP穿透的完全解决方案

    P2P-NAT 是一个 P2P代理,提供了NAT的功能,也提供了防火墙的功能,一个最简的P2P代理必须具有锥形NAT对Udp通信支持的功能,并允许应用程序利用Udp打洞技术建立强健的P2P连接。 回环转换 当NAT的私网内部机器想通过公共...

    公网qq聊天软件

    3、公网P2P打洞,跨越各个类型的NAT网络 4、修改FORM风格,做了简单的美化; 5、数据包收到回复和过期提示功能; 6、使用了消息队列;对消息发送进行管理。 7、修改部分程序BUG. 目前还存在问题: 1、用户数过多时...

    P2P-Over-MiddleBoxes-Demo:通过中间盒(例如NAT)进行P2P通信的简单演示

    P2P-Over-MiddleBoxes-Demo一个简单的P2P通信示例p2pchat一个P2P聊天程序,使用UDP打洞创建链接。编译make p2pchat运行./p2pchat/server <服务器端口号>./p2pchat/client <服务器IP>:<服务器端口号>>>> ...

    计算机网络打洞技术.docx

    由于很多的会话双方处于不同的NAT设备后,它们通信一般通过公网服务器中转,而要建立P2P通信,则必须解决NAT穿越问题才能建立通信。 第三章 NAT穿越模块的设计与实现 NAT 是介于内网和公网之间的设备,公网中的IP ...

    计算机网络打洞技术.doc

    由 于很多的会话双方处于不同的NAT设备后,它们通信一般通过公网服务器中转,而要建立 P2P通信,则必须解决NAT穿越问题才能建立通信。 第三章 NAT穿越模块的设计与实现 NAT 是介于内网和公网之间的设备,公网中的IP ...

    计算机网络打洞技术(1).doc

    由 于很多的会话双方处于不同的NAT设备后,它们通信一般通过公网服务器中转,而要建立 P2P通信,则必须解决NAT穿越问题才能建立通信。 第三章 NAT穿越模块的设计与实现 NAT 是介于内网和公网之间的设备,公网中的IP ...

    P2Pchat-master.zip

    国外某人开发的C# WPF NAT P2P源码(服务器端TCP辅助打洞)示例代码,亲测可用,使用方法也很简单,把服务器部署在一个有公网IP的电脑上(在app.config中配置server ip和port). 在Client的app.config中配置服务器端IP...

    MakeTcpHole

    总结一下这个过程:如果Client A想向Client B发送信息,那么Client A发送命令给Server S,请求Server S命令Client B向Client A方向打洞。呵呵,是不是很绕口,不过没关系,想一想就很清楚了,何况还有源代码呢(侯...

Global site tag (gtag.js) - Google Analytics