From 25188c052c5bfa22113b9dfe8e9b15086e894911 Mon Sep 17 00:00:00 2001 From: bolvan Date: Mon, 29 Apr 2019 19:57:17 +0300 Subject: [PATCH] wireguard-mod : force-depends notice --- wireguard/wireguard-mod.txt | 22 ++++++++++++++++++++-- 1 file changed, 20 insertions(+), 2 deletions(-) diff --git a/wireguard/wireguard-mod.txt b/wireguard/wireguard-mod.txt index 6990271..f4ce18a 100644 --- a/wireguard/wireguard-mod.txt +++ b/wireguard/wireguard-mod.txt @@ -130,7 +130,7 @@ __le32 gen_trash(void) # scripts/feeds update -a # scripts/feeds install -a # make defconfig -# make -j 4 package/wireguard +# make -j 4 package/wireguard/compile Сборка будет довольно долгой. Ведь придется подтащить ядро, собрать его, собрать зависимости. "-j 4" означает использовать 4 потока. Впишите вместо 4 количество доступных cpu cores. @@ -201,6 +201,9 @@ openwrt-sdk-18.06.2-ar71xx-generic_gcc-7.3.0_musl.Linux-x86_64/feeds/base/packag 1 раз где-нибудь пропатчите файлы последней версии wireguard в текстовом редакторе, скопируйте в build_dir, сделайте версию для openwrt. эти же файлы скопируйте на ваш сервер с десктопным linux, сделайте там make / make install +Но имейте в виду, что build_dir - локация для временных файлов. +make clean оттуда все снесет, включая ваши модификации. Модифицированные файлы лучше сохранить отдельно, +чтобы потом было легко скопировать обратно. Полученные ipk копируем на роутер в /tmp, устанавливаем через # cd /tmp @@ -209,8 +212,23 @@ openwrt-sdk-18.06.2-ar71xx-generic_gcc-7.3.0_musl.Linux-x86_64/feeds/base/packag # opkg update # opkg install .... <зависимости> # opkg install *.ipk +# rmmod wireguard +# kmodloader +# dmesg | tail +должны увидеть что-то вроде : +[8985.415490] wireguard: WireGuard 0.0.20190123 loaded. See www.wireguard.com for information. +[8985.424178] wireguard: Copyright (C) 2015-2019 Jason A. Donenfeld . All Rights Reserved. +значит модуль загрузился -Если раньше уже был wireguard, то проще всего будет на всякий случай ребутнуться. +Могут понадобиться ключи opkg --force-reinstall, --force-depends. +--force-depends поможет при несоответствии hash версии ядра. То есть версия x.x.x та же самая, но hash конфигурации разный. +При несоответствии x.x.x вы что-то делаете не так, работать это не будет. +Например : 4.14.56-1-b1186491495127cc6ff81d29c00a91fc, 4.14.56-1-3f8a21a63974cfb7ee67e41f2d4b805d +Это свидетельствует о несоответствии .config ядра при сборке прошивки и в SDK. +Если несоответствие легкое, то может все прокатить, но при более серьезной разнице в .config модуль может не загрузиться +или вызвать стабильные или хаотические падения ядра и перезагрузки (включая вариант беcконечной перезагрузки - bootloop). +Так что перед --force-depends убедитесь, что знаете как лечится такая ситуация, и не стоит это делать при отсутствии физического +доступа к девайсу. Когда поднимите линк, и вдруг ничего не будет работать, то посмотрите в wireshark udp пакеты на порт endpoint. Они не должны начинаться с 0,1,2,3,4. В первых 4 байтах должны быть