Браузеры. Восстановление. Windows. Оптимизаторы. Антивирус

Нередко мобильные операторы ограничивают скорость интернета по разным причинам. Поговорим, как снять ограничение скорости Yota.

Навигация

Yota , которая совсем недавно начала свою работу на рынке сотовой связи , предлагает своим клиентам доступный интернет без ограничений использования трафика . К примеру , можно выбрать самую высокую скорость и использовать сеть сколько захочется . А тем , кто пользуется интернетом со смартфона , доступен безлимитный интернет стоимостью от 230 рублей в месяц .

Конечно , многие продвинутые пользователи желают пользоваться сим —картами через модем или планшет , либо делиться Wi —fi . И тут начинаются проблемы , хоть они и не сразу становятся заметными . Сим —карта может использоваться только в определенном устройстве , к примеру , только на планшете , а раздача Wi —fi вообще платная .

Есть также ограничение , касающееся скачивания с торрентов . Тут скорость всего 64 Кбит /сек . Как обойти ограничение скорости Yota с разных устройств ?

Разберитесь с IMEI и TTL

Прежде всего , разберитесь с перестановкой сим —карт из телефона в модем . Чтобы пользоваться интернетом с тарифом , предназначенным для телефона , нужно изменить IMEI номер модема на IMEI смартфона . Точно также дело обстоит и с планшетом . Только помните , что смена данного номера не совсем законна !

Далее нужно понять , что такое TTL . Данный показатель показывает время , сколько еще будет действовать пакет трафика . Обычно оно равняется 64 . То есть , при подключении интернета , оператору передается это значение . Но , при соединении через роутер или другое устройство , показатель становится ниже . В результате сети становится понятно , что используются другие устройства для подключения .

То есть при раздаче интернета с телефона , он является маршрутизатором . Сеть это , естественно , замечает , и принимает свои меры , то есть ограничивает скорость . Можно , конечно , увеличить её за деньги , но многим не хочется платить , и они стараются найти любой возможный способ обхода ограничений .

Как настроить роутер ?

Yota — убрать ограничение скорости

Смысл операции заключается в том , чтобы раздавать интернет со значением TTL —64 . Для этого роутеру надо указать , чтобы этот показатель не уменьшался . Когда устройство будет подсоединяться к роутеру , то значение TTL уменьшится , но раз мы поставили , чтобы оно не снижалось , то показатель будет восстановлен .

Подобная функция может отсутствовать в модеме , поэтому скопируйте файл с конфигурацией роутера и его панель управления , найдите в ней настройки модема и пропишите — ip adjust —ttl inc 1 . Далее обратно вставьте файл на место , перезагрузите роутер и наслаждайтесь скоростью .

Но можно сделать по —другому и повысить TTL на две единицы , потому что сюда прибавится ещё и компьютер .

Как настроить модем ?

Для начала найдите в интернете профильную инструкцию для своего устройства .
Если вам не хочется сильно копаться в настройках модема , то измените показатель TTL через компьютер . В нашем случае ставится цифра 65 , потому что при подключении модема она снизится на единицу .

Как настроить Андроид ?

Если раздавать интернет с Андроида , то тут тоже будет действовать ограничение по скорости .

По той причине , что права суперпользователя на смартфонах в основном не предоставляются , то сначала посмотрите , какое значение TTL передает ваш смартфон в сеть .

Для этого :

  • Установите программу , чтобы можно было работать в режиме терминала , а в его командной строке пропишите cat /proc /sys /net /ipv4 /ip _default _ttl
  • Теперь смартфон отобразит базовое значение нужного показателя
    Далее с помощью компьютера или ноутбука увеличьте TTL на единицу , чтобы смартфон передавал данные согласно базовому значению
    Переподключите интернет и пользуйтесь скоростным интернетом без ограничений

Как настроить IOS ?

Если вы решили использовать раздачу интернета через iOS , то через компьютер выставьте значение TTL 65 или 63 . Сделать это можно при помощи автоматического твика TetherMe или через терминал , куда надо ввести команду sysctl —w net .inet .ip .ttl =6 .

Настраиваем компьютер

Если ноутбук подключается к телефону , то нужно в компьютере увеличить TTL на единицу . Тогда сеть будет использовать для передачи стандартное значение для смартфонов .

  • Перейдите в меню «Пуск » и выберите строку «Выполнить ».
  • Введите команду regedit
  • Найдите в окне ветку под названием HKEY _LOCAL _MACHINE \SYSTEM \CurrentControlSet \Services \Tcpip \Parameters и создайте в ней параметрDWORD (32 бита ) с названием DefaultTTL
  • Укажите в нем значение 65 (десятизначная система )
  • Теперь можете включать интернет

Настраиваем Mac OS

Включите программу Terminal , чтобы поставить временное значение TTL . Введите sudo sysctl —w net .inet .ip .ttl =65 , а затем введите пароль для входа в систему . Чтобы установить постоянный TTL , то создайте в папке etc файл sysctl .conf . Ее расположение выглядит следующим образом : /etc /sysctl .conf . Откройте данный файл и пропишите в нем net .inet .ip .ttl =65 .

Настраиваем Windows phone

Чтобы это сделать измените показатель TTL через компьютер , так как через смартфоны с данной системой сделать этого невозможно . Как настроить компьютер , мы описывали выше .

Снятие ограничения на торренты

Yota — скачивание с торрента без ограничений

Мы уже разобрались , как быть с ограничением скорости интернета . Но для обхода ограничения для торрентов нужно обладать некоторыми знаниями в настройке операционных систем .

Тут есть два решения :

  • Активировать шифрование в программе скачивания с торрента
  • Подключиться к интернету с помощью VPN

Шифрование имеется не у каждого торрент —клиента , поэтому , скачать надо такой , где эта функция есть . Например , qBittorrent . Зайдите в его настройки , включите DHT и выберите пункт «Требование шифрования ».

По утверждениям многих пользователей , часто это не работает или делает скорость еще ниже . Возможно , Yota догадалась о такой возможности и защитила себя от этого . Поэтому лучше использовать VPN .

Такой метод может потребовать определенных затрат , так как использование таких сервисов в основном платное . Выберите наиболее удобный для себя сервис и произведите настройку своего компьютера . Как это сделать ищите на сайте выбранной программы .

Теперь данные будут передаваться через зашифрованный канал , который не поддается расшифровке . Соответственно и понять используемый протокол передачи оператор не сможет .

Видео: Снятие ограничения скорости у Yota

30 сентября 2014 в 11:54

Универсальный метод обхода запрета Yota раздавать интернет с телефона или собираем модуль ядра Android

Старые методы и их недостатки

Я думаю, никому уже не интересно читать во второй раз (а может быть и в третий), о том, как Yota определяет, пользуется ли человек телефоном в режиме модема или точки доступа. «Зачем нам ещё одна статья?» - спросите вы.

Дело в том, что методы обхода, приведённые по ссылкам, не позволяют настроить телефон таким образом, чтобы позже при подключении любых устройств не потребовалось ничего настраивать заново. Кроме того, пользователь будет испытывать серьёзные неудобства, если он подключает несколько устройств с разными TTL. Придётся как минимум менять TTL на одном из них.

Именно эти причины мотивировали меня копать дальше в поисках ответа на вечный вопрос «Как же всё-таки нахаляву раздать интернет всему офису?». И найти такой ответ удалось (только для android, у меня нет яблока).

Готовая программа

Когда я узнал, что Yota следит за TTL, то предположил, что наверняка где-то в других странах есть провайдеры, которые поступают так же. Пробуем ввести TTL в поиске Play Market"а.

Я был прав: тут же нашлась программа TTLEditor . Очень приятно, что она мало того, что бесплатная, так ещё и с открытым исходным кодом .
Пользоваться очень просто: выбрать интерфейс (лучше всего выбирать интерфейс через который телефон связан с провайдером, у меня это rmnet0 ) и нажать кнопку OK. Можно также поставить программу срабатывать при загрузке телефона.

Только одна проблема возникла: программа выдала ошибку «TTL update failed ». Прежде чем ругать автора в комментариях и минусовать на Play Market"е, я решил почитать исходный код.

Примечание. Возможно, на вашей модели телефона программа заработает сразу. Значит вам сильно повезло, закрывайте эту статью и радуйтесь жизни.

Причина ошибки

Основное действие программы - запуск от имени root следующей команды:
iptables -t mangle -A POSTROUTING -o <интерфейс> -j TTL --ttl-set <значение TTL>
Много мозгов не нужно, чтобы понять, что делает эта команда (к тому же в программе написано об этом): она устанавливает заданное значение TTL всем пакетам, проходящим через определённый интерфейс (то есть как раз то, что нам требуется).

Я попробовал выполнить команду вручную и увидел вот такую ошибку: iptables: No chain/target/match by that name . Пара минут гугления показала, что эту ошибку iptables готов выдать почти на любые неверные параметры. Гуглим применительно к TTL и что-то всё же находим. Смотрим, насколько подходящую информацию мы нашли.

Команда cat /proc/net/ip_tables_matches выдаёт список, в котором есть ttl , то есть проверять TTL наше ядро умеет. А вот в списке, который выдаёт команда cat /proc/net/ip_tables_targets , нет TTL , поэтому модифицировать TTL наше ядро не умеет . Сдаваться перед таким наглым сговором мобильных провайдеров и производителей мы не станем, поэтому идём собирать модуль ядра, которого не хватает.

Я думаю, на этом этапе пользователи CyanogenMod уже злобно похихикивают, но мне не хотелось так просто отказываться от штатной системы, а хотелось добавить именно в неё новые возможности (даже не заменяя ядро).

Отступление

Далее я предполагаю, что читатель умеет пользоваться Linux, понимает, что такое ядро и модули ядра, а также знает, как с помощью adb перекидывать файлы (adb push/pull) и как открыть на компьютере терминал телефона (adb shell). Если нет - срочно в гугл! Если да - не забудьте включить отладку по USB.

Из чего собирать и чем

Это самый сложный шаг : нужно найти подходящий кросс-компилятор и исходники ядра. Старайтесь искать именно для своего телефона, так как иначе, скорее всего, ничего не заработает (а об этом станет известно только на последнем шаге). Я сделал несколько неудачных попыток, допустив ошибку именно на этом этапе.

Модель моего телефона Sony Xperia Z1 Compact, операционная система моего компьютера Ubuntu 14.04. Ниже на их примере я покажу, как можно действовать.

  • Скачиваем подходящий кросс-компилятор (toolchain). Я нашёл его . Выполняю на компьютере команду:
    git clone https://android.googlesource.com/platform/prebuilts/gcc/linux-x86/arm/arm-eabi-4.7 и он у меня в папке arm-eabi-4.7 (для клонирования git-репозитория не забудьте установить git).
  • Номер сборки прошивки можно посмотреть в настройках телефона «О телефоне». У меня: 14.4.A.0.108 .
    Найти нужные исходники ядра удалось в соответствующем архиве и в репозитории . Я взял из архива, потому что раньше отыскал.
    Если я хоть что-то понимаю в мире лицензий, то производитель обязан предоставлять исходные коды ядра, работающего на андроидофоне.

Настройка и сборка

Те, кто сталкивается с процессом сборки ядра впервые, не поддавайтесь панике, с гуглом мы богоподобны всегда.
  • Для начала, открываем консоль в папке с исходниками ядра и настраиваем среду окружения, чтобы ядро собиралось добытым кросс-компилятором:
    export ARCH=arm export CROSS_COMPILE=/путь/к/arm-eabi-4.7/bin/arm-eabi- На конце переменной среды CROSS_COMPILE должен находиться общий префикс большинства (или всех) исполняемых файлов в папке bin .
  • Затем нужно создать для вашей модели телефона дефолтную конфигурацию ядра (файл.config). Нужная для этого команда обычно написана в каком-нибудь README поблизости. В моём случае, в папке с исходниками ядра был файл README_Xperia .
    make rhine_amami_row_defconfig # создание дефолтной конфигурации ядра для Sony Xperia Z1 Compact

  • Собираем ядро и модули:
    make -j8 make modules Если произошли какие-то ошибки, то это значит, что вы, скорее всего, нашли неподходящие исходники ядра или кросс-компилятор.
  • Нужный нам собранный модуль находится здесь: net/netfilter/xt_HL.ko

Использование модуля на телефоне

Перекидываем модуль xt_HL.ko на телефон и пытаемся подключить его к ядру командой insmod .
Если эта команда выдаёт ошибку, то подробности можно узнать в выводе команды dmesg (скорее всего, это будет конфликт версий ядра и модуля или что-то похожее - это значит, что были взяты неподходящие исходники ядра или кросс-компилятор).

Если команда insmod выполнится успешно, то значит модуль удалось подключить к ядру (проверить можно командой lsmod).
После этого попробуем запустить команду, которую безуспешно пытался использовать TTLEditor. Ошибку не выдаёт? Значит правило добавилось в список. Можно проверить командой iptables -t mangle -L:

Пробуем раздавать интернет любым устройствам и радуемся.

Настройка автозагрузки

Остался последний шаг: сделать так, чтобы иметь возможность раздавать интернет всегда, когда захочется.

Создадим файл setup_ttl_editing.sh со следующий содержимым:
#!/system/bin/sh insmod /storage/sdcard0/xt_HL.ko iptables -t mangle -A POSTROUTING -o rmnet+ -j TTL --ttl-set 64
Закидываем его на телефон, ставим программу Script Manager и в ней настраиваем, чтобы скрипт запускался при загрузке системы и от пользователя root.

Всё настроено, можно забыть о проблеме раздачи интернета с телефона!

Примечание. Программа TTLEditor нам не нужна. Всё необходимое уже написано в скрипте.

Заключение

Я не буду писать « йота, не будьте жадинами », потому что по сравнению со многими другими мобильными провайдерами они всё-таки достаточно щедрые. Я лучше скажу: йота, оставайтесь такими же как вы есть.

Своим клиентам молодой провайдер Йота предлагает выгодные условия тарификации с безлимитным интернет-трафиком на максимальных скоростях. Но после подключения услуги и первого выхода в сеть для раздачи интернета с телефона по Wi-Fi, всплывают и первые ограничения. После попытки смартфона или другого устройства подключиться к этой сети, пользователь видит окошко с предложением покупки общего доступа к интернету за дополнительную плату (от 50 до 190 рублей в зависимости от времени использования). Обмануть провайдера, конечно, можно. Но чтобы все прошло гладко, важно точно знать, как обойти ограничения оператора Йота на андроид-смартфоне, айфоне или компьютере.

Какими бывают ограничения и способы их обхода?

Наиболее распространенными запретами на Yota являются ограничение на скорость, время пользования интернета, скачивание с торрентов, раздачу вай-фай. Все знают, что отрегулировать скорость можно после , но на ограничения увеличенный скоростной показатель повлиять не может.

За дополнительную плату можно воспользоваться платными тарифами на 2 или 24 часа безлимитного доступа к сети. Также провайдер предлагает пользователям бесплатный тариф на скорости до 128 Кбит в секунду на полчаса. Последняя услуга предоставляется с перебоями и совсем неудобна, а переплачивать за раздачу вай-фая не каждому абоненту по карману. Именно поэтому многие клиенты оператора задались вопросом, как выполнить обход ограничений Yota.

На общедоступных форумах, можно увидеть многочисленные изобретательные способы, как обойти систему. На сегодняшний день найдено несколько основных методов:

  1. Изменение TTL на мобильном устройстве (смартфон должен иметь поддержку root);
  2. Смена TTL на компе или ноутбуке;
  3. Применение специальных приложений, способных раздавать интернет через блютуз, например, PdaNet, Clockwork и прочие.

Первые два способа наиболее популярные, а вариантов решений поставленных задач невероятное множество.

Как обойти блокировку Йота на Андроиде?

Если вы хотите обойти блокировку на Android, то в первую очередь потребуется получить root на своем мобильном устройстве. После этого можно начинать обход ограничений Йота с телефона:

  1. Сперва установите приложение Sysctl Editor и запустите его (скачать программу можно бесплатно в Play Market);
  2. Найдите и откройте ярлык с таким же названием в разделе основного меню;
  3. В поисковой строке наберите следующий текст «net.ipvip_default_ttl» (это и есть наш ттл для смены);
  4. Измените значение параметра 64, поставив вместо него 63;
  5. Отключите и заново включите свой телефон.

Изменение настроек позволит пользоваться интернетом не только на смартфоне, но и на любом другом мобильном или стационарном устройстве. Также стоит заранее установить удобный прокси сервер, фильтрующий весь трафик кроме браузера, например, Opera VPN.

Способы обхода запретов Йота для Windows

Если вы решились научиться обходить ограничения Yota через комп или ноут, то стоит сперва обратить внимание на операционную систему, ведь для каждой оперативки существуют свои методы обхода. Настроить доступ к раздаче WiFi tethering можно не со стороны смартфона или устройства iOS, а со стороны стационарного ПК, поэтому снять лимиты интернета на Виндовс вполне возможно. Как обойти операторские ограничения, пошаговое руководство для Windows 2017:

  1. Зайдите в меню Пуск и введите в поисковую строку regedit (стандартный запуск на основе административных прав);
  2. Перейдите к регистрационному разделу, который называется HKEY_LOCAL_MACYINE\SYSTEM;
  3. В правом углу на панели отыщите графу «Создать» (может обозначаться как DWORD);
  4. Присвойте для Default TTL значение 65.

Перезагрузите свой компьютер и можно приступать к использованию .

Как снять лимит на MacOS?

Если сравнивать способы, как снимать лимиты на Windows и МАС, то второй вариант гораздо проще. Для этого не нужно устанавливать приложения, проходить сложную регистрацию или скачивать дополнительные программы. Чтобы увеличить скоростной интернет-порог до максимума потребуется зайти в пусковую консоль, ввести специальную команду с текстом «sysctl -w net.inet.ip.ttl=65». После проведения этих процедур потребуется перезагрузить компьютер. Второй вариант обхода на LINUX (UBUNTU) схож с настройкой на Android – установка специальной программы.

Снятие лимита на Айфонах и Айпадах

В первую очередь потребуется подготовить устройство к смене режима ttl, который будет видоизменен со 128 на 65. Данная процедура идентична как при настройке Windows, после этого при подключении iPhone к сети можно увидеть, что ттл устройств iOS аналогичен Андроидам (проверить этот параметр поможет команда для пинговки «ping *IP адрес телефона*»).

Следующий шаг – это скачивание ADB драйвера для вашей модели смартфона и открытие доступа к меню. Для этого в меню выбираем пункт «Настройки», а затем «Сотовая связь». Здесь следует выбрать «Передача данных» и прописать новый APN – internet.yota.

Третий и последний шаг – нужно пролистать меню вниз до пункта «Мобильные данные» и в режиме модема прописать internet.yota и такое же имя, но без слова internet. Остается лишь перезагрузить устройство для обновления параметров. После этого вы можете спокойно раздавать Wi-Fi.

Если вы отдаете предпочтение LTE интернету, то можно на свой телефон установить Yota Регулятор скорости. Это приложение способствует увеличению скоростных показателей. Для управления необходимо пройти простую регистрацию и осуществить через вход в профиль Регулятора скорости.

Существует несколько способов того, как можно раздать интернет с Yota (йоты) на компьютер, в зависимости от метода и вида раздающего устройства.

Ограничения на раздачу

  • «Для смартфона» старый (действует на сим-картах, подключенных до января 2017). За дополнительную плату можно использовать смартфон как модем в течение 2 или 24 часов.
  • «Для смартфона» новый . Этот тарифный план включает выбранное количество гигабайт, которые можно израсходовать на своем телефоне или беспрепятственно раздать другим устройствам.
  • «Для компьютера» - сим-карты с этим тарифным планом предназначены для модемов и не имеют запретов на раздачу.

На всех остальных тарифах оператор режет скорость при попытке раздавать интернет.

Как раздать интернет Йота с модема на компьютер

Если компьютеры оснащен wi-fi модулями, тогда распределить трафик между ними не составит труда, в противном случае потребуется объединить ПК в локальную сеть, и уже с ее помощью раздавать интернет.

Как раздать трафик Yota с телефона на ПК

Есть несколько способов раздать интернет от смартфона и компьютеру:

  • Используя телефон как USB-модема ;
  • С помощью Bluetooth ;
  • Через wi-fi .

Далеко не все компьютеры оснащены Bluetooth, к тому же при таком способе теряется скорость передачи, а USB позволяет делиться трафиком только с одним устройством. Поэтому пользователи предпочитают раздавать через wi-fi.

Как раздать вай-фай с сим-карты Yota для телефона на ноутбук

Для этого потребуется включить режим модема на смартфоне:

Для windows phone:

  • Опустить шторку и нажать «все настройки».
  • В списке выбрать «общий интернет» и в открывшемся окне сдвинуть ползунок в положение включено, а затем задать имя сети и пароль.

Для Android:

  • Нужно открыть в смартфоне меню настроек и выбрать «Сетевые подключения» или «Беспроводные сети».
  • В списке выбрать «Другие сети» (иногда этот пункт носит название «еще»). В открывшемся меню надо выбрать «Точка доступа wi-fi», придумать имя сети и пароль, а также выбрать способ защиты.

Для iOS:

  • В меню настроек нажать на кнопку «Режим модема».

  • Если система попросить включить wi-fi, согласиться. Придумать имя сети и пароль.

Затем на ноутбуке надо нажать иконку «сети», расположенную на панели задач. В открывшемся списке доступных сетей найти подключение с именем, которое было прописано в меню телефона, и выбрать его.

Если тариф не имеет ограничений на раздачу – ноутбук получит доступ в интернет. В противном случае оператор Yota срежет скорость передачи данных, однако абоненты находят способы обойти это ограничение.

Перед тем как раздать вай-фай интернет с симки Йота для телефона на ноутбук, надо изменить значение TTL смартфона или ноутбука. Но, стоит понимать, что это противоречит условиям договора с оператором.

30 сентября 2014 в 11:54

Универсальный метод обхода запрета Yota раздавать интернет с телефона или собираем модуль ядра Android

  • Разработка мобильных приложений

Старые методы и их недостатки

Я думаю, никому уже не интересно читать во (а может быть и в третий), о том, как Yota определяет, пользуется ли человек телефоном в режиме модема или точки доступа. «Зачем нам ещё одна статья?» - спросите вы.

Дело в том, что методы обхода, приведённые по ссылкам, не позволяют настроить телефон таким образом, чтобы позже при подключении любых устройств не потребовалось ничего настраивать заново. Кроме того, пользователь будет испытывать серьёзные неудобства, если он подключает несколько устройств с разными TTL. Придётся как минимум менять TTL на одном из них.

Именно эти причины мотивировали меня копать дальше в поисках ответа на вечный вопрос «Как же всё-таки нахаляву раздать интернет всему офису?». И найти такой ответ удалось (только для android, у меня нет яблока).

Готовая программа

Когда я узнал, что Yota следит за TTL, то предположил, что наверняка где-то в других странах есть провайдеры, которые поступают так же. Пробуем ввести TTL в поиске Play Market"а.

Я был прав: тут же нашлась программа TTLEditor . Очень приятно, что она мало того, что бесплатная, так ещё и с открытым исходным кодом .
Пользоваться очень просто: выбрать интерфейс (лучше всего выбирать интерфейс через который телефон связан с провайдером, у меня это rmnet0 ) и нажать кнопку OK. Можно также поставить программу срабатывать при загрузке телефона.

Только одна проблема возникла: программа выдала ошибку «TTL update failed ». Прежде чем ругать автора в комментариях и минусовать на Play Market"е, я решил почитать исходный код.

Примечание. Возможно, на вашей модели телефона программа заработает сразу. Значит вам сильно повезло, закрывайте эту статью и радуйтесь жизни.

Причина ошибки

Основное действие программы - запуск от имени root следующей команды:
iptables -t mangle -A POSTROUTING -o <интерфейс> -j TTL --ttl-set <значение TTL>
Много мозгов не нужно, чтобы понять, что делает эта команда (к тому же в программе написано об этом): она устанавливает заданное значение TTL всем пакетам, проходящим через определённый интерфейс (то есть как раз то, что нам требуется).

Я попробовал выполнить команду вручную и увидел вот такую ошибку: iptables: No chain/target/match by that name . Пара минут гугления показала, что эту ошибку iptables готов выдать почти на любые неверные параметры. Гуглим применительно к TTL и что-то всё же находим. Смотрим, насколько подходящую информацию мы нашли.

Команда cat /proc/net/ip_tables_matches выдаёт список, в котором есть ttl , то есть проверять TTL наше ядро умеет. А вот в списке, который выдаёт команда cat /proc/net/ip_tables_targets , нет TTL , поэтому модифицировать TTL наше ядро не умеет . Сдаваться перед таким наглым сговором мобильных провайдеров и производителей мы не станем, поэтому идём собирать модуль ядра, которого не хватает.

Я думаю, на этом этапе пользователи CyanogenMod уже злобно похихикивают, но мне не хотелось так просто отказываться от штатной системы, а хотелось добавить именно в неё новые возможности (даже не заменяя ядро).

Отступление

Далее я предполагаю, что читатель умеет пользоваться Linux, понимает, что такое ядро и модули ядра, а также знает, как с помощью adb перекидывать файлы (adb push/pull) и как открыть на компьютере терминал телефона (adb shell). Если нет - срочно в гугл! Если да - не забудьте включить отладку по USB.

Из чего собирать и чем

Это самый сложный шаг : нужно найти подходящий кросс-компилятор и исходники ядра. Старайтесь искать именно для своего телефона, так как иначе, скорее всего, ничего не заработает (а об этом станет известно только на последнем шаге). Я сделал несколько неудачных попыток, допустив ошибку именно на этом этапе.

Модель моего телефона Sony Xperia Z1 Compact, операционная система моего компьютера Ubuntu 14.04. Ниже на их примере я покажу, как можно действовать.

  • Скачиваем подходящий кросс-компилятор (toolchain). Я нашёл его . Выполняю на компьютере команду:
    git clone https://android.googlesource.com/platform/prebuilts/gcc/linux-x86/arm/arm-eabi-4.7 и он у меня в папке arm-eabi-4.7 (для клонирования git-репозитория не забудьте установить git).
  • Номер сборки прошивки можно посмотреть в настройках телефона «О телефоне». У меня: 14.4.A.0.108 .
    Найти нужные исходники ядра удалось в соответствующем архиве и в репозитории . Я взял из архива, потому что раньше отыскал.
    Если я хоть что-то понимаю в мире лицензий, то производитель обязан предоставлять исходные коды ядра, работающего на андроидофоне.

Настройка и сборка

Те, кто сталкивается с процессом сборки ядра впервые, не поддавайтесь панике, с гуглом мы богоподобны всегда.
  • Для начала, открываем консоль в папке с исходниками ядра и настраиваем среду окружения, чтобы ядро собиралось добытым кросс-компилятором:
    export ARCH=arm export CROSS_COMPILE=/путь/к/arm-eabi-4.7/bin/arm-eabi- На конце переменной среды CROSS_COMPILE должен находиться общий префикс большинства (или всех) исполняемых файлов в папке bin .
  • Затем нужно создать для вашей модели телефона дефолтную конфигурацию ядра (файл.config). Нужная для этого команда обычно написана в каком-нибудь README поблизости. В моём случае, в папке с исходниками ядра был файл README_Xperia .
    make rhine_amami_row_defconfig # создание дефолтной конфигурации ядра для Sony Xperia Z1 Compact

  • Собираем ядро и модули:
    make -j8 make modules Если произошли какие-то ошибки, то это значит, что вы, скорее всего, нашли неподходящие исходники ядра или кросс-компилятор.
  • Нужный нам собранный модуль находится здесь: net/netfilter/xt_HL.ko

Использование модуля на телефоне

Перекидываем модуль xt_HL.ko на телефон и пытаемся подключить его к ядру командой insmod .
Если эта команда выдаёт ошибку, то подробности можно узнать в выводе команды dmesg (скорее всего, это будет конфликт версий ядра и модуля или что-то похожее - это значит, что были взяты неподходящие исходники ядра или кросс-компилятор).

Если команда insmod выполнится успешно, то значит модуль удалось подключить к ядру (проверить можно командой lsmod).
После этого попробуем запустить команду, которую безуспешно пытался использовать TTLEditor. Ошибку не выдаёт? Значит правило добавилось в список. Можно проверить командой iptables -t mangle -L:

Пробуем раздавать интернет любым устройствам и радуемся.

Настройка автозагрузки

Остался последний шаг: сделать так, чтобы иметь возможность раздавать интернет всегда, когда захочется.

Создадим файл setup_ttl_editing.sh со следующий содержимым:
#!/system/bin/sh insmod /storage/sdcard0/xt_HL.ko iptables -t mangle -A POSTROUTING -o rmnet+ -j TTL --ttl-set 64
Закидываем его на телефон, ставим программу Script Manager и в ней настраиваем, чтобы скрипт запускался при загрузке системы и от пользователя root.

Всё настроено, можно забыть о проблеме раздачи интернета с телефона!

Примечание. Программа TTLEditor нам не нужна. Всё необходимое уже написано в скрипте.

Заключение

Я не буду писать « йота, не будьте жадинами », потому что по сравнению со многими другими мобильными провайдерами они всё-таки достаточно щедрые. Я лучше скажу: йота, оставайтесь такими же как вы есть.

Если заметили ошибку, выделите фрагмент текста и нажмите Ctrl+Enter
ПОДЕЛИТЬСЯ: