花生壳实现内网穿透原理是啥?打洞技术?服务器转发?
如果是服务器数据转发,这么多人用的过来么 打洞技术吧,不提供数据转发,不然那么大流量怎么吃的消? wajlh 发表于 2017-3-19 23:40打洞技术吧,不提供数据转发,不然那么大流量怎么吃的消?
打洞不能保证成功应该做探测 优先打洞 不成功也切转发 不过我上次问过他们这个问题他们说是转发不是打洞,这样能保证肯定成功 vpn 花生棒其实是个openwrt panjun10 发表于 2017-3-20 06:58
vpn 花生棒其实是个openwrt
兄台此话怎讲 一定是服务器转发的,打洞是双方的。 反向代理 跟灰鸽子差不多吧 服务器转发的,打洞的话需要双方协调的。 我也想搞清这个问题,现在在外网访问内网,一直不知道怎么搞 花生壳其实就是最简单的反向链接,但是一般的反向链接是内网直接建立链接到服务器,然后由服务器转发数据到目标端,但是这样的话如果数据量很大会对服务器要求很高。新的花生壳是通过反相链接告知服务端内网客户端的信息,服务端在dns层动态映射内外网的链接,从而内网可以直接链接到外网端而不需要通过服务器了。当然如果无法在dns层映射后正常链接,那就只能用转发形式。 花生壳的做法是,首先打洞,不成功就转发 好帖子,学习了,今天花生壳还要我实名认证,前两天刚打的电话让缴费,哎!!! 服务器转发的,内置花生壳程序会主动去连接花生壳的转发服务器,这也是为什么花生壳会按流量来卖套餐 本帖最后由 zhiyuan1106 于 2017-12-20 13:08 编辑
找到打洞的介绍了
参考:http://blog.csdn.net/mawming/article/details/51798514
UDP-NAT简介:
1.一个NAT端口必须对应唯一的(内网ip:port)。
假设内网的多个ip或者同一ip的不同port,都要访问同一个(外网ip:port)。对NAT来说,从外网接收的包它的(srcIp:srcPort)==(serverIp,serverPort),它的dstIp==natIp,所以NAT只能用dstPort来决定把这个包转发给哪一个(内网Ip:port)
2.根据下文,cone nat中,一个NAT端口对应多个(外网ip:port)。
NAT根据从外网接收的包的dstPort,查找(srcIp,srcPort)在不在该dstPort对应的外网(ip,port)中。在则转发给内网,不在则丢弃掉
3.示例代码中如何处理UDP包的丢失、延迟。
clientA向clienB发送消息时,打洞要三个包(clientA请求server,server请求clientB,clientB打洞),发消息要三个包(clientA发消息头,clientA发消息体,clientB发确认包),任何一个包都可能丢失。只要clientA没有收到确认包,clientA便重复以上过程;而server、clientB并不处理包丢失的情况,程序的逻辑相当简洁! McuPlayer 发表于 2017-3-20 15:04
花生壳的做法是,首先打洞,不成功就转发
赞同。不然花生壳就不需要卖那么多“优质线路、高流量”的收费套餐了。 在网上搜索,搜到这里来了,先做个记号,感谢14楼! NATAPP基于ngrok的国内内网穿透服务,免费版会强制更换域名,临时用一下可以
收费,使用简单
官网:https://natapp.cn/
三、ngrok
ngrok是一个反向代理,通过在公共的端点和本地运行的Web服务器之间建立一个安全的通道。ngrok可捕获和分析所有通道上的流量,便于后期分析与响应。
开源免费
官网:https://ngrok.com/
源码:https://github.com/inconshreveable/ngrok 学习了,谢谢楼上各位{:smile:} 学习,一直在思考他的原理 咱们ip资源少,基本无法获得外网ip。打洞很不稳定,只能转发。
页:
[1]