iOS Split tunnelling - All IPV4 traffics are tunnelled when we set default IPV6 includedRoutes

If we set default IPV6 includedRoutes and configure IPV4 with some valid routes, now all the IPV4 traffics are tunnelled.


Sample NETunnelNetworkSettings Info:

{

tunnelRemoteAddress = 14.143.66.7

DNSSettings = {

server = (

10.209.112.2,

)

searchDomains = (

)

matchDomains = (

)

matchDomainsNoSearch = NO

}

IPv4Settings = {

configMethod = PPP

addresses = (

10.209.125.38,

)

subnetMasks = (

255.255.255.255,

)

includedRoutes = (

{

destinationAddress = 10.209.116.143

destinationSubnetMask = 255.255.255.255

},

{

destinationAddress = 10.209.125.82

destinationSubnetMask = 255.255.255.255

},

)

overridePrimary = NO

}

IPv6Settings = {

configMethod = automatic

addresses = (

fc00:1111:5678:5678::2101,

)

networkPrefixLengths = (

64,

)

includedRoutes = (

{

destinationAddress = ::

destinationNetworkPrefixLength = 0

},

)

}

MTU = 1300

}


Steps to Reproduce:

1. Configure split tunnel resource, set default includedRoutes for IPV6 (i.e ::) and valid includedRoutes for IPV4 (i.e 10.209.116.143).

2. Connect VPN .

3. Try access the any non defined IPV4 split tunnel resource and observe the traffic is tunnelled.


Expected Results:

Only defined IPV4 includedRoutes should be tunnelled.


Actual Results:

All IPV4 traffics are tunnelled.


Is this the expected behaviour? If so any workaround for this?

Replies

I got same problem, do you know why now?

It could be an iOS behaviour, iOS doesn't allow to set IPV4 with valid routes and IPV6 with default route or vice versa.

Have you figured this one out yet? For me, IPv6 is excluded from the tunnel and I am trying to see how to tunnel IPv6 through the tunnel. Any insights would be helpful! thank you!
Any update on this one?