Report post 12/25/2020 12:58 PM Здравствуйте. Кто-нибудь собирал пакет dnsproxy для opkg? https://github.com/AdguardTeam/dnsproxy (написан на "go") Quote Share this post Link to post Share on other sites
Report post 12/25/2020 05:09 PM А можно узнать для какой задачи? Quote Share this post Link to post Share on other sites
Report post 12/25/2020 06:03 PM С dnsmasq'а все DNS запросы засылаю по DoH через Кинетиковский /usr/sbin/https_dns_proxy (не путать с opkg'шным /opt/sbin/https-dns-proxy, который у меня почему-то так и не заработал, не резолвит и всё ) /usr/sbin/https_dns_proxy настраивается через Web UI Кинетика (прошивка v 3.5.6), порты определяются прошивкой и я опасаюсь, что они могут поменяться и тогда дома инет "ляжет". Поэтому я ищю альтернативу /usr/sbin/https_dns_proxy который был бы полностью под моим контролем. И тут мне попался этот dnsproxy Ещё dnsproxy поддерживает DoQ (DNS-over-QUIC). Тоже интересно попробовать Quote Share this post Link to post Share on other sites
Report post 12/26/2020 11:09 AM 22 часа назад, lbXKSxw1C сказал: Кто-нибудь собирал пакет dnsproxy для opkg? Makefile: Скрытый текст # # Copyright (C) 2011-2020 Entware # # This is free software, licensed under the GNU General Public License v2. # See /LICENSE for more information. # include $(TOPDIR)/rules.mk PKG_NAME:=dnsproxy PKG_VERSION:=v0.33.7 PKG_RELEASE:=1 PKG_GOGET:=github.com/AdguardTeam/dnsproxy GOPKG_SOURCE=GO_$(PKG_NAME)-$(PKG_VERSION)-$(PKG_RELEASE).tar.bz2 #!!! uncomment PKG_SOURCE to download fixed version PKG_SOURCE=$(GOPKG_SOURCE) PKG_COMMIT=662b1052c36b71c9e6d7f314313cfdde9da0325a PKG_HASH:=987d04fa0426993691aca980ae0c4f007d8984f041a82d75131d8bd12c762a84 PKG_MIRROR_HASH:=skip PKG_LICENSE:=GPL-3.0-only PKG_LICENSE_FILES:=LICENSE PKG_BUILD_PARALLEL:=1 PKG_USE_MIPS16:=0 include $(INCLUDE_DIR)/package.mk include $(INCLUDE_DIR)/golang.mk ifeq ($(BUILD_VARIANT),nohf) GOARM:=GOARM=5 endif define Package/dnsproxy/Default $(call Package/gopackage/Default) SECTION:=net CATEGORY:=Network SUBMENU:=IP Addresses and Names TITLE:=Simple DNS proxy with DoH, DoT, DoQ and DNSCrypt support URL:=https://github.com/AdguardTeam/dnsproxy endef define Package/dnsproxy $(call Package/dnsproxy/Default) VARIANT:=hf endef define Package/dnsproxy_nohf $(call Package/dnsproxy/Default) VARIANT:=nohf DEPENDS+=@(TARGET_armv7_2_6||TARGET_armv7_3_2) endef define Package/dnsproxy/description A simple DNS proxy server that supports all existing DNS protocols including DNS-over-TLS, DNS-over-HTTPS, DNSCrypt, and DNS-over-QUIC. Moreover, it can work as a DNS-over-HTTPS, DNS-over-TLS or DNS-over-QUIC server. endef Package/dnsproxy_nohf/description=$(Package/dnsproxy/description) define Build/Compile ( cd $(PKG_BUILD_DIR)/src/$(PKG_GOGET); \ CGO_ENABLED=0 \ GOOS=linux \ GOARCH=$(GOARCH) \ $(GOARM) \ $(GOROOT)/bin/go build . ; \ ) endef define Package/dnsproxy/install $(INSTALL_DIR) $(1)/opt/bin $(INSTALL_BIN) $(PKG_BUILD_DIR)/src/$(PKG_GOGET)/dnsproxy $(1)/opt/bin endef Package/dnsproxy_nohf/install=$(Package/dnsproxy/install) $(eval $(call BuildPackage,dnsproxy)) $(eval $(call BuildPackage,dnsproxy_nohf)) pkg: dnsproxy_v0.33.7-1_mipsel-3.4.ipk 1 Quote Share this post Link to post Share on other sites
Report post 12/26/2020 05:20 PM 5 часов назад, TheBB сказал: Makefile: Показать содержимое # # Copyright (C) 2011-2020 Entware # # This is free software, licensed under the GNU General Public License v2. # See /LICENSE for more information. # include $(TOPDIR)/rules.mk PKG_NAME:=dnsproxy PKG_VERSION:=v0.33.7 PKG_RELEASE:=1 PKG_GOGET:=github.com/AdguardTeam/dnsproxy GOPKG_SOURCE=GO_$(PKG_NAME)-$(PKG_VERSION)-$(PKG_RELEASE).tar.bz2 #!!! uncomment PKG_SOURCE to download fixed version PKG_SOURCE=$(GOPKG_SOURCE) PKG_COMMIT=662b1052c36b71c9e6d7f314313cfdde9da0325a PKG_HASH:=987d04fa0426993691aca980ae0c4f007d8984f041a82d75131d8bd12c762a84 PKG_MIRROR_HASH:=skip PKG_LICENSE:=GPL-3.0-only PKG_LICENSE_FILES:=LICENSE PKG_BUILD_PARALLEL:=1 PKG_USE_MIPS16:=0 include $(INCLUDE_DIR)/package.mk include $(INCLUDE_DIR)/golang.mk ifeq ($(BUILD_VARIANT),nohf) GOARM:=GOARM=5 endif define Package/dnsproxy/Default $(call Package/gopackage/Default) SECTION:=net CATEGORY:=Network SUBMENU:=IP Addresses and Names TITLE:=Simple DNS proxy with DoH, DoT, DoQ and DNSCrypt support URL:=https://github.com/AdguardTeam/dnsproxy endef define Package/dnsproxy $(call Package/dnsproxy/Default) VARIANT:=hf endef define Package/dnsproxy_nohf $(call Package/dnsproxy/Default) VARIANT:=nohf DEPENDS+=@(TARGET_armv7_2_6||TARGET_armv7_3_2) endef define Package/dnsproxy/description A simple DNS proxy server that supports all existing DNS protocols including DNS-over-TLS, DNS-over-HTTPS, DNSCrypt, and DNS-over-QUIC. Moreover, it can work as a DNS-over-HTTPS, DNS-over-TLS or DNS-over-QUIC server. endef Package/dnsproxy_nohf/description=$(Package/dnsproxy/description) define Build/Compile ( cd $(PKG_BUILD_DIR)/src/$(PKG_GOGET); \ CGO_ENABLED=0 \ GOOS=linux \ GOARCH=$(GOARCH) \ $(GOARM) \ $(GOROOT)/bin/go build . ; \ ) endef define Package/dnsproxy/install $(INSTALL_DIR) $(1)/opt/bin $(INSTALL_BIN) $(PKG_BUILD_DIR)/src/$(PKG_GOGET)/dnsproxy $(1)/opt/bin endef Package/dnsproxy_nohf/install=$(Package/dnsproxy/install) $(eval $(call BuildPackage,dnsproxy)) $(eval $(call BuildPackage,dnsproxy_nohf)) pkg: dnsproxy_v0.33.7-1_mipsel-3.4.ipk Спасибо. А как его надо было собирать? И можно ли его включить в репозиторий Entware? Проверил с несколькими конфигурациями через JSON всё работает. Создал /opt/etc/init.d/S09dnsproxy #!/bin/sh ENABLED=yes PROCS=dnsproxy ARGS="-l 0.0.0.0 -p 9253 -u https://cloudflare-dns.com/dns-query -b 1.1.1.1:53 -f 8.8.8.8:53 -f 94.140.14.140:53" PREARGS="" DESC=$PROCS PATH=/opt/sbin:/opt/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin . /opt/etc/init.d/rc.func P.S. Проверенные варианты для других DNS'ов: -u https://dns.google/dns-query -b 8.8.8.8:53 -f 1.1.1.1:53 -f 94.140.14.140:53 -u https://dns-unfiltered.adguard.com/dns-query -b 94.140.14.140:53 -f 1.1.1.1:53 -f 8.8.8.8:53 -u quic://dns-unfiltered.adguard.com -b 94.140.14.140:53 -f 1.1.1.1:53 -f 8.8.8.8:53 1 Quote Share this post Link to post Share on other sites
Report post 12/28/2020 06:46 AM В 26.12.2020 в 20:20, lbXKSxw1C сказал: А как его надо было собирать? https://forum.keenetic.net/topic/1288-самостоятельная-сборка-пакетов Quote Share this post Link to post Share on other sites
Report post 12/28/2020 03:21 PM Компилировать исходники go лучше на Keenetic'е или кросскомиляция на PC? Quote Share this post Link to post Share on other sites
Report post 12/29/2020 08:22 AM 16 часов назад, lbXKSxw1C сказал: Компилировать исходники go лучше на Keenetic'е или кросскомиляция на PC? Если cross, Makefile выше, если нативно (на устройстве), тогда начинать отсюда. Quote Share this post Link to post Share on other sites