diff --git a/adapter/outbound/wireguard.go b/adapter/outbound/wireguard.go index 90dff1c8be..f9fc31db51 100644 --- a/adapter/outbound/wireguard.go +++ b/adapter/outbound/wireguard.go @@ -9,6 +9,7 @@ import ( "net" "net/netip" "os" + "runtime" "strconv" "strings" "sync" @@ -188,7 +189,9 @@ type ipStack interface { func newIPStack(option IPStackOption, localAddresses []netip.Prefix, mtu uint32) (ipStack, error) { mode := option.Mode if mode == ipStackAuto { - if features.WithGVisor { + if runtime.GOOS == "windows" { + mode = ipStackMips + } else if features.WithGVisor { mode = ipStackGVisor } else { mode = ipStackMips