实现内网穿透

需求:
  1. 让其他人访问到自己电脑上的网页或服务
  2. 其他场景,比如大家想要登录同一个人的电脑来一起写代码、找 Bug、排查问题等等。
怎样实现这些需求呢?------------ 内网穿透
   

一、内网穿透介绍

大多数情况下,个人电脑处于内网,即没有公开访问的独立IP(上网要通过其他网关),因此其他内网用户找不到你,没办法和你建立连接。
内网穿透的作用,就是将内网的电脑暴露到公共网络。可理解为一个中间人,由于他知道你的电脑地址,所以能帮助其他用户访问到你的计算机

实现内网穿透_第1张图片

实现内网穿透_第2张图片

  

二、方案1:frp实现内网穿透

2.1、frp介绍

frp 是一个可用于内网穿透的高性能的反向代理应用,支持 tcp, udp, http, https 协议。GitHub - fatedier/frp: A fast reverse proxy to help you expose a local server behind a NAT or firewall to the internet.
作用:
  • 利用处于防火墙后的机器,对外网环境提供 http 或 https 服务
  • 对于 http, https 服务支持基于域名的虚拟主机,支持自定义域名绑定,使多个域名可以共用一个80端口
  • 利用处于防火墙后的机器,对外网环境 提供 tcp 和 udp 服务 ,例如在家里通过 ssh 访问处于公司局部环境的主机。
frp工作原理
  • frp服务端(公网)运行,监听一个端口bind_port,等待客户端的连接
  • frp客户端(私网)连接到frp服务端的主端口bind_port,同时告诉frp服务端要监听的端口remote_port和转发类型type
  • frp服务端(公网)fork新的进程监听客户端指定的端口remote_port
  • 外网用户(浏览器)连接到frp客户端(私网)指定的端口remote_port,frp服务端通过和frp客户端的连接将数据转发到frp客户端(私网);
  • frp客户端(私网)进程再将数据转发到本地web服务,从而实现内网对外暴露服务的能力。

2.2、设备环境

你可能感兴趣的:(网络,内网穿透)