Repository: fatedier/frp (language: go)

Issue:
quic protocol fails to connect in specified os
### Bug Description

quic protocol fails to connect in specified os

### frpc Version

v0.55.1

### frps Version

v0.55.1

### System Architecture

linux/amd64

### Configurations

transport.protocol = "quic"

### Logs

_No response_

### Steps to reproduce

1. 
2. 
3. 
...


### Affected area

- [ ] Docs
- [ ] Installation
- [ ] Performance and Scalability
- [ ] Security
- [X] User Experience
- [ ] Test and Release
- [ ] Developer Infrastructure
- [ ] Client Plugin
- [ ] Server Plugin
- [ ] Extensions
- [ ] Others


Discussion / hints:
https://github.com/quic-go/quic-go/issues/3911

Fix patch:
diff --git a/Release.md b/Release.md
index 3f4af070a58..a699be85ad0 100644
--- a/Release.md
+++ b/Release.md
@@ -1,3 +1,4 @@
 ### Fixes
 
 * Fix the issue of incorrect interval time for rotating the log by day.
+* Disable quic-go's ECN support by default. It may cause issues on certain operating systems.
diff --git a/client/service.go b/client/service.go
index e24e16d7fa3..7a7f6dc88d2 100644
--- a/client/service.go
+++ b/client/service.go
@@ -43,6 +43,10 @@ func init() {
 	crypto.DefaultSalt = "frp"
 	// Disable quic-go's receive buffer warning.
 	os.Setenv("QUIC_GO_DISABLE_RECEIVE_BUFFER_WARNING", "true")
+	// Disable quic-go's ECN support by default. It may cause issues on certain operating systems.
+	if os.Getenv("QUIC_GO_DISABLE_ECN") == "" {
+		os.Setenv("QUIC_GO_DISABLE_ECN", "true")
+	}
 }
 
 type cancelErr struct {
diff --git a/server/service.go b/server/service.go
index 4c3ee125f41..4fdb2166ac7 100644
--- a/server/service.go
+++ b/server/service.go
@@ -63,6 +63,10 @@ const (
 func init() {
 	// Disable quic-go's receive buffer warning.
 	os.Setenv("QUIC_GO_DISABLE_RECEIVE_BUFFER_WARNING", "true")
+	// Disable quic-go's ECN support by default. It may cause issues on certain operating systems.
+	if os.Getenv("QUIC_GO_DISABLE_ECN") == "" {
+		os.Setenv("QUIC_GO_DISABLE_ECN", "true")
+	}
 }
 
 // Server service


Test patch: