Browse Source

Reduce default MTU for android

世界 2 months ago
parent
commit
c0ac3c748c
1 changed files with 3 additions and 0 deletions
  1. 3 0
      protocol/tun/inbound.go

+ 3 - 0
protocol/tun/inbound.go

@@ -137,6 +137,9 @@ func NewInbound(ctx context.Context, router adapter.Router, logger log.ContextLo
 		if platformInterface != nil && platformInterface.UnderNetworkExtension() {
 			// In Network Extension, when MTU exceeds 4064 (4096-UTUN_IF_HEADROOM_SIZE), the performance of tun will drop significantly, which may be a system bug.
 			tunMTU = 4064
+		} else if C.IsAndroid {
+			// Some Android devices report ENOBUFS when using MTU 65535
+			tunMTU = 9000
 		} else {
 			tunMTU = 65535
 		}