diff --git a/common/convert/converter.go b/common/convert/converter.go index df0d9ffd..7d896d53 100644 --- a/common/convert/converter.go +++ b/common/convert/converter.go @@ -113,6 +113,12 @@ func ConvertsV2Ray(buf []byte) ([]map[string]any, error) { trojan["grpc-opts"] = grpcOpts } + if fingerprint := query.Get("fp"); fingerprint == "" { + trojan["client-fingerprint"] = "chrome" + } else { + trojan["client-fingerprint"] = fingerprint + } + proxies = append(proxies, trojan) case "vless": diff --git a/common/convert/v.go b/common/convert/v.go index eb2073c3..606d8aff 100644 --- a/common/convert/v.go +++ b/common/convert/v.go @@ -29,6 +29,11 @@ func handleVShareLink(names map[string]int, url *url.URL, scheme string, proxy m tls := strings.ToLower(query.Get("security")) if strings.HasSuffix(tls, "tls") { proxy["tls"] = true + if fingerprint := query.Get("fp"); fingerprint == "" { + proxy["client-fingerprint"] = "chrome" + } else { + proxy["client-fingerprint"] = fingerprint + } } if sni := query.Get("sni"); sni != "" { proxy["servername"] = sni