请教,关于TCP NAT打洞问题?

chenjiawei007 2011-10-11 10:33:46
UDP的打洞,通过中转服务器比较好理解,因为UDP是面向无连接的。

可是TCP打洞,通过中转服务器,中转服务器可以获得两端的客户机端口和IP,可对于TCP而言,是必须要建立连接的.

查网上相关资料,说法有不少种,自己比较困惑,我觉得TCP打洞,客户端应该是开启着一个监听端口,就像飞鸽传书这样的c,s两端结合体。

这样做,是不是要将客户机的监听端口,映射到外网IP的端口上?

希望做过的朋友给些提示:)
...全文
190 15 打赏 收藏 转发到动态 举报
写回复
用AI写文章
15 条回复
切换为时间正序
请发表友善的回复…
发表回复
kinghuangsheng 2011-12-30
  • 打赏
  • 举报
回复
如果你做手动映射的话,那根本不需要打洞了。
maoxing63570 2011-10-18
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 chenjiawei007 的回复:]

发现自己的问题就是路由器 是否有手动设置端口映射的功能,

路由器起到一个服务器转发的作用,不过应该是驱动级别的吧~

呵呵,自己回头去查看下路由器的功能,当做散分了。
[/Quote]
一般的都有吧,貌似进路由,然后用那个转发规则那里可以设置(只用过tp-link的),其它的可以在网上找下
fujialin2011 2011-10-18
  • 打赏
  • 举报
回复
应该不要自己手动映射把,你连接出去外面看到的就是你的映射IP和Port啦
smwhotjay 2011-10-18
  • 打赏
  • 举报
回复
督门提码 2011-10-17
  • 打赏
  • 举报
回复
[Quote=引用 10 楼 chenjiawei007 的回复:]

是的,重用端口,打洞和路由的类型有关系,所以在做打洞时,要对各种类型的路由器做打洞,

如果还是打洞不成功,就走服务器转发。
[/Quote]

现在除了对称nat我还没想到办法,其它的应该都能实现打洞的.....
chenjiawei007 2011-10-17
  • 打赏
  • 举报
回复
是的,重用端口,打洞和路由的类型有关系,所以在做打洞时,要对各种类型的路由器做打洞,

如果还是打洞不成功,就走服务器转发。
督门提码 2011-10-17
  • 打赏
  • 举报
回复
看到200分才进来的,结果没看到分。 你这个打洞一个端口就可以了,客户端用两个端口不好,因为你nat上面映射到内网的端口是唯一的,你弄两个端口发起请求出去后,第二次接收对方连接时这个端口很可能连接不到,所以一个端口够以,我已尝试。
saiyaman5 2011-10-13
  • 打赏
  • 举报
回复
我也想知道tcp怎么穿透
alpha.5 2011-10-13
  • 打赏
  • 举报
回复
帮顶, 我也最近也正要往TCP网络协议编程方面走呢..
baoyz 2011-10-13
  • 打赏
  • 举报
回复
太高深了,我是看见200分进来的。
o_yale_o 2011-10-11
  • 打赏
  • 举报
回复
CppCoder 2011-10-11
  • 打赏
  • 举报
回复
帮顶, 接分
chenjiawei007 2011-10-11
  • 打赏
  • 举报
回复
发现自己的问题就是路由器 是否有手动设置端口映射的功能,

路由器起到一个服务器转发的作用,不过应该是驱动级别的吧~

呵呵,自己回头去查看下路由器的功能,当做散分了。
ljn398431 2011-10-11
  • 打赏
  • 举报
回复
帮顶下
  • 打赏
  • 举报
回复
天天混一贴

18,356

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 网络编程
c++c语言开发语言 技术论坛(原bbs)
社区管理员
  • 网络编程
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧