He encontrado una manera de revertir el tether de un dispositivo iOS, o conectarlo a Internet a través del cable usb solamente. Muchas de las formas más antiguas de hacer esto requerían una conexión de datos activa, ya que había que configurar el proxy para esa interfaz manualmente para utilizar un túnel tcp usb. El host es un Mac que ejecuta la vista previa para desarrolladores de macOS High Sierra. El dispositivo es un iPhone 4s con iOS 7.1.2 con jailbreak. La forma en que lo he hecho es la siguiente:
Crear un túnel pppd. Primero, instalé libimobiledevice para configurar un túnel tcp para ingresar con ssh a mi idevice más tarde:
iproxy 2022 22
entonces un túnel dedicado para que pppd lo utilice:
iproxy 4444 4444
Ahora me conecto a mi idevice: ssh localhost -p 2022
Ahora, el túnel pppd, primero desde mi idevice:
pppd noipdefault nodetach usepeerdns pty "nc -l -p 4444 localhost"
Observe que estoy escuchando una conexión desde el cliente. Esto se debe a que iproxy sólo permite que se inicie una conexión desde el ordenador anfitrión. Ahora, en el ordenador anfitrión:
pppd 172.16.1.2:172.16.1.3 proxyarp usehostname ms-dns 8.8.8.8 nodetach pty "nc localhost 4444"
Estoy utilizando nc como mi conexión, de nuevo debido a la limitación de la conexión de sólo host.
Tras unos segundos, tanto el proceso pppd del host como el del cliente muestran los detalles de la conexión:
client pppd:
Wed Sep 13 00:36:28 2017 : publish_entry SCDSet() failed: Success!
Wed Sep 13 00:36:28 2017 : publish_entry SCDSet() failed: Success!
Wed Sep 13 00:36:28 2017 : set_up_tty, can't set controlling terminal: Operation not permitted
Wed Sep 13 00:36:28 2017 : Using interface ppp0
Wed Sep 13 00:36:28 2017 : Connect: ppp0 <--> /dev/ttys003
Wed Sep 13 00:36:32 2017 : local IP address 172.16.1.3
Wed Sep 13 00:36:32 2017 : remote IP address 172.16.1.2
Wed Sep 13 00:36:32 2017 : primary DNS address 8.8.8.8
Wed Sep 13 00:36:32 2017 : secondary DNS address 8.8.8.8
host pppd:
Wed Sep 13 00:36:19 2017 : publish_entry SCDSet() failed: Success!
Wed Sep 13 00:36:19 2017 : publish_entry SCDSet() failed: Success!
Wed Sep 13 00:36:19 2017 : set_up_tty, can't set controlling terminal:
Operation not permitted
Wed Sep 13 00:36:19 2017 : Using interface ppp0
Wed Sep 13 00:36:19 2017 : Connect: ppp0 <--> /dev/ttys015
Wed Sep 13 00:36:20 2017 : found interface en1 for proxy arp
Wed Sep 13 00:36:20 2017 : local IP address 172.16.1.2
Wed Sep 13 00:36:20 2017 : remote IP address 172.16.1.3
Wed Sep 13 00:36:20 2017 : Committed PPP store
El idevice está ahora conectado a mi máquina anfitriona. He instalado adv-cmds y network-cmds desde Cydia, y así tengo disponibles ifconfig, route, etc. Desde mi idevice:
$ ifconfig
lo0: flags=8049<UP,LOOPBACK,RUNNING,MULTICAST> mtu 16384
inet 127.0.0.1 netmask 0xff000000
pdp_ip0: flags=8010<POINTOPOINT,MULTICAST> mtu 1500
pdp_ip1: flags=8010<POINTOPOINT,MULTICAST> mtu 1500
pdp_ip2: flags=8010<POINTOPOINT,MULTICAST> mtu 1500
pdp_ip3: flags=8010<POINTOPOINT,MULTICAST> mtu 1500
en0: flags=8822<BROADCAST,SMART,SIMPLEX,MULTICAST> mtu 1500
ether c2:9f:42:7f:cd:1d
ppp0: flags=8051<UP,POINTOPOINT,RUNNING,MULTICAST> mtu 1500
inet 172.16.1.3 --> 172.16.1.2 netmask 0xffff0000
Ya funciona. Pero aún no puedo usarlo. El idevice no tiene ninguna ruta para esta nueva interfaz. Mi red doméstica está en la red 172.16, y quiero alcanzar todos los dispositivos en ella. Así que ejecuto:
route add -net 172.16 172.16.1.2
Ahora, si abro safari, puedo acceder a todos los dispositivos de esa red. Si voy más allá, y hago
route add default 172.16.1.2
Puedo acceder a todas las direcciones IP numéricas, externas e internas. Sin embargo todos los nombres de dominio siguen devolviendo el temido "Safari no puede abrir la página porque su iPhone no está conectado a Internet". Veamos la configuración de mi ruta:
$ netstat -rn
Routing tables
Internet:
Destination Gateway Flags Refs Use Netif Expire
default 172.16.1.2 UGSc 0 0 ppp0
127 127.0.0.1 UCS 0 0 lo0
127.0.0.1 127.0.0.1 UH 11 49203 lo0
172.16 172.16.1.2 UGSc 2 0 ppp0
172.16.1.2 172.16.1.3 UH 4 12 ppp0
224.0.0/4 lo0 UCS 0 0 lo0
Tuve la corazonada de que iOS incluye algunas herramientas relacionadas con el sistema preinstaladas, y así es como encontré pppd.
$ ls /usr/sbin
BTAvrcp BlueTool addNetworkInterface distnoted ipconfig mkfile nvram rtadvd startupfiletool traceroute6 vipw zic
BTLEServer absd arp fairplayd.H1 mDNSResponder natd pppd scselect sysctl trpt wifid
BTMap ac aslmanager filecoordinationd mDNSResponderHelper ndp pwd_mkdb scutil syslogd update wirelessproxd
BTServer accton daily iostat mediaserverd notifyd racoon sshd traceroute vifs zdump
addNetworkInterface es una herramienta que nunca había visto antes.
/usr/sbin/addNetworkInterface --help
options:
[-i <interface>]
[-c <controller>]
[-p] persistent host detection
[-s] route logging to syslog
Probemos con ppp0:
/usr/sbin/addNetworkInterface -i ppp0
Looking for interface ppp0
Looking for all controllers
Looking for network interfaces...
No parece hacer nada. ¿Tal vez no se detecta el DNS? En /usr/sbin también encontré scutil, que ya había visto antes, en OS X. Así que,
$ scutil --dns
resolver #1
resolver #2
domain : local
options : mdns
timeout : 5
order : 300000
resolver #3
domain : 254.169.in-addr.arpa
options : mdns
timeout : 5
order : 300200
resolver #4
domain : 8.e.f.ip6.arpa
options : mdns
timeout : 5
order : 300400
resolver #5
domain : 9.e.f.ip6.arpa
options : mdns
timeout : 5
order : 300600
resolver #6
domain : a.e.f.ip6.arpa
options : mdns
timeout : 5
order : 300800
resolver #7
domain : b.e.f.ip6.arpa
options : mdns
timeout : 5
order : 301000
Hmm, no hay 8.8.8.8 (google public dns) y el resolver #1 está vacío. Veamos si iOS ve ppp0:
$ scutil --nwi
IPv4 network interface information
No IPv4 states found
IPv6 network interface information
No IPv6 states found
Aha, iOS no ve mi interfaz ppp0. Sin embargo, resulta que tengo un servidor L2TP vpn en 172.16.12.1. Intenté añadir una vpn a través de la configuración para ello, ¡y se conecta! Tengo acceso a Internet, y el DNS se resuelve. Veamos qué ha cambiado:
$ ifconfig
lo0: flags=8049<UP,LOOPBACK,RUNNING,MULTICAST> mtu 16384
inet 127.0.0.1 netmask 0xff000000
pdp_ip0: flags=8010<POINTOPOINT,MULTICAST> mtu 1500
pdp_ip1: flags=8010<POINTOPOINT,MULTICAST> mtu 1500
pdp_ip2: flags=8010<POINTOPOINT,MULTICAST> mtu 1500
pdp_ip3: flags=8010<POINTOPOINT,MULTICAST> mtu 1500
en0: flags=8863<UP,BROADCAST,SMART,RUNNING,SIMPLEX,MULTICAST> mtu 1500
ether c2:9f:42:7f:cd:1d
ppp0: flags=8051<UP,POINTOPOINT,RUNNING,MULTICAST> mtu 1500
inet 172.16.1.3 --> 172.16.1.2 netmask 0xffff0000
ppp1: flags=8051<UP,POINTOPOINT,RUNNING,MULTICAST> mtu 1280
inet 172.17.0.6 --> 172.16.12.1 netmask 0xffff0000
Bien, probemos con scutil:
$ scutil --nwi
IPv4 network interface information
ppp1 : flags 0x5 (IPv4,DNS)
reach 0x3 (Reachable,Transient Connection)
VPN server: 172.16.12.1
Signature Hash: <data> 0x3287f850c5bceebf3963027f203dfd222b245973
generation 890780619714
IPv6 network interface information
No IPv6 states found
Aha, iOS sí ve esa conexión vpn. Veamos ahora las tablas de enrutamiento:
$ netstat -rn
Routing tables
Internet:
Destination Gateway Flags Refs Use Netif Expire
default 172.16.12.1 UGSc 1 0 ppp1
127 127.0.0.1 UCS 0 0 lo0
127.0.0.1 127.0.0.1 UH 11 49349 lo0
172.16 172.16.1.2 UGSc 2 0 ppp0
172.16.1.2 172.16.1.3 UH 3 12 ppp0
172.16.12.1 172.17.0.7 UH 2 0 ppp1
172.17 ppp1 USc 0 0 ppp1
Note que mi servidor vpn L2TP asigna direcciones en la red 172.17. Interesante... pero eso es exactamente lo que hice con mi configuración pppd.
Probemos a ver qué ve scutil. Puedes entrar en modo interactivo simplemente invocando scutil sin argumentos.
$ scutil
> list
subKey [0] = Plugin:IPConfiguration
subKey [1] = Plugin:InterfaceNamer
subKey [2] = Setup:
subKey [3] = Setup:/
subKey [4] = Setup:/Network/Global/IPv4
subKey [5] = Setup:/Network/HostNames
subKey [6] = Setup:/Network/Service/10D89B08-6E93-430C-BF49-A20670EFE79D
subKey [7] = Setup:/Network/Service/10D89B08-6E93-430C-BF49-A20670EFE79D/Interface
subKey [8] = Setup:/Network/Service/10D89B08-6E93-430C-BF49-A20670EFE79D/com.apple.CommCenter
subKey [9] = Setup:/Network/Service/10D89B08-6E93-430C-BF49-A20670EFE79D/com.apple.CommCenter/Setup
subKey [10] = Setup:/Network/Service/23C902DC-A50E-4873-8A40-F9EFF62CCE97
subKey [11] = Setup:/Network/Service/23C902DC-A50E-4873-8A40-F9EFF62CCE97/IPv4
subKey [12] = Setup:/Network/Service/23C902DC-A50E-4873-8A40-F9EFF62CCE97/IPv6
subKey [13] = Setup:/Network/Service/23C902DC-A50E-4873-8A40-F9EFF62CCE97/Interface
subKey [14] = Setup:/Network/Service/23C902DC-A50E-4873-8A40-F9EFF62CCE97/Proxies
subKey [15] = Setup:/Network/Service/261FD5D3-87FF-4D60-A3C2-66A8B785BFF7
subKey [16] = Setup:/Network/Service/261FD5D3-87FF-4D60-A3C2-66A8B785BFF7/Interface
subKey [17] = Setup:/Network/Service/261FD5D3-87FF-4D60-A3C2-66A8B785BFF7/com.apple.CommCenter
subKey [18] = Setup:/Network/Service/AFA7F205-4647-4C6D-890E-9925C4909BE2
subKey [19] = Setup:/Network/Service/AFA7F205-4647-4C6D-890E-9925C4909BE2/Interface
subKey [20] = Setup:/Network/Service/AFA7F205-4647-4C6D-890E-9925C4909BE2/com.apple.CommCenter
subKey [21] = Setup:/Network/Service/AFA7F205-4647-4C6D-890E-9925C4909BE2/com.apple.CommCenter/Setup
subKey [22] = Setup:/Network/Service/B7F49FAB-68BA-483B-8867-8190FD5B94ED
subKey [23] = Setup:/Network/Service/B7F49FAB-68BA-483B-8867-8190FD5B94ED/Interface
subKey [24] = Setup:/Network/Service/B7F49FAB-68BA-483B-8867-8190FD5B94ED/com.apple.CommCenter
subKey [25] = Setup:/Network/Service/FF84E6AB-D5D4-4CE0-A9EE-FBAB5DE824C7
subKey [26] = Setup:/Network/Service/FF84E6AB-D5D4-4CE0-A9EE-FBAB5DE824C7/IPSec
subKey [27] = Setup:/Network/Service/FF84E6AB-D5D4-4CE0-A9EE-FBAB5DE824C7/IPv4
subKey [28] = Setup:/Network/Service/FF84E6AB-D5D4-4CE0-A9EE-FBAB5DE824C7/IPv6
subKey [29] = Setup:/Network/Service/FF84E6AB-D5D4-4CE0-A9EE-FBAB5DE824C7/Interface
subKey [30] = Setup:/Network/Service/FF84E6AB-D5D4-4CE0-A9EE-FBAB5DE824C7/PPP
subKey [31] = Setup:/Network/Service/FF84E6AB-D5D4-4CE0-A9EE-FBAB5DE824C7/Proxies
subKey [32] = Setup:/System
subKey [33] = State:/IOKit/LowBatteryWarning
subKey [34] = State:/IOKit/PowerAdapter
subKey [35] = State:/IOKit/PowerManagement/CurrentSettings
subKey [36] = State:/IOKit/PowerManagement/SystemLoad
subKey [37] = State:/IOKit/PowerManagement/SystemLoad/Detailed
subKey [38] = State:/IOKit/PowerSources/InternalBattery-0
subKey [39] = State:/Network/Global/DNS
subKey [40] = State:/Network/Global/IPv4
subKey [41] = State:/Network/Global/Proxies
subKey [42] = State:/Network/Interface
subKey [43] = State:/Network/Interface/en0/Link
subKey [44] = State:/Network/Interface/lo0/IPv4
subKey [45] = State:/Network/Interface/lo0/IPv6
subKey [46] = State:/Network/Interface/lo0/LinkQuality
subKey [47] = State:/Network/Interface/pdp_ip0/LinkQuality
subKey [48] = State:/Network/Interface/pdp_ip1/LinkQuality
subKey [49] = State:/Network/Interface/pdp_ip2/LinkQuality
subKey [50] = State:/Network/Interface/pdp_ip3/LinkQuality
subKey [51] = State:/Network/Interface/ppp0/IPv4
subKey [52] = State:/Network/Interface/ppp1/IPv4
subKey [53] = State:/Network/MulticastDNS
subKey [54] = State:/Network/Service/10D89B08-6E93-430C-BF49-A20670EFE79D
subKey [55] = State:/Network/Service/10D89B08-6E93-430C-BF49-A20670EFE79D/com.apple.CommCenter
subKey [56] = State:/Network/Service/261FD5D3-87FF-4D60-A3C2-66A8B785BFF7/com.apple.CommCenter
subKey [57] = State:/Network/Service/AAAAAAAA-AAAA-AAAA-AAAA-AAAAAAAAAAAA
subKey [58] = State:/Network/Service/AAAAAAAA-AAAA-AAAA-AAAA-AAAAAAAAAAAA/DNS
subKey [59] = State:/Network/Service/AAAAAAAA-AAAA-AAAA-AAAA-AAAAAAAAAAAA/IPv4
subKey [60] = State:/Network/Service/AAAAAAAA-AAAA-AAAA-AAAA-AAAAAAAAAAAA/IPv6
subKey [61] = State:/Network/Service/AAAAAAAA-AAAA-AAAA-AAAA-AAAAAAAAAAAA/PPP
subKey [62] = State:/Network/Service/AFA7F205-4647-4C6D-890E-9925C4909BE2/com.apple.CommCenter
subKey [63] = State:/Network/Service/B7F49FAB-68BA-483B-8867-8190FD5B94ED/com.apple.CommCenter
subKey [64] = State:/Network/Service/FF84E6AB-D5D4-4CE0-A9EE-FBAB5DE824C7/DNS
subKey [65] = State:/Network/Service/FF84E6AB-D5D4-4CE0-A9EE-FBAB5DE824C7/IPv4
subKey [66] = State:/Network/Service/FF84E6AB-D5D4-4CE0-A9EE-FBAB5DE824C7/IPv6
subKey [67] = State:/Network/Service/FF84E6AB-D5D4-4CE0-A9EE-FBAB5DE824C7/PPP
subKey [68] = State:/Network/Service/FF84E6AB-D5D4-4CE0-A9EE-FBAB5DE824C7/Proxies
subKey [69] = State:/Network/mDNSResponder/DebugState
subKey [70] = com.apple.CFNetwork.netcompat.HTTPPipelining:VPN.RemoteAddress=172.16.12.1
subKey [71] = com.apple.CFNetwork.netcompat.TLSFalseStart:VPN.RemoteAddress=172.16.12.1
subKey [72] = com.apple.CFNetwork.netcompat:com.apple.CFNetwork.netcompat.lastpurge
subKey [73] = com.apple.MobileInternetSharing
Así que iOS tiene un montón de interfaces establecidas. Sólo me interesa la activa, mi vpn l2tp, que es ppp1. Así que:
> get State:/Network/Global/IPv4
> d.show
<dictionary> {
PrimaryInterface : ppp1
PrimaryService : FF84E6AB-D5D4-4CE0-A9EE-FBAB5DE824C7
Router : 172.16.12.1
}
> get State:/Network/Global/DNS
> d.show
<dictionary> {
ServerAddresses : <array> {
0 : 8.8.8.8
1 : 8.8.4.4
}
}
Así que ahí se define. Vamos a obtener todos los valores para el PrimaryService:
> get State:/Network/Service/FF84E6AB-D5D4-4CE0-A9EE-FBAB5DE824C7/DNS
> d.show
<dictionary> {
ServerAddresses : <array> {
0 : 8.8.8.8
1 : 8.8.4.4
}
SupplementalMatchDomains : <array> {
0 :
}
SupplementalMatchOrders : <array> {
0 : 100000
}
}
> get State:/Network/Service/FF84E6AB-D5D4-4CE0-A9EE-FBAB5DE824C7/IPv4
> d.show
<dictionary> {
Addresses : <array> {
0 : 172.17.0.7
}
DestAddresses : <array> {
0 : 172.16.12.1
}
InterfaceName : ppp1
NetworkSignature : VPN.RemoteAddress=172.16.12.1
OverridePrimary : 1
Router : 172.16.12.1
ServerAddress : 172.16.12.1
}
> get State:/Network/Service/FF84E6AB-D5D4-4CE0-A9EE-FBAB5DE824C7/PPP
> d.show
<dictionary> {
CommRemoteAddress : 172.16.12.1
ConnectTime : 37417
IPCPCompressionVJ : 0
InterfaceName : ppp1
LCPCompressionACField : 1
LCPCompressionPField : 1
LCPMRU : 1500
LCPMTU : 1280
Status : 8
}
Todo definido. Veámoslo sin la vpn L2TP conectada:
> list
subKey [0] = Plugin:IPConfiguration
subKey [1] = Plugin:InterfaceNamer
subKey [2] = Setup:
subKey [3] = Setup:/
subKey [4] = Setup:/Network/Global/IPv4
subKey [5] = Setup:/Network/HostNames
subKey [6] = Setup:/Network/Service/10D89B08-6E93-430C-BF49-A20670EFE79D
subKey [7] = Setup:/Network/Service/10D89B08-6E93-430C-BF49-A20670EFE79D/Interface
subKey [8] = Setup:/Network/Service/10D89B08-6E93-430C-BF49-A20670EFE79D/com.apple.CommCenter
subKey [9] = Setup:/Network/Service/10D89B08-6E93-430C-BF49-A20670EFE79D/com.apple.CommCenter/Setup
subKey [10] = Setup:/Network/Service/23C902DC-A50E-4873-8A40-F9EFF62CCE97
subKey [11] = Setup:/Network/Service/23C902DC-A50E-4873-8A40-F9EFF62CCE97/IPv4
subKey [12] = Setup:/Network/Service/23C902DC-A50E-4873-8A40-F9EFF62CCE97/IPv6
subKey [13] = Setup:/Network/Service/23C902DC-A50E-4873-8A40-F9EFF62CCE97/Interface
subKey [14] = Setup:/Network/Service/23C902DC-A50E-4873-8A40-F9EFF62CCE97/Proxies
subKey [15] = Setup:/Network/Service/261FD5D3-87FF-4D60-A3C2-66A8B785BFF7
subKey [16] = Setup:/Network/Service/261FD5D3-87FF-4D60-A3C2-66A8B785BFF7/Interface
subKey [17] = Setup:/Network/Service/261FD5D3-87FF-4D60-A3C2-66A8B785BFF7/com.apple.CommCenter
subKey [18] = Setup:/Network/Service/AFA7F205-4647-4C6D-890E-9925C4909BE2
subKey [19] = Setup:/Network/Service/AFA7F205-4647-4C6D-890E-9925C4909BE2/Interface
subKey [20] = Setup:/Network/Service/AFA7F205-4647-4C6D-890E-9925C4909BE2/com.apple.CommCenter
subKey [21] = Setup:/Network/Service/AFA7F205-4647-4C6D-890E-9925C4909BE2/com.apple.CommCenter/Setup
subKey [22] = Setup:/Network/Service/B7F49FAB-68BA-483B-8867-8190FD5B94ED
subKey [23] = Setup:/Network/Service/B7F49FAB-68BA-483B-8867-8190FD5B94ED/Interface
subKey [24] = Setup:/Network/Service/B7F49FAB-68BA-483B-8867-8190FD5B94ED/com.apple.CommCenter
subKey [25] = Setup:/Network/Service/FF84E6AB-D5D4-4CE0-A9EE-FBAB5DE824C7
subKey [26] = Setup:/Network/Service/FF84E6AB-D5D4-4CE0-A9EE-FBAB5DE824C7/IPSec
subKey [27] = Setup:/Network/Service/FF84E6AB-D5D4-4CE0-A9EE-FBAB5DE824C7/IPv4
subKey [28] = Setup:/Network/Service/FF84E6AB-D5D4-4CE0-A9EE-FBAB5DE824C7/IPv6
subKey [29] = Setup:/Network/Service/FF84E6AB-D5D4-4CE0-A9EE-FBAB5DE824C7/Interface
subKey [30] = Setup:/Network/Service/FF84E6AB-D5D4-4CE0-A9EE-FBAB5DE824C7/PPP
subKey [31] = Setup:/Network/Service/FF84E6AB-D5D4-4CE0-A9EE-FBAB5DE824C7/Proxies
subKey [32] = Setup:/System
subKey [33] = State:/IOKit/LowBatteryWarning
subKey [34] = State:/IOKit/PowerAdapter
subKey [35] = State:/IOKit/PowerManagement/CurrentSettings
subKey [36] = State:/IOKit/PowerManagement/SystemLoad
subKey [37] = State:/IOKit/PowerManagement/SystemLoad/Detailed
subKey [38] = State:/IOKit/PowerSources/InternalBattery-0
subKey [39] = State:/Network/Global/Proxies
subKey [40] = State:/Network/Interface
subKey [41] = State:/Network/Interface/en0/Link
subKey [42] = State:/Network/Interface/lo0/IPv4
subKey [43] = State:/Network/Interface/lo0/IPv6
subKey [44] = State:/Network/Interface/lo0/LinkQuality
subKey [45] = State:/Network/Interface/pdp_ip0/LinkQuality
subKey [46] = State:/Network/Interface/pdp_ip1/LinkQuality
subKey [47] = State:/Network/Interface/pdp_ip2/LinkQuality
subKey [48] = State:/Network/Interface/pdp_ip3/LinkQuality
subKey [49] = State:/Network/Interface/ppp0/IPv4
subKey [50] = State:/Network/MulticastDNS
subKey [51] = State:/Network/Service/10D89B08-6E93-430C-BF49-A20670EFE79D
subKey [52] = State:/Network/Service/10D89B08-6E93-430C-BF49-A20670EFE79D/com.apple.CommCenter
subKey [53] = State:/Network/Service/261FD5D3-87FF-4D60-A3C2-66A8B785BFF7/com.apple.CommCenter
subKey [54] = State:/Network/Service/AAAAAAAA-AAAA-AAAA-AAAA-AAAAAAAAAAAA
subKey [55] = State:/Network/Service/AAAAAAAA-AAAA-AAAA-AAAA-AAAAAAAAAAAA/DNS
subKey [56] = State:/Network/Service/AAAAAAAA-AAAA-AAAA-AAAA-AAAAAAAAAAAA/IPv4
subKey [57] = State:/Network/Service/AAAAAAAA-AAAA-AAAA-AAAA-AAAAAAAAAAAA/IPv6
subKey [58] = State:/Network/Service/AAAAAAAA-AAAA-AAAA-AAAA-AAAAAAAAAAAA/PPP
subKey [59] = State:/Network/Service/AFA7F205-4647-4C6D-890E-9925C4909BE2/com.apple.CommCenter
subKey [60] = State:/Network/Service/B7F49FAB-68BA-483B-8867-8190FD5B94ED/com.apple.CommCenter
subKey [61] = State:/Network/mDNSResponder/DebugState
subKey [62] = com.apple.CFNetwork.netcompat.HTTPPipelining:VPN.RemoteAddress=172.16.12.1
subKey [63] = com.apple.CFNetwork.netcompat.TLSFalseStart:VPN.RemoteAddress=172.16.12.1
subKey [64] = com.apple.CFNetwork.netcompat:com.apple.CFNetwork.netcompat.lastpurge
subKey [65] = com.apple.MobileInternetSharing
Toda la configuración ha desaparecido. Por eso no funciona. Ten en cuenta que el servicio AAAAAAAA-AAAA-AAAA-AAAAAAAA es uno que intenté hacer manualmente y añadir todas las claves como estaban configuradas para ppp1 pero sustituyéndolo por ppp0 pero no funcionó.
Entonces, ¿es posible añadir ppp0 a través de scutil o de alguna otra manera, de manera que las direcciones DNS funcionen, y iOS sea consciente de que ES una conexión a Internet, que las aplicaciones pueden utilizar?