域名代理模式

适用范围: 小程序开发、微信公众号开发、产品演示

假设场景:

  • 有一个域名proxy.com,有一台公网机器ip为{{.ip}}
  • 两个内网开发站点127.0.0.1:81,127.0.0.1:82
  • 想通过a.proxy.com访问127.0.0.1:81,通过b.proxy.com访问127.0.0.1:82
  • 使用步骤:

    • 将*.proxy.com解析到公网服务器{{.ip}}
    • 在客户端管理中创建一个客户端,记录下验证密钥
    • 点击该客户端的域名管理,添加两条规则规则:1、域名:a.proxy.com,内网目标:127.0.0.1:81,2、域名:b.proxy.com,内网目标:127.0.0.1:82
    • 内网客户端运行
      ./npc -server={{.ip}}:{{.p}} -vkey=客户端的密钥
    • 现在访问a.proxy.com,b.proxy.com即可成功

    注:上文中提到公网ip({{.ip}})为系统自动识别,如果是在测试环境中请自行对应,如需使用https请在配置文件中将https端口设置为443,和将对应的证书文件路径添加到配置文件中

    tcp隧道模式

    适用范围: ssh、远程桌面等tcp连接场景

    假设场景: 想通过访问公网服务器{{.ip}}的8001端口,连接内网机器10.1.50.101的22端口,实现ssh连接

    使用步骤:

    • 在客户端管理中创建一个客户端,记录下验证密钥
    • 内网客户端运行
      ./npc -server={{.ip}}:{{.p}} -vkey=客户端的密钥
    • 在该客户端隧道管理中添加一条tcp隧道,填写监听的端口(8001)、内网目标ip和目标端口(10.1.50.101:22),选择压缩方式,保存。
    • 访问公网服务器ip({{.ip}}),填写的监听端口(8001),相当于访问内网ip(10.1.50.101):目标端口(22),例如:ssh -p 8001 root@{{.ip}}

    注:上文中提到公网ip({{.ip}})为系统自动识别,如果是在测试环境中请自行对应,默认内网客户端已经启动

    udp隧道模式

    适用范围: 内网dns解析等udp连接场景

    假设场景: 内网有一台dns(10.1.50.102:53),在非内网环境下想使用该dns,公网服务器为{{.ip}}

    使用步骤:

    • 在客户端管理中创建一个客户端,记录下验证密钥
    • 内网客户端运行
      ./npc -server={{.ip}}:{{.p}} -vkey=客户端的密钥
    • 在该客户端的隧道管理中添加一条udp隧道,填写监听的端口(53)、内网目标ip和目标端口(10.1.50.102:53),选择压缩方式,保存。
    • 修改本机dns为{{.ip}},则相当于使用10.1.50.202作为dns服务器

    注:上文中提到公网ip({{.ip}})为系统自动识别,如果是在测试环境中请自行对应,默认内网客户端已经启动

    socks5代理模式

    适用范围: 在外网环境下如同使用vpn一样访问内网设备或者资源

    假设场景: 想将公网服务器{{.ip}}的8003端口作为socks5代理,达到访问内网任意设备或者资源的效果

    使用步骤:

    • 在客户端管理中创建一个客户端,记录下验证密钥
    • 内网客户端运行
      ./npc -server={{.ip}}:{{.p}} -vkey=客户端的密钥
    • 在该客户端隧道管理中添加一条socks5代理,填写监听的端口(8003),验证用户名和密码自行选择(建议先不填,部分客户端不支持,proxifer支持),选择压缩方式,保存。
    • 在外网环境的本机配置socks5代理,ip为公网服务器ip({{.ip}}),端口为填写的监听端口(8003),即可畅享内网了

    注:上文中提到公网ip({{.ip}})为系统自动识别,如果是在测试环境中请自行对应,默认内网客户端已经启动

    http代理模式

    适用范围: 在外网环境下访问内网站点

    假设场景: 想将公网服务器{{.ip}}的8004端口作为http代理,访问内网网站

    使用步骤:

    • 在客户端管理中创建一个客户端,记录下验证密钥
    • 内网客户端运行
      ./npc -server={{.ip}}:{{.p}} -vkey=客户端的密钥
    • 在该客户端隧道管理中添加一条http代理,填写监听的端口(8004),选择压缩方式,保存。
    • 在外网环境的本机配置http代理,ip为公网服务器ip({{.ip}}),端口为填写的监听端口(8004),即可访问了

    注:上文中提到公网ip({{.ip}})为系统自动识别,如果是在测试环境中请自行对应,默认内网客户端已经启动

    单个客户端可以添加多条隧道或者域名解析