From 4a3406799000e8f81b4b54cd8ba43bd8f8bd029b Mon Sep 17 00:00:00 2001 From: chiachangwang Date: Thu, 11 May 2023 02:42:59 +0000 Subject: [PATCH] Change default IP protocol preference from AUTO to IPV4 By default, PREFERRED_IKE_PROTOCOL_IPV4_UDP is used for safety. This is because some carriers' networks do not support IPv6 very well, and using IPv4 can help to prevent problems. Carrierconfig customization on the device should override the value if V6 are known to work well. Bug: 269714970 Test: atest FrameworksNetTests Change-Id: Ia0a6bd11d25fd67edb0a301e81626ec4f174155a --- .../core/java/com/android/server/connectivity/Vpn.java | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/services/core/java/com/android/server/connectivity/Vpn.java b/services/core/java/com/android/server/connectivity/Vpn.java index c678a92af13af..4208a12f91d4b 100644 --- a/services/core/java/com/android/server/connectivity/Vpn.java +++ b/services/core/java/com/android/server/connectivity/Vpn.java @@ -3677,8 +3677,11 @@ public class Vpn { encapType = IkeSessionParams.ESP_ENCAP_TYPE_NONE; break; default: - ipVersion = IkeSessionParams.ESP_IP_VERSION_AUTO; - encapType = IkeSessionParams.ESP_ENCAP_TYPE_AUTO; + // By default, PREFERRED_IKE_PROTOCOL_IPV4_UDP is used for safety. This is + // because some carriers' networks do not support IPv6 very well, and using + // IPv4 can help to prevent problems. + ipVersion = IkeSessionParams.ESP_IP_VERSION_IPV4; + encapType = IkeSessionParams.ESP_ENCAP_TYPE_UDP; break; } return new CarrierConfigInfo(mccMnc, natKeepalive, encapType, ipVersion);