FRP Versions Save

A fast reverse proxy to help you expose a local server behind a NAT or firewall to the internet.

v0.52.0

6 months ago

Features

  • Configuration: We now support TOML, YAML, and JSON for configuration. Please note that INI is deprecated and will be removed in future releases. New features will only be available in TOML, YAML, or JSON. Users wanting these new features should switch their configuration format accordingly. #2521

Breaking Changes

  • Change the way to start the visitor through the command line from frpc stcp --role=visitor xxx to frpc stcp visitor xxx.
  • Modified the semantics of the server_addr in the command line, no longer including the port. Added the server_port parameter to configure the port.
  • No longer support range ports mapping in TOML/YAML/JSON.

v0.51.3

8 months ago

Features

  • Support Go 1.21.

v0.51.2

9 months ago

Features

  • Adds a completion command for shell completions.

Fixes

  • fix a goroutine leak issue caused by Login plugin timeout.
  • Fix an issue introduced in version 0.51.1, enabling use_compression will cause some requests to fail.

v0.51.1

9 months ago

Fixes

  • Fix the issue of not disabling tcp keepalive when configuring tcp_keepalive = -1 in frps.
  • Fix a race condition error.

v0.51.0

9 months ago

Features

  • frpc supports connecting to frps via the wss protocol by enabling the configuration protocol = wss.
  • frpc supports stopping the service through the stop command.

Improvements

  • service.Run supports passing in context.

Fixes

  • Fix an issue caused by a bug in yamux that prevents wss from working properly in certain plugins.

v0.50.0

10 months ago

Notes

For enhanced security, the default values for tls_enable and disable_custom_tls_first_byte have been set to true.

If you wish to revert to the previous default values, you need to manually set the values of these two parameters to false.

Features

  • Added support for allow_users in stcp, sudp, xtcp. By default, only the same user is allowed to access. Use * to allow access from any user. The visitor configuration now supports server_user to connect to proxies of other users.
  • Added fallback support to a specified alternative visitor when xtcp connection fails.

Improvements

  • Increased the default value of MaxStreamWindowSize for yamux to 6MB, improving traffic forwarding rate in high-latency scenarios.

Fixes

  • Fixed an issue where having proxies with the same name would cause previously working proxies to become ineffective in xtcp.

v0.49.0

11 months ago

Notes

We have thoroughly refactored xtcp in this version to improve its penetration rate and stability.

In this version, different penetration strategies can be attempted by retrying connections multiple times. Once a hole is successfully punched, the strategy will be recorded in the server cache for future reuse. When new users connect, the successfully penetrated tunnel can be reused instead of punching a new hole.

Due to a significant refactor of xtcp, this version is not compatible with previous versions of xtcp.

To use features related to xtcp, both frpc and frps need to be updated to the latest version.

New

  • The frpc has added the nathole discover command for testing the NAT type of the current network.
  • XTCP has been refactored, resulting in a significant improvement in the success rate of penetration.
  • When verifying passwords, use subtle.ConstantTimeCompare and introduce a certain delay when the password is incorrect.

Fix

  • Fix the problem of lagging when opening multiple table entries in the frps dashboard.

v0.48.0

1 year ago

New

  • The httpconnect type in tcpmux now supports authentication through the parameters http_user and http_pwd.

Improved

  • The web framework has been upgraded to vue3 + element-plus, and the dashboard has added some information display and supports dark mode.
  • The e2e testing has been switched to ginkgo v2.

v0.47.0

1 year ago

New

  • Added config bandwidth_limit_mode in frpc, default value is client which is current behavior. Optional value is server, to enable bandwidth limit in server. The major aim is to let server plugin has the ability to modify bandwidth limit for each proxy.

Improve

  • dns_server supports ipv6.
  • frpc supports graceful shutdown for protocol quic.

v0.46.1

1 year ago

Fix

  • Server Plugin sends incorrect op name for NewWorkConn.
  • QUIC stream leak.