一、项目介绍 {#%E4%B8%80%E3%80%81%E9%A1%B9%E7%9B%AE%E4%BB%8B%E7%BB%8D}
本项目是GitHub上一位大佬(lazy-luo/smarGate)开发的内网穿透服务,用于实现公司和家里都没有公网的情况下,实现内网穿透访问家里或者公司内部服务,项目需要用到一台手机作为客户端,一台windows或者Linux或者软路由OpenWrt作为服务端。
1.1、平台适配: {#1.1%E3%80%81%E5%B9%B3%E5%8F%B0%E9%80%82%E9%85%8D%EF%BC%9A}
支持linux、windows、macos、android、(tob,小型机:hp-unix、solaris、AIX)
1.2、CPU架构 {#1.2%E3%80%81cpu%E6%9E%B6%E6%9E%84}
支持x86、arm、mips、riscv(tob:alpha、PowerPC、SPRAC)
1.3、项目优势 {#1.3%E3%80%81%E9%A1%B9%E7%9B%AE%E4%BC%98%E5%8A%BF}
注重安全,"内网"到"内网"的穿透,无需映射任何端口到外网,不更改任何防火墙配置
注重带宽,"4G手机+v6宽带"采用P2P方式访问内网服务(基于TCP协议,v4支持NAT1-3穿透)
注重节约,无需购买vps、无需公网IP;家中淘汰Android手机可做服务器
注重可靠,随用随有,可7*24不间断服务,且不受UDP协议Qos之苦
注重可控,客户端一点配置,且随时随地控制服务开启/关闭
注重环保,免安装,体量小巧(mini版1MB左右) allinone,高性能且资源占用最少
注重便携,无论工作或是度假,不管在任何地方,只要手机有网络,一切尽在掌控
1.4、主要功能 {#1.4%E3%80%81%E4%B8%BB%E8%A6%81%E5%8A%9F%E8%83%BD}
1、支持基于tcp的P2P连接隧道---安全可靠,避免Qos
2、支持所有基于tcp的各类协议"透明代理"---可代理所有内网tcp服务(ssh、rdp、smb、vnc、摄像头、数据库服务等)
3、支持HTTP、HTTPS to HTTP---支持http-head rewrite,支持将https服务代理成http
4、支持udp over tcp---支持udp协议的服务代理
5、透明方式(无需关注ipv6地址)支持ipv6隧道---自动建立v6隧道,访问时始终使用v4地址
6、支持自定义代理(需外网ip),接管所有数据转发---无法p2p时,自动连接自定义代理,实现数据转发
7、自定义代理支持token及白名单配置---支持安全机制
8、支持多级级联代理---支持链式代理,支持多级无环代理
9、支持手机作为访问唯一入口 ------ 安全 + 移动便捷---手机在手、随用随有
10、端口映射全动态配置,支持映射配置"热拔插"---代理增、删及时生效,无需重启
11、所有功能app端"一点配置"---客户端一点配置,服务端运行时免配
12、支持P2P隧道及自定义代理隧道自动探测及连接---无需干预,app自动连接,自动重试
13、支持动态协商端口,支持指定协商端口---默认动态端口协商,支持配合防火墙配置协商端口
14、支持隧道连接优先级(P2P--->自定义代理-->官网代理)---数据传输时,支持优先级隧道
15、支持ssl加密隧道---支持P2P及代理隧道ssl加密,确保数据传输不泄密
16、支持流量限制---支持进行网络带宽限制,默认不限流
17、支持网络切换(如:移动<--->wifi)自动识别+自动连接---app端智能重连,始终确保服务可用性
18、支持不同局域网主机间端口映射 ------ 如有一端主机有外网ip则可直接外网访问(version > v0.31)---支持服务端组网映射,流量无需通过手机app(传统穿透模式)
19、app支持服务端模式,可以将手机配置成服务端---android手机可作为服务端
20、支持远程文件管理功能:浏览、上传、下载、删除,支持断点续传(version >= v0.31.6)---在有p2p或自定义代理时,激活文件管理功能,可对手机和服务端电脑文件进行基本操作
二、项目示意图 {#%E4%BA%8C%E3%80%81%E9%A1%B9%E7%9B%AE%E7%A4%BA%E6%84%8F%E5%9B%BE}
三、快速上手指南 {#%E4%B8%89%E3%80%81%E5%BF%AB%E9%80%9F%E4%B8%8A%E6%89%8B%E6%8C%87%E5%8D%97}
作者在GitHub上写的非常清晰,我就不在演示了,我只写几个我自己初步使用遇到的问题,供大家参考
3.1、快速上手手册 {#3.1%E3%80%81%E5%BF%AB%E9%80%9F%E4%B8%8A%E6%89%8B%E6%89%8B%E5%86%8C}
3.2、B站视频指导 {#3.2%E3%80%81b%E7%AB%99%E8%A7%86%E9%A2%91%E6%8C%87%E5%AF%BC}
3.3、遇到的问题 {#3.3%E3%80%81%E9%81%87%E5%88%B0%E7%9A%84%E9%97%AE%E9%A2%98}
1. 问:Windows下启动服务后怎么关闭?
答1:"任务管理器",找到proxy_server进程,结束即可。
答2:使用CMD命令行kill进程
tasklist /FI "IMAGENAME eq proxy_server.exe" #查找进程
taskkill /F /IM proxy_server.exe #结束进程
2. 问:这些参数什么意思?【proxy_server.exe -i1000 -o1000 -w8】
答:-i参数指定最大入站连接数量,-o参数指定最大出站连接数量,-w参数指定工作线程数(一般小于2倍cpu数量)
3. 问:手机客户端注册的邀请码填什么?
答:随便写即可,只填数字。