Ncleis Posted June 20, 2022 Share Posted June 20, 2022 (edited) Доброго времени суток пользователи keenetic! Представляю вам реализацию mesh сети yggdrasil, с полноценной выдачей адресов на все устройства в сети. Начнем с установки yggdrasil и radvd - opkg update opkg install yggdrasil-go radvd iptables После установки переходим в CLI по адресу - http://192.168.1.1/a И вводим туда следующие команды - no ipv6 subnet Default system configuration save Сгенерим конфиг - yggdrasil -genconf > /opt/etc/yggdrasil.conf Далее настраиваем yggdrasil согласно документации - https://yggdrasil-network.github.io/ После этого нужно создать сервис для запуска yggdrasil и radvd nano /opt/etc/init.d/S83yggdrasil В него вставим содержимое из прикрепленного файла Далее создадим конфиг для radvd nano /opt/etc/radvd.conf В него вставим содержимое из прикрепленного файла Далее создадим сервис radvd nano /opt/etc/init.d/S84radvd В него вставим содержимое из прикрепленного файла После этого запускаем сервис и прописываем команду - yggdrasilctl getself Она выведет нам ipv6 адрес с префиксом /7 и вашу подсеть с префиксом /64 Копируем адрес, который начинается на 2 (пример: 200:66a2:a345:fb11:56ee:a9f1:a448:1114) Далее если у вас начинается на 200, то меняем на 300, если на 201, то на 301. В итоге вид такой: 300:66a2:a345:fb11:56ee:a9f1:a448:1114/64 Копируем ваш адрес в новом виде и идем редактировать файл S84radvd nano /opt/etc/init.d/S84radvd Меняем строку ADDRESS='301:ВАШ АДРЕС/64' на ADDRESS='300:66a2:a345:fb11:56ee:a9f1:a448:1114/64' После этого вставляем ваш адрес в файл по пути /opt/etc/radvd.conf в таком же виде: 300:66a2:a345:fb11:56ee:a9f1:a448:1114/64 Теперь нужно настроить межсетевой экран - nano /opt/etc/ndm/netfilter.d/iptables.sh cd /opt/etc/ndm/netfilter.d chmod +x iptables.sh В него вставим содержимое из прикрепленного файла После этого перезагружаем кинетик и тестируем работу. ping 200:6223::d35b:1fd8:be0d:2841 http://[200:6223::d35b:1fd8:be0d:2841]/ НЕ ЗАБУДЬТЕ ВЫДАТЬ ПРАВА НА ВСЕ СКРИПТЫ И ПРАВИЛЬНО ПРОПИСАТЬ СВОЙ IP!!!!!!!!!! Отдельное спасибо @niks255 за помощь в конфигурации iptables.sh radvd.conf S82radvd.sh S83yggdrasil.sh Edited June 20, 2022 by Ncleis 3 1 Quote Link to comment Share on other sites More sharing options...
UweStrich Posted July 7, 2022 Share Posted July 7, 2022 (edited) "Баловался" когда-то игдрассилем на роутере, остановился тогда из-за лени накатать скрипт автозапуска и - особенно, - правила для iptables, так что большое спасибо за них 👍 От себя правда добавлю то, что и в тех тогдашних опытах, и в нынешних по следам темы, вместо radvd из Entware воспользовался функционалом ipv6 непосредственно роутера - пускай и не особо элегантным способом: прописал дополнительным соединением тоннель SixInFour на адрес роутера, указав в нём полученные из конфига адреса ipv6 и префикс: после чего в CLI задал mtu на тоннеле, прописал маршрут до подсети Yggdrasil, и сохранил, с последующей перезагрузкой роутера: interface TunnelSixInFour0 ip mtu 1280 ipv6 route 200::/7 TunnelSixInFour0 system configuration save Ну, и т.к. скорости в Yggdrasil только через роутер (KN-1011 в моём случае; интересно было бы посмотреть на скорости от роутера на ARM-процессоре вроде KN-2710 - процессор мощнее, а значит и шифрование пройдёт быстрее и с увеличением скоростей...) будут заведомо меньше чем от связки "Yggdrasil что на роутере, что на ПК", то дополнительно - ради стабильности соединения, - сменил всё в том же CLI роутера планировщик пакетов на интерфейсе тоннеля с дефолтного fq_codel на cake, с последующим сохранением: interface TunnelSixInFour0 tx-queue scheduler cake system configuration save Под катом - сравнение по замерам "до" и "после" смены планировщика пакетов на интерфейсе (хотя не буду отрицать, что могла также сказаться и нагрузка непосредственно на сервер тестирования скорости), из отмеченного - уменьшение колебания пинга (jitter): Скрытый текст Edited July 7, 2022 by UweStrich 1 Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.