Je doute que cela soit possible sans une rupture de prison étendue, mais est-il possible de modifier le fichier d'hôtes de l'iPad (ou de tout appareil iOS)?
Je doute que cela soit possible sans une rupture de prison étendue, mais est-il possible de modifier le fichier d'hôtes de l'iPad (ou de tout appareil iOS)?
Réponses:
Non. Les applications ne peuvent modifier les fichiers que dans le répertoire des documents, dans leur propre sandbox. C'est pour la sécurité et la facilité d'installation / désinstallation. Vous ne pouvez donc le faire que sur un appareil jailbreaké.
La réponse précédente est correcte, mais si l'effet que vous recherchez est de rediriger le trafic HTTP pour un domaine vers une autre IP, il existe un moyen.
Puisqu'il ne répond pas techniquement à votre question, j'ai posé et répondu à la question ici:
Comment puis-je rediriger les requêtes HTTP effectuées depuis un iPad?
Non, vous ne pouvez pas modifier le fichier hôte de l'iPad (sans jailbreak), mais vous pouvez contourner le problème.
Voici mon scénario:
192.168.2.1
, exécutant une application WebJe vais tester l'application Web exécutée sur mon Mac via iPad, mais je ne peux pas y accéder directement.
La solution fonctionne pour moi:
Port
(principalement 8888
) et basculez Enable transparent HTTP proxying
.Vous pouvez maintenant visiter votre application Web sur iPad.
Bien sûr , vous pouvez utiliser d' autres outils de proxy comme Squid ou Varnish sous Linux, ou Fiddler dans wondows.
NodeJs
module filternet
Le moyen le plus simple de le faire est d'exécuter un simulateur iPad à l'aide de XCode, puis d'ajouter une entrée dans le fichier hosts (/ etc / hosts) sur le système hôte pour pointer vers votre site de test.
J'avais besoin de la même fonctionnalité, et faire du jailbreak est non-non. Une solution consiste à vous héberger un serveur DNS ( MaraDNS ), à accéder à vos paramètres wifi dans ipad / téléphone et à y ajouter votre serveur DNS personnalisé.
L'ensemble du processus ne m'a pris que 10 minutes et ça marche!
1) Téléchargez MaraDNS
2) Exécuter en mkSecretTxt.exe
tant qu'administrateur
3) Modifier le mararc
fichier, le mien est:
ipv4_bind_addresses = "put your public IP Here"
timestamp_type = 2
random_seed_file = "secret.txt"
csv2 = {}
csv2["Simple.Example.com."] = "example.configuration"
Ajoutez le fichier appelé " example.configuration
" dans le même dossier où se run_maradns.bat
trouve.
4) Modifiez votre fichier example.configuration:
Simple.Example.com. 10.10.13.13 ~
5) Désactivez tous les pare-feu (commodité)
6) Exécutez le fichier " run_maradns.bat
"
7) Il ne devrait y avoir aucune erreur.
8) Ajoutez votre serveur DNS à la liste, comme indiqué ici: http://www.iphonehacks.com/2014/08/change-dns-iphone-ipad.html
9) Fonctionne!
Oui, vous pouvez modifier le fichier d'hôtes iPad, mais vous devez être jailbreaké. Une fois que vous avez fait cela, téléchargez Cydia (marché des applications) et obtenez iFile. Le fichier hosts se trouve dans "/ etc / hosts".
J'imagine que vous pourriez le faire en configurant un proxy transparent, en utilisant quelque chose comme Charles et en redirigeant le trafic de cette façon
Workarond que j'utilise à des fins de développement:
Je sais que cela fait un moment que cela a été publié, mais avec iOS 7.1, certaines choses ont changé.
Jusqu'à présent, si vous développez une application, vous DEVEZ avoir un certificat SSL valide reconnu par Apple, sinon vous obtiendrez un message d'erreur sur votre iDevice. Plus de certificats auto-signés. Voir ici une liste:
http://support.apple.com/kb/ht5012
De plus, si vous êtes ici, cela signifie que vous essayez de faire en sorte que votre iDevice résolve un nom (sur votre serveur https), sur un environnement de test ou de développement.
Au lieu d'utiliser squid, qui est une excellente application, vous pouvez simplement exécuter un serveur DNS très basique comme dnsmasq. Il utilisera votre fichier hosts comme première ligne de résolution de nom, vous pouvez donc tromper votre iDevice là-bas, en disant que www.blah.com est 192.168.10.10.
Le fichier de configuration est aussi simple que 3 à 4 lignes, et vous pouvez même configurer son serveur DHCP interne si vous le souhaitez.
Voici le mien:
adresse d'écoute = 192.168.10.35
domaine nécessaire
faux-privé
no-dhcp-interface = eth0
local = / localnet /
Bien sûr, vous devez configurer le réseau sur votre iDevice pour utiliser ce DNS (192.168.10.35 dans mon cas), ou simplement commencer à utiliser DHCP à partir de ce serveur de toute façon, après avoir été correctement configuré.
De plus, si dnsmasq ne peut pas résoudre le nom en interne, il utilise votre serveur DNS habituel (comme 8.8.8.8) pour le résoudre pour vous. TRÈS simple, élégant et résolu mes problèmes avec l'installation de l'application iDevice en interne.
Soit dit en passant, résout également de nombreux problèmes de résolution de noms avec les macs classiques (OS X).
Maintenant, ma diatribe: Bloody Apple. Rendre un appareil sûr ne doit pas inclure la castration du système d'exploitation ou des développeurs.
Si vous avez la liberté de choisir le nom d'hôte, vous pouvez simplement ajouter votre hôte à un service DNS dynanmique, comme dyndns.org. Ensuite, vous pouvez vous fier aux mécanismes de résolution normaux de l'iPad pour résoudre l'adresse.
Vous pouvez également utiliser un serveur proxy sur votre iPhone ou iPade via Internet mobile (3G) en utilisant un générateur de proxy iPhone Mobile:
http://iphonesettings.net/mobileproxygenerator.php
Entrez simplement l'apn de votre opérateur (avec le nom d'utilisateur / mot de passe apn si nécessaire) et le serveur proxy que vous souhaitez utiliser et appuyez sur Générer
iphonesettings.net
?
Vous devez y avoir accès /private/etc/
, non. vous ne pouvez pas.
Meilleure réponse: ajoutez simplement http ou https dans votre navigateur, l'adresse IP, les deux points et le numéro de port. Exemple: https://123.23.145.67:80