您现在的位置:首页 --> 查看专题: 穿透
在许多情况下,我们希望把内部的服务暴露到外网来使用,比如说:
1、在公司内网开发程序,要和微信联调;
2、想要随时随地登录家里的树莓派,使用上面的服务
在这些情况下,我们就会很迫切的希望有一个内网穿透服务,帮我们把内部的端口,暴露到外网来。
我们在项目中使用缓存通常都是先检查缓存中是否存在,如果存在直接返回缓存内容,如果不存在就直接查询数据库然后再缓存查询结果返回。这个时候如果我们查询的某一个数据在缓存中一直不存在,就会造成每一次请求都查询DB,这样缓存就失去了意义,在流量大时,可能DB就挂掉了。
那这种问题有什么好办法解决呢?
NAT是在传输层及以上做的,传输层最主要的2个协议是TCP和UDP。对于TCP和UDP而言,每个包都有很基本的4个要素:src ip、src port、dst ip、dst port。 根据在做NAT的时候是否保留src ip和src port,可以把NAT分为这么三种: Cone: 将src ip映射到一个固定的IP,并且将src port映射到一个固定的Port,无论dst ip和dst port是什么。 Single IP address, symmetric:将src ip映射到一个固定的IP,将src port映射到一个随机的port,但是保证对于相同的(dst ip,dst port), src port始终相同。(否则双方没法通话啊,回来的包回给哪个端口呢?) Multiple IP address, symmetric:与上面类似,但是src ip可能会有多个。
[ 共3篇文章 ][ 第1页/共1页 ][ 1 ]
近3天十大热文
- [54] android 开发入门
- [53] IOS安全–浅谈关于IOS加固的几种方法
- [51] Oracle MTS模式下 进程地址与会话信
- [51] 图书馆的世界纪录
- [50] 如何拿下简短的域名
- [50] Go Reflect 性能
- [48] 读书笔记-壹百度:百度十年千倍的29条法则
- [47] 【社会化设计】自我(self)部分――欢迎区
- [38] 程序员技术练级攻略
- [31] 视觉调整-设计师 vs. 逻辑
赞助商广告