Мобильные прокси на Android: простая настройка и управление

wizard

Client
Регистрация
04.10.2011
Сообщения
1 004
Благодарностей
632
Баллы
113
125103


Привет, друзья!
У многих из нас дома валяются старые Android-смартфоны, которые уже не используются. А если у вас таких нет, их можно купить буквально за копейки на любом интернет-барахолке. Старые телефоны в этом деле — настоящие сокровища. Вместо того, чтобы пылиться в ящике, они могут стать мощным инструментом для создания надежных мобильных прокси.

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

Шаг 1: Подключение телефона к компьютеру
Первое, что нужно сделать:
  • Подключаем телефон к ПК через USB-кабель.

1725729356545.pngкабель должен поддерживать передачу данных! не используйте некачественные кабеля - они часто создают ошибки и сбои в работе.

  • Заходим в "Настройки" телефона, выбираем "Беспроводные сети" -> "Модем и точка доступа" и включаем "USB-модем".
125100


Если всё сделано правильно, на компьютере в сетевых подключениях будет два соединения.

125094
Шаг 2: Настраиваем метрику соединений
Теперь настраиваем приоритеты соединений, чтобы чётко задать, через какое соединение компьютер будет работать по умолчанию, а какие соединения будут использоваться для проки.

  • Щелкаем правой кнопкой по соединению -> "Свойства" и задаем метрику:
главному соединению метрику поменьше (например, 50), а мобильному побольше (например, 5000).​

125101



1725729356545.pngВ каждом последующем соединении увеличиваем метрику на 50 - т.е. ставим 5050, 5100, 5150 и т.д.


  • Для удобства также можно задать локальный IP (но это необязательно) .

1725729356545.pngудобно назначать локальные ip в соответствии с портом, который будет в FreeProxy .
телефон № 1 --192.168.1.81 порт прокси 8181
телефон № 2-- 192.168.1.82 порт прокси 8282
телефон № 3-- 192.168.1.83 порт прокси 8282
и т.д.
Шаг 3: Установка FreeProxy Internet Suite
  • Устанавливаем и запускаем FreeProxy Internet Suite. (FreeProxy Internet Suite больше не поддерживается, и официальный сайт проекта был отключен. Разработчик, Hand-Crafted Software, прекратил обновления и поддержку программы, но программу можно скачать из прикрепленных файлах внизу статьи.)
  • Создаем прокси в программе, указываем входящий поток и исходящий (прокся принимает запросы по вашему локальному IP (например, 192.168.1.100:8080) и выходит в интернет через мобильный телефон.)
125095

Так мы создаем целую ферму мобильных прокси, настраивая для каждого телефона отдельный прокси в FreeProxy. Больше телефонов — больше проксей!
  • Запускаем все созданные прокси.
125096

1725729356545.pngFreeProxy считывает настройки сетей при старте программы, поэтому, обращаю внимание, запускать FreeProxy нужно только после того как Вы включили "USB-модем" на телефонах и выждали 20-30 сек, чтобы соединения правильно создались.
По этой же причине нужно перезапускать FreeProxy, если вы переключили USB кабель в другое гнездо и т.п.

1725729356545.pngпосле запуска выскачет черное окно с логом выполнения - НЕ закрывайте его

Все! Теперь можно подставлять прокси в проект Zenno - прокси будут выглядеть как ВАШ локальный ip: порт - 192.168.1.100:8181 , 192.168.1.100:8282 , 192.168.1.100:8383 и т.д.

1725729356545.pngЕсли прокси не заработали - перезапустите FreeProxy.
Шаг 4: Управление телефоном через отладку по USB
Чтобы поменять IP, можно использовать старый метод (пункт "О автоматической смене ip") или настроить управление телефоном через отладку по USB. Это позволит управлять телефоном прямо из проекта.
Для этого нужно:
  • Включить отладку по USB в настройках телефона .
    125099
  • Подключаем ссылки GAC и добавляем в общий код
(код взят из этой статьи но немного переделан и убрано лишнее.)
Директивы using и общий код:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading;
using System.IO;
using System.Text.RegularExpressions;
using ZennoLab.CommandCenter;
using ZennoLab.InterfacesLibrary.ProjectModel;
using ZennoLab.InterfacesLibrary.ProjectModel.Enums;
using SharpAdbClient;
using System.Net;
using System.Xml;
using System.Diagnostics;

namespace ZennoLab.OwnCode
{
    public class ADB
    {
        private DeviceData device;
        private Random rnd;
        private IZennoPosterProjectModel project;

        public ADB(IZennoPosterProjectModel project)
        {
            var devices = AdbClient.Instance.GetDevices();

            for (int i = 0; i < devices.Count; i++)
            {
                if (devices[i].Serial == project.Variables["DEVICE"].Value)
                {
                    device = devices[i];
                    break;
                }
            }

            rnd = new Random();
            this.project = project;
        }

        // Обновленный метод Command без использования receiver
        public void Command(string command)
        {
            AdbClient.Instance.ExecuteRemoteCommand(command, device, null);
        }
    }
}
125156

  • также нужно получить id подключенных к компьютеру телефонов, для этого в командной строке вводим
adb devices

125104
Появится список всех подключенных устройств.​

  • Берём эти ID, вставляем в настройки нашего шаблона, прописываем локальный IP и порты:
ИМЯ_DEVICE - любое имя для этого телефона​
ID_DEVICE - ID телефона, полученное с помощью adb devices​
LOCAL_IP - Локальный ip вашего компьютера​
PORT - порт прокси из FreeProxy​

Записываем все в строку так ИМЯ_DEVICE:ID_DEVICE&LOCAL_IP&PORT и вставляем все это в входные настройки​
125106
Дальше наш шаблон возьмёт эту строку - распарсит и рассуёт эти значения по переменным​
а вам будет удобно управлять проксями прямо из шаблона​
125157
Шаг 5: Включение и выключение режима "Самолет" для смены IP
Если у вас старые Android телефоны, включение и отключение режима "Самолет" делается так:

код для старого Android:
var a = project.Context["ADB"];
a.Command(" settings put global airplane_mode_on 0"); // иконка  самолета
a.Command(" am broadcast -a android.intent.action.AIRPLANE_MODE --ez state true "); // вкл самолет !!!
  System.Threading.Thread.Sleep(1000); //  пауза
a.Command(" settings put global airplane_mode_on 1");
a.Command(" am broadcast -a android.intent.action.AIRPLANE_MODE --ez state false"); // выкл самолета !!!
На более новых устройствах нужно будет использовать эмуляцию нажатий по экрану.
  • В настройках разработчика включаем Показывать координаты нажатий (или Показывать касания в некоторых версиях Android). Это нужно для того, чтобы видеть координаты нажатий в верхней строке на экране смартфона.
  • Далее откройте настройки на вкладке вкл\выкл самолета
    • это можно сделать выполнив команду из командной строки windows adb shell am start -a android.settings.AIRPLANE_MODE_SETTINGS
    • или выполнив C# в проекте, указав в настройках нужный телефон
C#:
var a = project.Context["ADB"];a.Command("am start -a android.settings.AIRPLANE_MODE_SETTINGS", true);
осталось посмотреть координаты касания и записать их.
  • Вписываем координаты в этот код
on\off Самолет в новых Android:
var a = project.Context["ADB"];

if(project.Variables["DEVICE"].Value =="ID_DEVICE") //  вместо ID_DEVICE  вписываем id device вашего телефона
{ a.Command("am start -a android.settings.AIRPLANE_MODE_SETTINGS"); //  окно, где можно включить самолет
System.Threading.Thread.Sleep(300); // пауза
a.Command("input tap 333 333"); // самолет on
System.Threading.Thread.Sleep(2000); // пауза
a.Command("input tap 333 333"); // самолет off
System.Threading.Thread.Sleep(100); // пауза
return project.Variables["DEVICE"].Value;
}
1725729356545.pngв первой строке вместо ID_DEVICE вписываем id device вашего телефона

Так повторяем для каждого телефона


Дополнительные скрипты и фишки
Дополнительные скрипты для проверки соединения, управления USB-модемом и проверки работы прокси. Все это в прикрепленном шаблоне. Все эти элементы помогут вам настроить мобильные прокси и использовать их в своих проектах без лишних проблем.

 

Вложения

Последнее редактирование модератором:

indigo666

Client
Регистрация
10.05.2014
Сообщения
1 154
Благодарностей
374
Баллы
83
Спасибо за статью. Прям вовремя. С меня голос)
 
  • Спасибо
Реакции: wizard
Регистрация
23.03.2015
Сообщения
1 217
Благодарностей
748
Баллы
113
При нынешних ценах на прокси, нужное решение!
 
  • Спасибо
Реакции: wizard

Ylvov

Client
Регистрация
23.01.2017
Сообщения
91
Благодарностей
15
Баллы
8
Тема понятна, но сегодня вопрос в сим по адекватной цене с анлим тарифом.
 
  • Спасибо
Реакции: wizard

wizard

Client
Регистрация
04.10.2011
Сообщения
1 004
Благодарностей
632
Баллы
113
Тема понятна, но сегодня вопрос в сим по адекватной цене с анлим тарифом.
Не всегда нужен именно анлим, да и есть довольно вменяемые тарифы . Вы из какой страны, региона? Почем у Вас мобильный интернет, правда интересно ...
 

zennoX

Client
Регистрация
05.04.2014
Сообщения
484
Благодарностей
133
Баллы
43
удобно назначать локальные ip в соответствии с портом, который будет в FreeProxy .
телефон № 1 --192.168.1.81 порт прокси 8181
телефон № 2-- 192.168.1.82 порт прокси 8282
телефон № 3-- 192.168.1.83 порт прокси 8282
IP-адрес (внутренний) разве не будет одинаковым (соответствующим адресу ПК в лок.сети,а меняться только порт?
 
  • Спасибо
Реакции: wizard

minsky

Client
Регистрация
18.08.2013
Сообщения
108
Благодарностей
28
Баллы
28
IP-адрес (внутренний) разве не будет одинаковым (соответствующим адресу ПК в лок.сети,а меняться только порт?
устанавливается ip с телефона, я уже проверил, работает!
 
  • Спасибо
Реакции: wizard

wizard

Client
Регистрация
04.10.2011
Сообщения
1 004
Благодарностей
632
Баллы
113
IP-адрес (внутренний) разве не будет одинаковым (соответствующим адресу ПК в лок.сети,а меняться только порт?
Да в зенке чтобы пользоваться проксей - будет локальный ip компа ...... но локальный ip телефона будет разный
я предлагаю назначать локальный ip ntktajyf в ручнуб - чтобы его было удобнее определить в free proxy
126186


если у вас подключено 2-5 одинаковых телефонов - это полезно
Впротивном случае прийдется запоменать мак адреса (на скрине закрашены белым)
 

indigo666

Client
Регистрация
10.05.2014
Сообщения
1 154
Благодарностей
374
Баллы
83
Что именно указывать в local bining?

Upd: В видео нашел ответ)
 
Последнее редактирование:
  • Спасибо
Реакции: wizard

indigo666

Client
Регистрация
10.05.2014
Сообщения
1 154
Благодарностей
374
Баллы
83
Можно попросить поделиться этими файлами?
126276
 

indigo666

Client
Регистрация
10.05.2014
Сообщения
1 154
Благодарностей
374
Баллы
83
Ох как палевно )


126278



А убрать этот заголовок программа дает возможности?
 
Последнее редактирование:
  • Спасибо
Реакции: wizard

wizard

Client
Регистрация
04.10.2011
Сообщения
1 004
Благодарностей
632
Баллы
113
Последнее редактирование:

indigo666

Client
Регистрация
10.05.2014
Сообщения
1 154
Благодарностей
374
Баллы
83
не очень понял где и как вы это смотрите ?
если по локальному ip на проксевый порт типа 192.168.88.100:8585 - то не переживайте - это видите только Вы
Через php curl сделал запрос к сайту myip.com используя прокси. В возвращаемых заголовках это )
 
Последнее редактирование:

indigo666

Client
Регистрация
10.05.2014
Сообщения
1 154
Благодарностей
374
Баллы
83

Arkadash

Client
Регистрация
23.02.2019
Сообщения
37
Благодарностей
8
Баллы
8

indigo666

Client
Регистрация
10.05.2014
Сообщения
1 154
Благодарностей
374
Баллы
83
Автору видимо жалко файлами поделиться для полноценной работы шаблона

 

wizard

Client
Регистрация
04.10.2011
Сообщения
1 004
Благодарностей
632
Баллы
113
Автору видимо жалко файлами поделиться для полноценной работы шаблона

Ты серьёзно ? жалко ? - правильно говорить лень :-) кто вообще жалеет файлы

а вообще, это наверное из рабочего проекта осталось ... не помню зачем там вообще Patagames
 

Вложения

  • Спасибо
Реакции: indigo666

indigo666

Client
Регистрация
10.05.2014
Сообщения
1 154
Благодарностей
374
Баллы
83
Ты серьёзно ? жалко ? - правильно говорить лень :-) кто вообще жалеет файлы

а вообще, это наверное из рабочего проекта осталось ... не помню зачем там вообще Patagames
Шикарно работает все, спасиб ) Имхо одна из самых полезных работ в контексте текущего конкурса. Не зря голос отдал )
 
  • Спасибо
Реакции: wizard

seodamage

Client
Регистрация
08.09.2014
Сообщения
224
Благодарностей
67
Баллы
28
на винде прокся нестабильно работала у меня, перенёс на на линух пару лет назад, процент отвалов упал так процентов на 90
 
  • Спасибо
Реакции: wizard

wizard

Client
Регистрация
04.10.2011
Сообщения
1 004
Благодарностей
632
Баллы
113
на винде прокся нестабильно работала у меня, перенёс на на линух пару лет назад, процент отвалов упал так процентов на 90
пользуюсь на винде 24\7 - все очень стабильно , не отваливается, не сбоит . только на телефоне батарейку приходится менять раз в 2-3 года

Вы держите отдельный комп на linux ? сколько телефонов одновременно подключено ? или у Вас usb модемы ? - расскажите пожалуйста - действительно интересно
 
Последнее редактирование:

seodamage

Client
Регистрация
08.09.2014
Сообщения
224
Благодарностей
67
Баллы
28

wizard

Client
Регистрация
04.10.2011
Сообщения
1 004
Благодарностей
632
Баллы
113
нетбук с юсб модемами, на нём же поднят днс сервак чтобы рубить всякие мобильные подписки на уровне DNS
Прикольно ). я слышал что на винде действительно с юсби модемами головняк, прям отваливаются стабильно

Поэтому сразу строил на телефонов - цена по факту одна и таже
 
  • Спасибо
Реакции: seodamage

seodamage

Client
Регистрация
08.09.2014
Сообщения
224
Благодарностей
67
Баллы
28
Поэтому сразу строил на телефонов - цена по факту одна и таже
на телефонах лично у меня нет понимания по питанию без акумов этих девайсов. по своему опыту недавно перестал работать 1 девайс прямо на зарядке не вывез работу, ну он такой типо тестовый был)
 

seodamage

Client
Регистрация
08.09.2014
Сообщения
224
Благодарностей
67
Баллы
28
по вай фаю читал что научились 3д картинку видеть через стены, с помощью wifi сигнала
 

qweqwe5435

Client
Регистрация
12.02.2017
Сообщения
71
Благодарностей
39
Баллы
18
А socks5 если выбрать в настройках софта, будет работать?
И еще вопрос. Вроде раньше создавал так прокси и коннектился к нему с других телефонов. Сейчас почему-то не работает (на ПК коннектится и работает). Есть идеи почему так? (UPD: брандмауэр видновс шалил, на локальную сеть был активен, Socks5 работает)
 
Последнее редактирование:
  • Спасибо
Реакции: wizard

wizard

Client
Регистрация
04.10.2011
Сообщения
1 004
Благодарностей
632
Баллы
113

Кто просматривает тему: (Всего: 4, Пользователи: 0, Гости: 4)