mirror of
https://github.com/fatedier/frp.git
synced 2026-05-15 16:15:49 -06:00
[GH-ISSUE #4610] xtcp 开启 transport.useCompression = true 就连不上 #3642
Labels
No labels
In Progress
WIP
WaitingForInfo
bug
doc
duplicate
easy
enhancement
future
help wanted
invalid
lifecycle/stale
need-issue-template
need-usage-help
no plan
proposal
pull-request
question
todo
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference: github-starred/frp#3642
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Originally created by @verygoodlee on GitHub (Dec 27, 2024).
Original GitHub issue: https://github.com/fatedier/frp/issues/4610
Bug Description
P2P打洞成功,但是连不上,
经排查,关闭transport.useCompression后就可以了
frpc Version
0.60.0
frps Version
0.60.0
System Architecture
frps: linux/amd64 frpc: windows/amd64
Configurations
frps.toml
frpc.toml
为方便测试,proxy和visitor都放在一台机器上,确保能打洞成功,实际使用时两者肯定是在不同机器上的
Logs
frpc.log
proxy端报的错是
visitor端报的错是
Steps to reproduce
http://localhost:28096结果访问失败,把transport.useCompression改为false就能成功访问了
Affected area
@fatedier commented on GitHub (Dec 27, 2024):
The root cause of your “snappy: corrupt input” error is that the P2P (xtcp) configuration is inconsistent between the proxy and the visitor. Specifically:
If you enable transport.useCompression on the proxy side, you must also enable it on the visitor side for the same xtcp proxy name.
In your current setup, one side is sending compressed data while the other side isn’t expecting to decompress it, triggering the snappy: corrupt input error.
Once you align the settings—either both transport.useCompression = true or both false—the P2P connection should work correctly.
@verygoodlee commented on GitHub (Dec 27, 2024):
好吧,没看到文档中有说这个,为啥stcp没这个限制,只要proxy端开启压缩,visitor端不需要,
建议完善一下文档,或者在frps_full_example.toml里简单提一下