NAT 失败的原因

前言:音视频通讯的软件开发中降低服务器带宽的方式就是通过STUN服务器直接P2P,而P2P有时会失败,此文解释其原因。

(0)NAT

  • 广为人知,IPV4只有32位,顶天只有40多亿的地址分配,加之有些地址不能用,就不能为每个用户分配公网IP地址了,于是就有了NAT(Network address translation)技术,通过路由器,形成公网端口与内网ip端口的一一映射。
  • P2P技术就是用一个STUN服务器让两个内网的服务器知道对方的公网地址与端口号码,之后两个客户端直接通过对方的公网IP与端口通过UDP交换信息。
  • 但现实残酷,很多NAT路由器为了安全推出了不同连接与接收方法。

(1)4种NAT方法

  • Full Cone NAT (全锥型)
    发送出去时(本地端口-路由器公网端口)一一映射,接收时不会有任何限制;
  • Address-Restricted Cone NAT (IP限制锥型)
    发送出去时(本地端口-路由器公网端口)一一映射,接收时限制只有发送过的IP才可以发送过来;
  • Port-Restricted Cone NAT (端口限制锥型)
    发送出去时(本地端口-路由器公网端口)一一映射,接收时限制只有发送过的IP和端口号才可以发送过来;
  • Symmetric NAT (对称型)
    发送出去时(本地端口与公网IP与公网对应端口-路由器公网端口)一一映射,接收时非对应IP与端口拒绝转发;

(2)P2P失败的组合

Client 1Client 2
对称型对称型
对称型端口限制锥型

(3)参考

1参考

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值