Я сомневаюсь, что это возможно без серьезного взлома, но возможно ли вообще редактировать файл hosts на iPad (или любом устройстве iOS)?
Я сомневаюсь, что это возможно без серьезного взлома, но возможно ли вообще редактировать файл hosts на iPad (или любом устройстве iOS)?
Ответы:
Нет. Приложения могут изменять файлы только в каталоге документов, в своей изолированной программной среде. Это сделано для безопасности и простоты установки / удаления. Таким образом, вы могли сделать это только на взломанном устройстве.
Предыдущий ответ верен, но если желаемый эффект заключается в перенаправлении HTTP-трафика для домена на другой IP-адрес, способ есть.
Поскольку технически он не отвечает на ваш вопрос, я задал вопрос и ответил на него здесь:
Нет, вы не можете изменить хост-файл iPad (без взлома), но можете решить эту проблему.
Вот мой сценарий:
192.168.2.1
, с запущенным веб-приложениемЯ собираюсь протестировать веб-приложение, работающее на моем Mac через iPad, но у меня нет доступа к нему напрямую.
Решение работает для меня:
Port
(в основном 8888
) и переключите Enable transparent HTTP proxying
.Теперь вы можете посещать свое веб-приложение на iPad.
Конечно, вы можете использовать другие прокси-инструменты, такие как Squid или Varnish в Linux, или скрипач в Wondows.
NodeJs
модулем filternet
Самый простой способ сделать это - запустить имитатор iPad с помощью XCode, а затем добавить запись в файл hosts (/ etc / hosts) в хост-системе, чтобы указать на ваш тестовый сайт.
Мне нужна была такая же функциональность, а делать побег из тюрьмы - нет-нет. Одним из решений является размещение собственного DNS-сервера ( MaraDNS ), перейти к настройкам Wi-Fi на ipad / телефоне и добавить туда свой собственный DNS-сервер.
Весь процесс занял у меня всего 10 минут, и это работает!
1) Скачать MaraDNS
2) Запускаем mkSecretTxt.exe
от имени администратора
3) Измените mararc
файл, мой:
ipv4_bind_addresses = "put your public IP Here"
timestamp_type = 2
random_seed_file = "secret.txt"
csv2 = {}
csv2["Simple.Example.com."] = "example.configuration"
Добавьте файл " example.configuration
" в ту же папку, где run_maradns.bat
находится.
4) Отредактируйте файл example.configuration:
Simple.Example.com. 10.10.13.13 ~
5) Отключить все межсетевые экраны (удобство)
6) Запустить файл " run_maradns.bat
"
7) Ошибок быть не должно.
8) Добавьте свой DNS-сервер в список, как показано здесь: http://www.iphonehacks.com/2014/08/change-dns-iphone-ipad.html
9) Работает!
Да, вы можете редактировать файл хостов iPad, но вам необходимо выполнить джейлбрейк. Как только вы это сделаете, загрузите Cydia (магазин приложений) и получите iFile. Файл hosts находится в "/ etc / hosts".
Я полагаю, вы могли бы сделать это, настроив прозрачный прокси, используя что-то вроде charles и перенаправив трафик таким образом
Вариант, который я использую в целях разработки:
Я знаю, что это было давно, но с iOS 7.1 кое-что изменилось.
Пока что, если вы разрабатываете приложение, вы ДОЛЖНЫ иметь действующий сертификат SSL, признанный Apple, в противном случае вы получите сообщение об ошибке на вашем iDevice. Больше никаких самозаверяющих сертификатов. Смотрите здесь список:
http://support.apple.com/kb/ht5012
Кроме того, если вы здесь, это означает, что вы пытаетесь заставить iDevice разрешать имя (на ваш https-сервер) в среде тестирования или разработки.
Вместо использования squid, который является отличным приложением, вы можете просто запустить очень простой DNS-сервер, например dnsmasq. Он будет использовать ваш файл hosts в качестве первой строки разрешения имен, поэтому вы можете обмануть свой iDevice там, сказав, что www.blah.com - это 192.168.10.10.
Файл конфигурации состоит из 3–4 строк, и вы даже можете настроить его внутренний DHCP-сервер, если хотите.
Вот мой:
адрес прослушивания = 192.168.10.35
требуется домен
подделка
no-dhcp-interface = eth0
местный = / localnet /
Конечно, вам нужно настроить сеть на своем iDevice для использования этого DNS (192.168.10.35 в моем случае) или просто начать использовать DHCP с этого сервера после правильной настройки.
Кроме того, если dnsmasq не может разрешить имя внутренне, он использует ваш обычный DNS-сервер (например, 8.8.8.8), чтобы разрешить его за вас. ОЧЕНЬ просто, элегантно и решило мои проблемы с установкой приложения iDevice на месте.
Кстати, решает многие проблемы с разрешением имен и с обычными Mac (OS X).
Теперь моя напыщенная речь: чертов яблоко. Обеспечение безопасности устройства не должно включать кастрацию операционной системы или разработчиков.
Если у вас есть свобода выбора имени хоста, вы можете просто добавить свой хост в динамическую службу DNS, например dyndns.org. Тогда вы можете полагаться на обычные механизмы разрешения IPad для разрешения адреса.
Вы также можете использовать прокси-сервер на своем iPhone или iPade через мобильный Интернет (3G) с помощью генератора мобильных прокси iPhone:
http://iphonesettings.net/mobileproxygenerator.php
Просто введите apn вашего оператора связи (с именем пользователя и паролем apn, если необходимо) и прокси-сервер, через который вы хотите пройти, и нажмите «Создать».
iphonesettings.net
?
Вам нужен доступ, /private/etc/
так что нет. ты не можешь.
Лучший ответ: просто добавьте http или https в свой браузер, IP-адрес, двоеточие и номер порта. Пример: https://123.23.145.67:80