Перейти к содержимому

Как настроить маршрутизацию на андроид

  • автор:

Добавление пользовательских ip маршрутов для Android и IOS

Добавление сайт на рабочий стол (Android, ioS)
Есть очень нестандартный вопрос: для мобильных пользователей на сайте нужно отобразить окошко с.

Игры для iOS Android
Подскажите, пожалуйста, на каком языке и движке пишутся игры, которые выпускает компания Voodo?

Приложение для Android и iOS
В общем: есть идея для написания приложения, которое хотелось бы собирать впоследствии для Android.

Нужно разработать приложение для бар-клуба. Для ios, android
Добрый день. Кто может помочь или посоветовать программиста. Главное окно: картинка с акциями.

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

Добавлено через 3 минуты
хотя Android — линуксовый высерень. Ипользуйте любой CLI и попробуйте route add default [устройство]

Ну брать исходники для каждого устройства и каждому шить планшет для доступа к корпоративной БД это чересчур)))
А вот искать программу пробовал в google play. Поисковик думает что мне нужно ПО для прокладки навигационных маршрутов ))) и все результаты по соответсвующей теме.

Добавлено через 2 минуты
хотелось бы название утилиты хотя бы для одной платформы, или как добраться до системных настроек для указанных ОС

Спосибо!
Прочитал о программульке, попробую на работе отпишусь. Здесь среди команд LINUX нашел пример:
route add -net 192.168.0.0 netmask 255.255.0.0 gw 192.168.1.1 — добавить статический маршрут в сеть 192.168.0.0/16 через шлюз с ip-адресом 192.168.1.1

а для iOS подобную прогу не подскажете? или так же называется? под рукой этих девайсов нет копаться в AppStore нет возможности.

Добавлено через 3 минуты
Кстати для Linux маршрут сразу становиться постоянным? ведь в Windows чтобы маршрут сохранился после перезагрузки компьютера нужно указывать ключ -p

Создание уведомлений для Android и iOS
Парни, подскажите где почитать теорию о создании уведомлений для мобильных приложений при работе с.

Приложение на Python для iOS и Android
Есть ли какие-нибудь годные средства, позволяющие запускать приложения, написанные на Python (3) на.

Требуются программситы для Android и/или iOS
Я владелец фирмы, которая занимается программным обеспечением (разработкой и его продвижением). Мы.

База данных для iOS & Android
Доброго времени суток! Заранее прошу прощения если тема уже была, честно приложив усилия к поиску.

Нужен разработчик по геопозиционированию для IOS/ANDROID
Ищу разработчика под android/ios способного привязать к плану помещения информацию о его.

Требуется разработчик приложения для iOS, Android
Друзья, срочно требуется разработчик приложения, в котором будет новостная лента, вручную.

ADSL.BY

Как прописать статические маршруты (routes) на android

Как прописать роуты на андроид, root получил, дальше стопор, в liux полный ноль.

Отмечено как решение

Today I needed to add a route on the android shell but was greated with "Invalid Argument" failures, there is no "-h", no man page. So we will have to use the sourcecode.

First of all the code is in /system/core/toolbox/route.c
and it supports three types of argument..

benjaminaigner/aiproute

If nothing happens, download GitHub Desktop and try again.

Launching GitHub Desktop

If nothing happens, download GitHub Desktop and try again.

Launching Xcode

If nothing happens, download Xcode and try again.

Launching Visual Studio Code

Your codespace will open once ready.

There was a problem preparing your codespace, please try again.

Latest commit

Git stats

Files

Failed to load latest commit information.

README.md

Welcome to the Android IP route app!

  • No maintenance intended!
  • Rooting your Android is required!

This app allows you a modification of the IP routing table for your Android device.

The base of this app is the commandline tool ip route, which is capable of adding/removing route entries. This app allows you to set following parameters of the command:

  • Netmask
  • Adress
  • Gateway
  • Metric

In addition, it is possible the give every route a name, to find it easier in the overview. Each route has two additional parameters:

  • Persistent route: A persistent route will be applied a soon as the app is started. This maybe directly at startup or if you launch the app manually. If the SSID activation is used, the route is only applied if the device is connected to the desired network.
  • Active: This route is active now. Depending on the SSID setting the route will be applied immediately or afterwards (if the desired SSID is available)

SSID based activation

This app follows two major philosophies of activating the routes:

Either the activation will be SSID based, which means a route gets active if the Wifi interface is connected to one of the selected SSIDs. Or the activation is general, in this case all active routes are applied as soon as the Wifi interface is connected

You can change the activation type via Settings->General->Use SSID.

It is possible to change other settings for this app:

  • Autostart
  • Wifi devicename

The autostart setting determines, if this app launches itself (in detail: it installs a Wifi broadcast event) to receive information on the Wifi connectivity. This is necessary if you want to have your routes applied automatically. Combined with the SSID activation, it is possible to apply all routes automatically, if you are connected to e.g. your home Wifi.

Due to the implementation of the ip route it is necessary to know the device name, which the routes should be applied to. In most cases, Android devices are using wlan0 as default Wifi interface name. This is the default value, which works on all tested phones. If you have another device name or you want to use your routes on the GSM interface (I won’t recommend that, you may break your internet connectivity), you have to replace the wifi device name with the intended device’s name.

Reason to have this app

I’ve programmed this app for my personal use. The reason is a small but major missing feature of my cable provider’s router:

It is not possible to connect from my home network to the public IP adress of my own router. On every common notebook/PC it is possible to modify the route settings via the network connection manager (also depending on the SSID). This feature was not available on my Android phone, so it was impossible to synchronize my contacts and the calendar.

I use this app to set following route avoiding the previous mentioned problem:

  • Adress:
  • All other options: empty
  • SSID:
  • Autostart active, Use SSID option

So each time my phone connected to my home network, the route is applied. This route avoids the connection to be routed over the cable modem -> everything works out fine.

Nowadays, I changed the router’s settings to «Bridge» mode. This allows my firewall to take care of all incoming connections, avoiding the problem.

OpenVPN на Android: прозрачное переключение между WiFi и «Мобильными данными» без разрыва соединений

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

И поможет в этом старый, добрый и ламповый «openvpn». Но установка и настройка — тема давно избитая, трогать её, здесь не планируется.

Что нам нужно:
  • Сервер Linux с постоянным IP (vps, vds, dedic или просто домашний)
  • Openvpn на сервере и клиенте, настроенные на работу по UDP.
  • iproute2 — собственно для фокуса нужна работающая утилита ip на Android.
  • Так же потребуется внести изменения в исходный код openvpn-settings c последующий сборкой apk.
Приступим

Начнем с правки «openvpn-settings». Суть в том, что при любом изменении в сетевой конфигурации нативному демону openvpn посылается команда SIGUSR1, что заставляет его отключаться и подключаться по новой. Для наших целей это вред, но нам все равно желательно иметь возможность выполнять некоторые действия при изменении сетевой конфигурации.

Кто-то скажет, но ведь есть persist-tun. Отвечаю, работает не так, как хочется, openvpn дергает скрипты «лежать-вставать» каждый раз, когда приходит SIGUSR1. И в принципе отличить по имеющимся переменным перезапуск от старта, без выкрутасов почти не возможно. Это подрывает всю затею, а хочется просто и надежно.

Поэтому мы заменим отправку SIGUSR1 на вызов shell скрипта.

Скачиваем исходники командой
hg clone code.google.com/p/android-openvpn-settings
Открываем файл
\src\de\schaeuffelhut\android\openvpn\service\ManagementThread.java
Находим функцию public void sendSignal(int s) её мы и будем редактировать.
Комментируем отправку SIGUSR1 и вставляем вызов нашего скрипта с правами рут.
Файл скрипта у нас будет называться точно так же как и файл подключения, но дополненный расширением sh.

Должно получится так:

Всё, можно собирать, подписывать, устанавливать. Перед установкой обязательно деинсталлируйте старый «openvpn-setting» из системы.

Далее проверим конфигурации подключения openvpn.

Сервер

На сервере требуется внести директиву float, поскольку мы будем менять физическое соединение, а с ним и IP. Так же сервер должен транслировать внутренний адрес нашего клиента во внешнюю сеть. Для настройки этого мне удобней использовать директивы up и down.

up «/bin/sh /etc/openvpn/androidupdown»
down «/bin/sh /etc/openvpn/androidupdown»

Скрипт должен быть примерно таким:

Клиент

Во первых надо убрать директиву redirect-gateway, если она есть. Но задать up и down с указанием скрипта, который выполнит настройку маршрутов. Если вы помните, мы условились, что имя файла будет повторять имя конфигурации с добавление sh. Да, мы будем вызывать один и тот же скрипт и из демона, и из монитора.

Если конфигурация называется «testconfig.ovpn», то пусть будет так:

up «/system/bin/sh /sdcard/openvpn/testconfig.ovpn.sh»
down «/system/bin/sh /sdcard/openvpn/testconfig.ovpn.sh»

Здесь стоит немного пояснить.
Мы создаем альтернативную таблицу маршрутизации под номером 100 в которой указываем шлюзом по умолчанию vpn туннель. И добавляем правило маршрутизации, которое заворачивает весь трафик в нашу таблицу под номером 100, раньше чем он попадет в основную таблицу под именем main.

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

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

Для разрешения запуска скриптов на Android, необходимо установить «Built-in + script» в «Preferences» которые вызываются по долгому тапу на подключении. Теперь можно пробовать.

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

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Капельница от запоя — облегчение за 15–20 минут