Я сумніваюся, що це можливо без великої в'язниці, але чи можливо взагалі редагувати файл хостів iPad (або будь-якого пристрою iOS)?
Я сумніваюся, що це можливо без великої в'язниці, але чи можливо взагалі редагувати файл хостів 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 / phone та додати туди свій власний 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".
Я думаю, ви можете зробити це, налаштувавши прозорий проксі-сервер, використовуючи щось на зразок Чарльза і перенаправляючи трафік таким чином
Workarond, який я використовую для цілей розробки:
Я знаю, що це було вже давно опубліковано, але з iOS 7.1 кілька речей змінилося.
Наразі, якщо ви розробляєте програму, у вас ПОВИНЕН бути дійсний сертифікат SSL, визнаний Apple, інакше ви отримаєте повідомлення про помилку на своєму iDevice. Більше немає самопідписаних сертифікатів. Дивіться тут список:
http://support.apple.com/kb/ht5012
Крім того, якщо ви знаходитесь тут, це означає, що ви намагаєтеся змусити iDevice вирішити ім'я (на ваш https-сервер) у тестовому середовищі або середовищі розробки.
Замість того, щоб використовувати squid, який є чудовим додатком, ви можете просто запустити такий базовий DNS-сервер, як dnsmasq. Він використовуватиме файл ваших хостів як перший рядок дозволу імен, тому ви можете в основному обдурити свій iDevice там, сказавши, що www.blah.com - це 192.168.10.10.
Файл конфігурації простий від 3 до 4 рядків, і ви навіть можете налаштувати його внутрішній DHCP-сервер, якщо хочете.
Ось мій:
адреса прослуховування = 192.168.10.35
потрібен домен
підставний
no-dhcp-interface = eth0
local = / 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 Mobile:
http://iphonesettings.net/mobileproxygenerator.php
Просто введіть apn вашого оператора (з іменем користувача / паролем apn, якщо потрібно) та проксі-сервер, через який ви хочете пройти, і натисніть Створити
iphonesettings.net
?
Вам потрібен доступ до /private/etc/
так, ні. ти не можеш.
Найкраща відповідь: Просто додайте http або https у своєму браузері, IP-адресу, двокрапку та номер порту. Приклад: https://123.23.145.67:80