diff --git a/kotlin/android/app/src/main/java/dev/firezone/android/tunnel/TunnelService.kt b/kotlin/android/app/src/main/java/dev/firezone/android/tunnel/TunnelService.kt index b952b7c1d..8bd55a8ed 100644 --- a/kotlin/android/app/src/main/java/dev/firezone/android/tunnel/TunnelService.kt +++ b/kotlin/android/app/src/main/java/dev/firezone/android/tunnel/TunnelService.kt @@ -314,8 +314,10 @@ class TunnelService : VpnService() { private fun buildVpnService(): Int { Builder().apply { - // Allow traffic to bypass the VPN interface when Always-on VPN is enabled. - allowBypass() + if (tunnelRoutes.all { it.prefix != 0 }) { + // Allow traffic to bypass the VPN interface when Always-on VPN is enabled. + allowBypass() + } if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.Q) { setMetered(false) // Inherit the metered status from the underlying networks.