什么是内网穿透?

内网穿透即NAT穿透,内网穿透可以让你局域网中的电脑实现外网访问功能。例如我公司电脑上运行了一个linux虚拟主机,安装SSH服务后我就可以在整个局域网内,连接192.168.xx.xx去操作这台linux主机。但这只局限于局域网内的通信,由于公司没有购买公网的固定IP,通信目的地的IP地址不确定,所以不能通过外网访问。如果我想坐在家里去控制公司那台linux主机,就需要内网穿透。

 

内网穿透有什么用?

常用用途有:发布网站、发布应用,外网可以直接端口访问、外出访问公司电脑、远程使用学校IP下载论文。

 

内网穿透工具 - 花生壳简介

花生壳是一款具备内网穿透、端口映射的工具,能够实现方向代理应用,支持TCP、HTTP、HTTPS协议,端到端的TLS加密通信,黑白名单防黑验证等;支持外网设备穿透各种复杂的路由和防火墙访问到内网的设备。

我就一搞嵌入式的,搞搞简单的物联网,对计算网络原理不是十分了解,内网穿透原理只了解个大概,专业的事情专业的人来,推荐一篇讲 内网穿透的实现和原理解析的好文:内网穿透的实现和原理解析

 

个人对花生壳工具的简单理解(大误):

内网客户端的数据,通过端口映射,转发到花生壳服务器(固定IP)。花生壳服务器根据注册用户的配置,转发到公网端口。最终完成内网端口与公网端口的映射,花生壳的作用相当于中转站,所有的数据都要经过花生壳转发,所以要对用户的带宽进行限制,否则负载会非常大。而使用端口映射,是为了扩展用户连接数量,如果搞网页都用80端口,那有再多固定IP也不够用的,所以限制用户的映射数量,并通过其他端口去承载原端口的数据。(安装虚拟机,使用NAT配网的应该深有体会)

 

花生壳-内网穿透 使用

  • 1.去花生壳官网,下载花生壳客户端,以windows为例。

注册免费用户,登陆。点击右下角创建映射。(先不用充值,免费用户享有2条映射、1Mbps、1G/月流量,先体验)

 

  • 2.填入映射的主机IP和端口。

这里用TCP做测试,为方便测试,填入了本机电脑的IP。(cmd命令提示符窗口输入ipconfig查询)

注意:新建映射时,可以填入本机在局域网内的IP,也可以时处于同一局域网的其他主机IP。只要同一局域网有一台机器运行了花生壳,那么被映射的端口就可以被外网访问。(例如可以购买花生壳的联网硬件,体积小巧低功耗,不必专门找一台电脑去运行客户端,节约资源)

 

  • 3.保存后,就新建了一个映射。并获得到一个外网访问地址。

点击诊断,查看这个域名的外网IP。

 

本地的 192.168.1.61 :8080,便映射到外网的 103.46.128.21 :12931。

现在在外网直接访问 103.46.128.21 :12931,等同于访问此局域网内的 192.168.1.61 :8080。

 

 

外网连接本地测试

  • 1.新建一本地TCP服务器。

使用网络调试助手,新建一 TCP Server。

 

  • 2.客户端连接外网映射。

再新建一TCP客户端,连接外网 103.46.128.21 :12931。成功连接后,发送一条消息。

 

  • 3.服务器确认收到信息。

回到服务器界面,确认接收到客户端的消息无误,并且在客户端列表中也能查找到连接。本地与外网的映射成功。

 

注意事项

会发现:每次将一client断开后再连接,都会重新分配新的端口。

刚开始以为网络调试助手的问题,后来换成别人的电脑试了试,又换成了手机4G网络,都是一样效果:连接外网映射,每次都会重新分配新的端口。

 

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐