使用 frp 实现内网穿透

·  阅读 2445
使用 frp 实现内网穿透
原文链接: fangzf.me

开发过程中,可能会遇到接入第三方平台时,比如微信公众平台,需要提供公网的 IP 地址或域名的情况。
大多数情况下,个人用户的网络是处在局域网中,并且线路无法提供公网的 IP。
为了方便调试,这时候就需要通过内网穿透将本地的端口映射到公网上。
本篇文章将介绍通过 frp 将本地的 http 服务映射到公网上。

frp 介绍

frp 是一个可用于内网穿透的高性能的反向代理应用,支持 tcp, udp, http, https 协议。

文档地址:github.com/fatedier/fr…
下载地址:github.com/fatedier/fr…

服务端

  1. 配置 frps.ini 文件

    [common]
    bind_port = 7000 # frp 代理端口
    vhost_http_port = 80 # http 服务端口
    vhost_https_port = 443 # https 服务端口
    dashboard_port = 7500 # 开启控制台端口,如果不设置 dashboard_user,默认为 admin
    dashboard_user = username # 控制台用户名
    dashboard_pwd = password # 控制台密码
    复制代码
  2. 运行 frp 服务端

    ./frps -c ./frps.ini
    复制代码

客户端

  1. 配置 frpc.ini 文件

    [common]
    server_addr = your.server.ip.address # 服务端公网 ip 地址
    server_port = 7000 # 与服务端配置的 bind_port 一致
    
    [web]
    type = http # 支持 http 和 https
    local_port = 80 # 本地映射端口
    custom_domains = your.server.name # 自定义域名,需要A解析到 server_addr
    复制代码
  2. 运行 frp 客户端

    ./frpc -c ./frpc.ini
    复制代码

访问地址

在做完以上配置之后,即可访问本地穿透的服务:

  • 直接通过 your.server.ip.address 或 your.server.name 访问本地的 http 服务
  • 访问 your.server.ip.address:7500 或 your.server.name:7500 访问 frp 控制台
收藏成功!
已添加到「」, 点击更改