内网穿透

穿透的意思就是把本地的电脑或者是网络暴露到公众网络中。
场景可以有:

  • 通过 ssh 访问公司内网机器

  • 通过自定义域名访问部署于内网的 web 服务(例如开始的页面验收,直接配置到服务器上麻烦且不利于更改,可以先本地开启一个django服务,通过服务器ip地址访问我们本地的django服务,这样也方便验收和修改)

  • 或者是服务器的性能不够好,就可以用内网穿透用上本地的电脑。(如机器学习跑算法,需要高配置的机器,Python可以使用jupyter notebook+frp进行远程编程,但是jupyter需要配置允许远程访问和密码)
    我在寻找的过程中,找到了三个

  • frp中文文档 下载地址

  • ngrok

  • nps

这三个,我尝试过第一个且成功了。
用法文档里面写得很清楚了。
frp

  1. 解压下回来的文件,把frpcfrpc.ini文件留在本地电脑,frpsfrps.ini放在服务器上面,下载的时候注意window版本和linux,还有注意版本问题

  2. 编辑服务器的frps.ini(dashboard_port为frp后台端口)

    [common]
    bind_port = 7000
    vhost_http_port = 8080

    dashboard_port = 7500

    dashboard_user = admin
    dashboard_pwd = admin

bind_port 为frpc与frps绑定的端口,最好不要与其他的服务冲突。
vhost_http_port 为我们在浏览器上访问的端口。
其他的官方文档写的很清楚了。

  1. 编辑frpc.ini文件

    [common]
    server_addr = x.x.x.x
    server_port = 7000

    [ssh]
    type = tcp
    local_ip = 127.0.0.1
    local_port = 22
    remote_port = 6000

    [web]
    type = http
    local_port = 8090
    custom_domains = x.x.x.x

server_addr 为服务器的ip地址
local_port 为我们本地开启服务的端口,如django的python manage.py runserver 0.0.0.0:8090
如果要让外网访问本地的web服务就应该在0.0.0.0上运行,在127.0.0.1上是不行的
window本机和linux服务器可以通讯,版本一定要相近或者是相同
有了这两个配置文件,我就可以开启服务了。
先运行server端(linux),
nohup ./frps -c ./frps.ini &
再运行client
nohup ./frpc -c ./frpc.ini &
加上nohup&就可以进行后台运行了。输出结果会在nohup.out文件里面
可以通过ps -aux | grep frp进行查找frp运行的进程号
然后用kill -9来杀死进程。

window
使用.\frpc.exe -c .\frpc.ini
2019.5.17更新.
同学利用android使用即时通讯,使用到openfire,用spark进行验证服务通讯的时候.,再进一步使用frp进行内网穿透.
其中spark使用的是tcp通讯,在配置frp的时候,不能够用type=http进行内网穿透,虽然说http用的是tcp协议通讯.
但是进行验证的时候是不成功的.得改成type=tcp
配置文件如下:
frps.ini

[common]
bind_port = 7000

frpc.ini

[web]
type = tcp
local_port = xxx   #本地绑定的服务的端口
remote_port = xxx  # 用于程序进行通讯的端口号

一般来说local_portremote_port设置成相同,这样会比较好记,也不会容易乱.

  • 3
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值