社区
网络编程
帖子详情
P2P客户端该Bind几个UDP端口?
SmallBigCat
2004-12-27 10:24:29
谢谢,请有经验的老鸟答复,分不够可以再加!
...全文
465
26
打赏
收藏
P2P客户端该Bind几个UDP端口?
谢谢,请有经验的老鸟答复,分不够可以再加!
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
26 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
SmallBigCat
2004-12-31
打赏
举报
回复
再订
yaotang
2004-12-30
打赏
举报
回复
不错,关注
SmallBigCat
2004-12-30
打赏
举报
回复
顶
oyljerry
2004-12-29
打赏
举报
回复
Symmetric NAT的端口会变化,需要猜测
oyljerry
2004-12-29
打赏
举报
回复
每个应用一个端口号
SmallBigCat
2004-12-29
打赏
举报
回复
再顶
SmallBigCat
2004-12-29
打赏
举报
回复
to oyljerry(☆勇敢的心☆-Paper Reviewing):
是一个应用,只是会与多个在线好友同时对话
SmallBigCat
2004-12-28
打赏
举报
回复
to phoenixsharp(小星星):
1.是有一个公网的服务端
2.我这里指常用的、非Symmetric NAT
与你QQ的原理是一样的,就是在某种特定的NAT下,比如A有3个好友B、C、D在线,A会定时给B、C、D发送激活包(当然B、C、D也会给A发送激活包);此时A如果想与B、C、D中的任一方发送消息,就会不通;如果A的好友只有B、C、D中的一个在线,则A发送消息就能通过;
现在还不能确定是A所在NAT的原因,还是B、C、D所在NAT的原因,测试中B、C、D是在一个NAT下,其NAT类型为Symmetric NAT
phoenixsharp
2004-12-28
打赏
举报
回复
1.俺也做过QQ,不知道楼主的具体程序结构是怎么样的?把你的大致思想说出来看看,应该有一个公网的服务端吧?请详表。
2.非对称NAT是不是俺说的那种一个SOCKET发给多个人,NAT会生成不同的端口?不好意思,俺对概念不是很感冒?有劳解释一下。
P.S:我写的QQ只需要知道众好友的(经NAT的)IP:PORT--》通过SERVER获得;即可通讯。
SmallBigCat
2004-12-28
打赏
举报
回复
顶,人人有分
skfox
2004-12-28
打赏
举报
回复
uo
SmallBigCat
2004-12-28
打赏
举报
回复
to phoenixsharp(小星星):
是及时通讯方面的应用;
现在遇到的问题是:
有A在某些端口限制的非对称NAT下登录,如果A同时与多个在线好友对话,此时A与好友之间的UDP通道是不能够通的(及对方收不到A发送的激活包);如果A只有一个在线好友或只与其中一个好友对话,则对方能够收到A发送的激活包;经检测A的NAT类型为端口受限的非对称NAT;
不知这种情况如何解决?
phoenixsharp
2004-12-28
打赏
举报
回复
楼主究竟是什么应用,为什么要开多个端口,而且还要BIND/?,一个端口也可以干很多不同的事啊,数据里弄一个标识头,什么样的类型干什么样的事。
有些NAT是这样:A to S 和 A to B会NAT不同的端口,如A TO S(NAT PORT:2003) 而A 再发数据给B,NAT PORT 变增为2004或其它,这是一种不愿意看到的行为;而大多数的NAT保持端口不变,只是在这个端口上加一个A TO B的SESSION。这是值得表扬的~~~~
SmallBigCat
2004-12-28
打赏
举报
回复
顶
kingzai
2004-12-27
打赏
举报
回复
一般是一个端口。如果在同一台机,开多个实例,比如开两个QQ,就是一个4000,另外一个则4001
SmallBigCat
2004-12-27
打赏
举报
回复
谢谢
我问的是诸如及时通讯之类的软件,需要绑定几个端口
zhangqu_980371
2004-12-27
打赏
举报
回复
20000以上就没有问题了(不要和系统、其他软件有冲突就可以)。
到了网关,网关会转换的别的断口。
SmallBigCat
2004-12-27
打赏
举报
回复
比如QQ一样的及时通讯之类的
HunterForPig
2004-12-27
打赏
举报
回复
说说你的具体应用
kingzai
2004-12-27
打赏
举报
回复
看具体的应用
加载更多回复(6)
Linux编程——网络编程(
UDP
)、服务模型
本文详细介绍了Linux环境下的
UDP
网络编程,涵盖
UDP
特性、无连接数据报传输机制及服务端与
客户端
的操作流程。重点讲解socket、
bind
、recvfrom和sendto系统调用的使用方法,并结合C/S与
P2P
服务模型分析典型应用场景,适用于基础网络编程学习与实践。
TCP服务器端和
客户端
程序设计
这篇博客详细介绍了在Linux环境下如何编写TCP服务器和
客户端
程序,包括TCP套接字编程的基本原理、主要函数(socket、connect、
bind
、listen、accept、write、read等)的使用,以及实验步骤。此外,还提到了TCP与
UDP
编程的区别,并提供了TCP服务器端(tcpserver.c)和
客户端
(tcpclient.c)的参考程序。
P2P
之
UDP
穿透NAT的原理与实现
本文详细介绍了
P2P
原理及
UDP
如何穿越NAT进行通信,包括NAT的基本概念、ConeNAT与SymmetricNAT的区别,以及通过服务器协助实现不同NAT类型下的
客户端
直接通信。
linux 固定ip_Linux网络编程——绑定(
bind
)
端口
需要注意的问题
本文详细解释了在网络编程中
端口
绑定(
bind
)的概念及其重要性,通过类比的方式说明了为什么一个套接字只能绑定一个
端口
,并提供了C语言示例代码来展示正确的绑定流程以及常见的错误实践。
UDP
和TCP的应用
本文详细介绍了网络通信中的C/S、B/S及
P2P
模型,并对比了
UDP
和TCP两种协议的特点及编程方式,包括它们的关键函数和地址绑定等内容。
网络编程
18,356
社区成员
64,161
社区内容
发帖
与我相关
我的任务
网络编程
VC/MFC 网络编程
复制链接
扫一扫
分享
社区描述
VC/MFC 网络编程
c++
c语言
开发语言
技术论坛(原bbs)
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章