<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/">
  <channel>
    <title>Frp on 有趣的AI</title>
    <link>http://wfcoding.com/tags/frp/</link>
    <description>Recent content in Frp on 有趣的AI</description>
    <generator>Hugo -- 0.125.7</generator>
    <language>zh</language>
    <copyright>火云</copyright>
    <lastBuildDate>Wed, 03 Sep 2025 00:00:00 +0000</lastBuildDate>
    <atom:link href="http://wfcoding.com/tags/frp/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>内网的服务如何能在公网使用？</title>
      <link>http://wfcoding.com/articles/programmer/m05/</link>
      <pubDate>Wed, 03 Sep 2025 00:00:00 +0000</pubDate>
      <guid>http://wfcoding.com/articles/programmer/m05/</guid>
      <description>&lt;blockquote&gt;
&lt;p&gt;我在内网中有很棒的服务资源，但是没有固定IP，如何能够在公网使用呢？&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;要解决这种问题，内网穿透工具 &lt;strong&gt;frp（Fast Reverse Proxy）&lt;/strong&gt; 是一个很棒的选择：既然外网不能访问内网，那么就主动从内网打通到外网的通道！&lt;br&gt;
基本的原理是：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;前提条件
&lt;ul&gt;
&lt;li&gt;要有一台有公网地址的服务器【配置可以比较低】，内网服务器可以连接到这台公网服务器&lt;/li&gt;
&lt;li&gt;内网服务器安装frp客户端:frpc，公网服务器安装frp服务端:frps&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;建立 “长连接”—— 打通内网到公网的 “通道”
&lt;ul&gt;
&lt;li&gt;内网设备启动 frpc 客户端，并加载配置文件（配置中包含 frps 的公网 IP、端口、认证信息等）。&lt;/li&gt;
&lt;li&gt;frpc 主动向公网的 frps 发起 TCP 长连接（默认用 8000 端口，可自定义），并维持这个连接（通过心跳机制防止断开）。&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;blockquote&gt;
&lt;p&gt;这一步是穿透的关键：由于内网设备没有公网 IP，公网无法主动 “找到” 内网设备，因此必须由内网的 frpc “主动出击”，与公网的 frps 建立连接，形成一条稳定的 “数据通道”。&lt;br&gt;
内网设备无法被公网访问的根本原因，是路由器的 NAT（网络地址转换）机制会隐藏内网 IP。frp 通过 “frpc 主动连接 frps” 的方式，让路由器将 frpc 与 frps 的连接加入 “NAT 映射表”，后续 frps 向 frpc 发送的数据（公网请求），会被路由器正确转发到内网的 frpc，从而实现 “穿透” NAT 的效果。&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;本文通过一个具体的例子来展示如何使用内网穿透工具frp将内网的web服务推向公网。&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;a href=&#34;https://gofrp.org/zh-cn/docs/setup/#%E4%B8%8B%E8%BD%BD&#34;&gt;frp下载地址&lt;/a&gt;&lt;/p&gt;
&lt;/blockquote&gt;</description>
    </item>
  </channel>
</rss>
