Sakura Frp Official Documentation

repository·master·Indexed 41 days ago

https://github.com/natfrp/wiki

Official help documentation for Sakura Frp, a service provided by natfrp.com. Includes guides on deploying the SakuraFrp Launcher via Docker and Docker Compose, configuring TCP, HTTP, and HTTPS tunnels, and penetrating FTP(S) protocols.

Tokens
76K
Snippets
129
Records
412
Agent score
49%

What's inside Sakura Frp

  1. Identify SakuraFrp components and platforms

    master

    SakuraFrp consists of User Interface (UI) components and Core Services.

    User Interface (UI) Components:

    • SakuraLauncher.exe: Windows (WPF launcher, provides latest features).
    • LegacyLauncher.exe: Windows (Legacy launcher, provides basic features).
    • SakuraLauncher.app: macOS.
    • SakuraLauncher.apk: Android.
    • Web UI: Managed via PWA on all platforms.

    Core Services:

    • SakuraFrpService.exe: Windows.
    • natfrp-service.app: macOS (Note: Due to Apple signing, this must be used via SakuraLauncher.app).
    • natfrp-service: Linux / FreeBSD.

    Note for Advanced Users: You can bypass the UI by manually modifying config.json and using the Web UI for remote management. The CLI flags and environment variables described in this manual apply to the Core Services, not the UI components.

  2. Minecraft LAN connectivity options

    master

    This guide provides methods for enabling Minecraft LAN multiplayer via Sakura Frp. Depending on your version and setup preference, you can choose between connecting via a dedicated server or using LAN penetration methods.

    1. Connecting via a Dedicated Server

    If you prefer to host a full server rather than using LAN penetration:

    2. Java Edition LAN Penetration

    If you want to play via LAN without a dedicated server, the guide covers several specific scenarios:

    • Java Edition LAN (Standard)
    • Java Edition without auxiliary Mods
    • Java Edition with auxiliary Mods
  3. What is Intranet Penetration (NAT Traversal) in SakuraFrp

    master

    Intranet penetration (内网穿透) is a technique used to establish communication between devices that do not have a public IP address.

    Since most home networks (LANs) are behind routers without public IPs, devices in different networks cannot connect to each other directly. SakuraFrp solves this by using a server with a public IP, referred to as a Node (节点), to act as an intermediary.

    How it works:

    1. Tunnel (隧道): The user runs frpc on their local machine (the device behind the NAT). frpc establishes a connection to the SakuraFrp Node over the internet. This connection is called a Tunnel.
    2. Remote Port (远程端口): The SakuraFrp Node assigns a specific port to each tunnel. This is the port that external users will connect to.
    3. Data Forwarding: When an external user connects to the Node:Remote Port, the Node forwards the data through the established Tunnel to the frpc client. The frpc client then connects to the specified Local IP:Local Port on the user's machine.

    Note on IP visibility: Because the connection is proxied, the destination service will see the IP address of the frpc client (typically 127.0.0.1) rather than the external user's real IP. To see the real IP, additional configuration is required.

  4. Choose the correct tunnel type for Web applications

    master

    Sakura Frp provides three tunnel types. Choosing the right one depends on whether you want to use a custom domain and how you want to access the service.

    Tunnel TypeSupported ProtocolsPort AccessCustom DomainAccess Format
    TCPHTTP / HTTPSRequiredOptional (or via subdomain binding)http://frp-xxx.com:12345
    HTTPHTTPNot requiredRequiredhttp://my.example.com
    HTTPSHTTPSNot requiredRequiredhttps://my.example.com

    Important Restrictions:

    • TCP Tunnels: If the application protocol is HTTP, you must use a non-Mainland China node.
    • HTTP(S) Tunnels: If using a Mainland China node, you must use a domain with an ICP filing (备案).
  5. Understanding Ports and Port Conflicts in SakuraFrp

    master

    In the context of SakuraFrp and networking, a Port (端口) acts as a service window on a computer. It is the specific identifier used to direct incoming traffic to a particular service or application.

    When using SakuraFrp:

    • The Node acts as a relay station that remembers which Remote Port corresponds to which specific local machine and local service.
    • Port Conflict: If two different users or services attempt to use the same port simultaneously, a conflict occurs. In SakuraFrp, the system prevents the second user from seizing a port that is already in use.
  6. RustDesk service usage limits and eligibility

    master

    Eligibility

    As of 2025-09-01, all users who have completed Real-name Authentication (实名认证) are eligible to use the RustDesk service.

    Usage Limits

    • Authentication: Both the controller and the controlled device must be logged into a SakuraFrp account with usage permissions.
    • Device Limits:
      • Regular users: Up to 5 logged-in clients.
      • VIP users: Up to 50 logged-in clients.
    • Authorization: By default, a controlled device only accepts connections from devices logged into the same account. To allow others to connect, configure the specific device's UID in the Session Management interface.

    Service Status Warning

    This is a public service provided for technical support and is not guaranteed to be permanent. It may be taken offline at any time. It is recommended to use this only as a backup solution and not as your primary remote access method.

  7. Data safety and privacy in real-name authentication

    master
    Real-name authentication processes involving facial recognition or ID card photography are handled directly by Alipay or Megvii. The platform does not have access to your photos or sensitive biometric data. All information storage, disclosure, and deletion operations are conducted in accordance with the site's Privacy Policy and relevant legal regulations.
  8. Understanding the difference between Real-name Authentication, ICP Filing, and Public Security Filing

    master

    When setting up services, it is important to distinguish between these three distinct requirements:

    1. Real-name Authentication (实名认证): This is the identity verification required by domain registrars or SakuraFrp itself. It is not the same as ICP filing.
    2. ICP Filing (ICP 备案): This is the mandatory registration with the Ministry of Industry and Information Technology (MIIT) required to host a website. This is what is commonly referred to as "Filing" (备案).
    3. Public Security Filing (公安网备案): This is a separate registration with the National Internet Security Management Service Platform. Small, private applications (like a personal NAS) typically do not require this filing.
  9. Understanding the 1 CNY authentication fee

    master

    The 1 CNY fee is charged because the platform uses third-party real-person authentication interfaces (provided by Alipay or Megvii) to verify the authenticity of submitted information. These are paid interfaces that cost 1 CNY per authentication.

    Refund Policy:

    • You can request a 7-day no-reason refund before completing the authentication.
    • Once the authentication is completed, the real-name qualification order is non-refundable.
  10. Understand SakuraFrp working directories

    master

    The core service creates all files relative to its Working Directory. Default paths vary by platform:

    • Windows: %PROGRAMDATA%\SakuraFrpService
    • macOS: ~/Library/Containers/com.natfrp.launcher/Data/Library/Application Support/natfrp-service
    • Linux / FreeBSD:
      • Follows FreeDesktop spec: $XDG_CONFIG_HOME/.config/natfrp-service (or ~/.config/natfrp-service if $XDG_CONFIG_HOME is unset).
      • If installed via one-click script: /etc/natfrp.
    • Android Launcher: /data/data/com.natfrp.launcher/service/
    • OpenWrt LuCI Plugin: /etc/natfrp
    • Synology DSM Package: /var/packages/natfrp/var
    • Docker Image: /run/

    Subdirectories within the working directory:

    • config.json: Core configuration file.
    • Logs/: Service logs (e.g., Logs/natfrp-service.<timestamp>.log) and Logs/Update.log.
    • FrpcWorkingDirectory/: Directory for frpc operations.
    • Update/: Temporary directory for update files.
    • Temp/: WPF launcher temporary directory (Windows only).
    • lock.pid: Mutex lock/PID file (Linux/FreeBSD only).
  11. Can one frpc connect to multiple tunnels?

    master

    Whether a single frpc process can connect to multiple tunnels depends on the version and the target nodes:

    • Sakura Frp version (-sakura- suffix, v0.42.0-sakura-5 or later): Supports multi-node mode. A single frpc process can connect to multiple tunnels even if they are located on different nodes.
    • Old or Original version (no -sakura- suffix): A single frpc process can only connect to one node. While it can host multiple tunnels, all those tunnels must reside on that same single node.

    Important Note on the Launcher: The Sakura Frp Launcher automatically manages frpc processes to ensure one frpc connects to exactly one tunnel. Therefore, frpc instances started via the Launcher cannot be used to connect to multiple tunnels simultaneously.