How to Wiki Database (change log)
http://[222:a8e4:50cd:55c:788e:b0a5:4e2f:a92c]
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
117 lines
10 KiB
117 lines
10 KiB
10 months ago
|
====== Yggdrasil на смартфонах ======
|
||
|
|
||
|
|
||
|
===== iOS =====
|
||
|
|
||
|
[[yggdrasil:yggdrasil|Yggdrasil]] для iOS поддерживается разработчиками Yggdrasil, в частности, [[https://neilalexander.dev/|neilalexander]].
|
||
|
На данный момент бета-версия Yggdrasil для iOS доступна для тестирования на платформе [[https://apps.apple.com/ru/app/testflight/id899247664|TestFlight]].
|
||
|
|
||
|
Необходимо установить платформу [[https://apps.apple.com/ru/app/testflight/id899247664|TestFlight]] для тестирования бета-версий приложений под iOS: в AppStore вводиим соответствующий поисковый запрос "TestFlight", у нужного приложения нажимаем кнопку "Загрузить" (прямая ссылка на приложение TestFlight: https://apps.apple.com/ru/app/testflight/id899247664).
|
||
|
|
||
|
Далее, в браузере (напр., Safari) переходим по ссылке: https://testflight.apple.com/join/jZNsIkRr, ссылка автоматически перехватится приложением TestFlight и откроет страничку приложения Yggdrasil c кнопкой "Установить".
|
||
|
|
||
|
При первом запуске Yggdrasil на iOS будет предложено установить новый профиль [[wpru>VPN|VPN]] - необходимо согласиться. Этот профиль будет активирован при нажатии переключателя "Enable" в приложении Yggdrasil.
|
||
|
|
||
|
Как и в PC-версии приложения, необходимо указать пиры, к которым вы будете подключены, либо задействовать [[yggdrasil:mpd|Multicast Peer Discovery]] для поиска узлов Yggdrasil в вашей локальной сети. Настройка соответствующих параметров предусмотрена в GUI: Configuration -> Peers.
|
||
|
|
||
|
Можно вручную отредактировать конфигурационный файл Yggdrasil для iOS - для этого необходимо его экспортировать, отредактировать любым способом, а затем импортировать. Экспорт и импорт делается с помощью GUI (Configuration -> Settings -> Export (или Import)).
|
||
|
|
||
|
{{yggdrasil:mobile_clients:ios1.jpg?150 }} {{yggdrasil:mobile_clients:ios2.jpg?150 }} {{yggdrasil:mobile_clients:ios4.jpg?150 }} {{yggdrasil:mobile_clients:ios3.jpg?150 }} {{yggdrasil:mobile_clients:ios5.jpg?150 }}
|
||
|
===== Android =====
|
||
|
Клиент поддерживается пользователем [[https://github.com/vikulin/|vikulin]]. Исходный текст приложения на языке Kotlin доступен в [[https://github.com/vikulin/yggdrasil-android|GitHub-репозитории]] проекта. Установочный .apk файл находится там же в [[https://github.com/vikulin/yggdrasil-android/releases|списке релизов]] и доступен для скачивания. Работа Android-приложения основана на [[https://developer.android.com/reference/kotlin/android/net/VpnService|VpnService]].
|
||
|
|
||
|
На данный момент поддерживаются следующие функции:
|
||
|
* Подключение к сети Yggdrasil при активации кнопки ''Ygg me!''
|
||
|
* Установка статического адреса (Static IP)
|
||
|
* Вывод информации о текущих пирах
|
||
|
* Редактирование подключаемых пиров (кнопка Edit)
|
||
|
* Просмотр настроек DNS
|
||
|
* Редактирование текущих DNS
|
||
|
* Загрузка списка пиров с онлайн базы данных: https://publicpeers.neilalexander.dev/publicnodes.json
|
||
|
* Тест доступности и времени отклика от пиров
|
||
|
* Тест доступности и времени отклика от DNS
|
||
|
|
||
|
{{yggdrasil:mobile_clients:android2.jpg?150 }} {{yggdrasil:mobile_clients:android3.jpg?150 }} {{yggdrasil:mobile_clients:android4.jpg?150 }} {{yggdrasil:mobile_clients:android1.png?150 }} {{yggdrasil:mobile_clients:android6.jpg?150 }}
|
||
|
===== Android (root+termux)=====
|
||
|
Также можно установить Yggdrasil на рутированный Android с помощью эмулятора терминала. При первой установке и настройке использовался [[https://termux.com/|Termux]], так что тут и будет описана процедура установки и запуска через него.
|
||
|
|
||
|
Преимущество такого способа установки в отсутствии занимаемого vpn подключения, что позволяет накидывать vpn поверх Yggdrasil, а также в полном функционале, в точности, в настройке своего YGGv6 адреса, открытии портов для работы публичным или приватным пиром, создании личного nodeinfo и т.п.
|
||
|
|
||
|
Итак, для установки потребуются права root пользователя на вашем смартфоне. Как их получить, можно почитать на соответствующих ресурсах [[https://4pda.ru/forum/index.php|4PDA]] и [[https://www.xda-developers.com/root/|XDA]]. Также стоит установить терминал, рекомендуется [[https://termux.com/|Termux]].
|
||
|
|
||
|
Что же нам нужно сделать?
|
||
|
|
||
|
- Установка root доступа в Termux: ''pkg install tsu''
|
||
|
- Сборка бинарников под linux arm64 на компьютере:
|
||
|
* <code>
|
||
|
git clone https://github.com/yggdrasil-network/yggdrasil-go.git /tmp/yggdrasil
|
||
|
cd /tmp/yggdrasil
|
||
|
GOOS=linux GOARCH=arm64 ./build
|
||
|
mkdir ~/ygg_build
|
||
|
cp ./yggdrasil ~/ygg_build/
|
||
|
cp ./yggdrasilctl ~/ygg_build/
|
||
|
cd ~/ygg_build
|
||
|
./yggdrasil -genconf > ./yggdrasil.conf
|
||
|
rm -rf /tmp/yggdrasil</code>
|
||
|
- Настройка конфига (yggdrasil.conf) под требуемые параметры
|
||
|
- Добавление [[https://github.com/yggdrasil-network/public-peers|пиров]] в секцию ''Peers''
|
||
|
- Исправление значения секции ''IfName'' на YOUR_TUNTAP (например, на ygg0)
|
||
|
- Исправление значений ''EncryptionPublicKey'' и ''EncryptionPrivateKey'' на [[https://notabug.org/acetone/SimpleYggGen-CPP|желаемые]]
|
||
|
- Правим значение ''AdminListen'' на ''/data/data/com.termux/files/usr/var/yggdrasil.sock''
|
||
|
- Перенос всех файлов из ''~/ygg_build'' на телефон
|
||
|
* Необходимо сказать, что лучше класть бинарные файлы (yggdrasil и yggdrasilctl) в папку ''/data/data/com.termux/files/usr/bin'', а конфигурационный (yggdrasil.conf) в ''/data/data/com.termux/files/usr/bin''
|
||
|
=== Создание скрипта запуска и маршрутизации Yggdrasil ===
|
||
|
* Если хотите, чтобы Yggdrasil запускался вместе с системой, переходите ниже к "службе с автозапуском"
|
||
|
* Если нужны логи работы Yggdrasil, то перед запуском скрипта выполните команду <code> mkdir /data/data/com.termux/files/usr/var/log/yggdrasil </code>
|
||
|
* Не забудьте заменить в файле ''YOUR_IP'' и ''YOUR_TUNTAP''<file sh ygg>
|
||
|
termux-wake-lock
|
||
|
mkdir -p /dev/net
|
||
|
sudo ln -s /dev/tun /dev/net/tun
|
||
|
sudo yggdrasil -useconffile /data/data/com.termux/files/usr/etc/yggdrasil.conf > /data/data/com.termux/files/usr/var/log/yggdrasil/yggdrasil.log &
|
||
|
disown %1
|
||
|
sleep 5
|
||
|
sudo ip -6 ru add to 200::/7 lookup 200 prio 1000
|
||
|
sudo ip -6 ru add from YOUR_IP lookup 200 prio 999
|
||
|
sudo ip r add 200::/7 dev YOUR_TUNTAP metric 128 table 200
|
||
|
</file>
|
||
|
* Лучше скрипт размещать в папке ''/data/data/com.termux/files/home/'', чтоб запускать сразу при открытии терминала.
|
||
|
=== Служба с автозапуском ===
|
||
|
Если у вас установлен Termux Boot (а если нет, то лучше поставьте), будет удобно сделать службу, благодаря чему yggdrasil будет запускаться автоматически при загрузке телефона. Копируем любую службу, например, sshd, в качестве шаблона для нашей новой службы
|
||
|
<code>cd /data/data/com.termux/files/usr/var/service
|
||
|
cp -r sshd yggdrasil</code>
|
||
|
|
||
|
Правим файл run:
|
||
|
<code>vim yggdrasil/run</code>
|
||
|
всё стираем и вносим, заменив значения на свои:
|
||
|
<code>mkdir -p /dev/net
|
||
|
sudo ln -s /dev/tun /dev/net/tun
|
||
|
sudo yggdrasil -useconffile /data/data/com.termux/files/usr/etc/yggdrasil.conf
|
||
|
</code>
|
||
|
Включаем и запускаем службу:
|
||
|
<code>sv-enable yggdrasil
|
||
|
sv start yggdrasil</code>
|
||
|
|
||
|
|
||
|
|
||
|
Создаём файл в автозапуске:
|
||
|
|
||
|
<code>vim ~/.termux/boot/ygg-route.sh</code>
|
||
|
вносим:
|
||
|
<code>#!/data/data/com.termux/files/usr/bin/sh
|
||
|
sudo ip -6 ru add to 200::/7 lookup 200 prio 1000
|
||
|
sudo ip -6 ru add from YOUR_IP lookup 200 prio 999
|
||
|
sudo ip r add 200::/7 dev YOUR_TUNTAP metric 128 table 200</code>
|
||
|
|
||
|
Даём права на исполнение:
|
||
|
<code>chmod +x ~/.termux/boot/ygg-route.sh</code>
|
||
|
|
||
|
|
||
|
* Теперь Yggdrasil работает в фоне, потребляя порядка 10 МБ памяти.
|
||
|
* Не забудьте настроить правила файрвола!
|
||
|
|
||
|
Поздравляю, вы герой! Удачи в освоении сети Yggdrasil, и её сервисов!
|
||
|
|
||
|
====== Ссылки ======
|
||
|
Installing on iOS (EN): https://yggdrasil-network.github.io/installation-ios-app.html
|
||
|
|
||
|
~~DISCUSSION~~
|