Sur Orange avec un X IOS13.1
V6 fonctionne parfaitement sur le tel
L'IPv4 passe par du NAT64
Vous pouvez effectuer une résolution DNS d'un enregistrement IPv4 only, par exemple ipv4.tlund.se
Si le résultat est en v6 avec un préfixe de NAT64, DNS64+NAT64
Si le résultat est en v4, vous avez toujours IPv4 soit via DS-LITE, soit via du NAT444 avec le 100.64.
Pour le savoir avec précision, allez sur la page https://1.1.1.1/Attention, safari modifie aussi les signatures, essayez avec chrome et firefox qui ne prennent pas encore le préfixe NAT64 pour la signature des certs !
Le certificat de ce site est signé entre autre pour
Nom DNS: cloudflare-dns.com
Nom DNS: *.cloudflare-dns.com
Nom DNS: one.one.one.one
Adresse IP: 1.1.1.1
Adresse IP: 1.0.0.1
Donc quand du NAT64 rentre en action, 1.1.1.1 est remplacé par
Well
Known
PrefixeNAT64::IPv4enHexa
Vous obtenez alors une erreur TLS donc l'IP a été remplacée, donc NAT64
Mais pourtant, NAT64 marche avec DNS64, et là je n'ai pas fait de requête DNS
Explication, doc IOS
https://developer.apple.com/library/archive/documentation/NetworkingInternetWeb/Conceptual/NetworkingOverview/UnderstandingandPreparingfortheIPv6Transition/UnderstandingandPreparingfortheIPv6Transition.htmlNote: In iOS 9 and OS X 10.11 and later, NSURLSession and CFNetwork automatically synthesize IPv6 addresses from IPv4 literals locally on devices operating on DNS64/NAT64 networks. However, you should still work to rid your code of IP address literals.
IOS synthétise automatiquement une IPv4 littérale en IPv6 avec le WKP
64:ff9b::IPv4Hexa
Pour rappel, contrairement à Android il ne supporte pas 464XLAT qui permet de faire du littéral v4 en local.
Bon, mais qu'en est-il de mon mode modem ?
Je lance le partage, je me connecte avec un PC et là...
Tristesse, pas d'IPv6...
Si je refais mon test de
https://1.1.1.1/ tout fonctionne
Forcèment, je n'ai que de l'IPv4, donc j'obtiens la vrai IP.
Que se passe t-il entre moi et le monde extérieur ?
Via l'app suivante
https://apps.apple.com/us/app/he-net-network-tools/id858241710 section interfaces
je constate qu'une IP DS-LITE 192.0.0.1/32 est fournie à PDP_IP0
Et que les tunnels IPSEC3 et 4 affichent une IP en 100.78 (le fameux 100.64/10 destiné à faire du NAT444 opérateur) sur un backbone v4, mais là fournit dans un tunnel, étrange...
Orange n'utiliserait t-il pas simplement ce range pour les endpoints de tunnels IPSEC v4 ?
Mais du coup ? Mon PC en partage de co, il passe par où ?
Impossible à dire, le traceroute me donnera un 2nd saut en 10.68.X.X à 40ms, (le 1er saut étant mon tel avec le partage wifi en 172)
mais on ne peut pas déterminer la techno d'encapsulation de v4.
Seul un membre de l'entreprise pourrait nous éclairer sur le fonctionnement de l'APN Modem
En conclusion, le PC en partage de co fonctionnera comme avant, sans effet de bord.
Le téléphone fonctionne bien en v6, cependant le DNS64 casse la signature DNSSEC, et évidement NAT64 change l'adresse ce qui peut poser des soucis sur de l'IKE, ou encore sur les certificats TLS liés à des IP (mais bon, qui n'utilise pas de FQDN...)
à terme, la dépendance à la passerelle NAT64 rendra difficile l'usage d'un DNS Tiers, je pense notamment à l'arrivée prochaine de DNS over HTTPS dans firefox
Vous pouvez, comme moi, vous amuser à tester le comportement de Happy Eyeballs sur votre téléphone pour voir si une session privilégie v6 ou v4 en regardant le log d'accès côté serveur, malgré la précédence priorisant v6, c'est pas forcèment encore ça... Ce qui est ennuyeux pour l'opérateur car ça bouffe inutilement des sessions de NAT64. Ils vont surement finir par rajouter volontairement 20ms de retard aux retours DNS v4 quand v6 existe pour aider au choix.