From d6f451c0e6dff23fb4c838cbdd5eac36660bdc2c Mon Sep 17 00:00:00 2001 From: itdoginfo Date: Sun, 10 Mar 2024 18:25:06 +0300 Subject: [PATCH] Added example for blocking a list --- README.md | 29 +++++++++++++++++++++++++++++ 1 file changed, 29 insertions(+) diff --git a/README.md b/README.md index 46eae6b..65aad2c 100644 --- a/README.md +++ b/README.md @@ -56,6 +56,35 @@ Outside: 3. Напишите в [чат](https://t.me/itdogchat) +# Как заблокировать на своём роутере? +Пример блокировки по списку доменов на роутере с OpenWrt 23.05. + +Нужен dnsmasq-full. Загружаем конфиг в tmp/dnsmasq.d. Создаём ipset, все пакеты к ip-адресам из этого ipset будут дропаться. + +``` +cd /tmp/ && opkg download dnsmasq-full +opkg remove dnsmasq && opkg install dnsmasq-full --cache /tmp/ +cp /etc/config/dhcp /etc/config/dhcp-old && mv /etc/config/dhcp-opkg /etc/config/dhcp + +cd /tmp/dnsmasq.d && wget https://raw.githubusercontent.com/itdoginfo/allow-domains/main/Russia/inside-dnsmasq-nfset.lst -O domains.conf + +uci add firewall ipset +uci set firewall.@ipset[-1].name='vpn_domains' +uci set firewall.@ipset[-1].match='dst_net' +uci add firewall rule +uci set firewall.@rule[-1]=rule +uci set firewall.@rule[-1].name='block_domains' +uci set firewall.@rule[-1].src='lan' +uci set firewall.@rule[-1].dest='*' +uci set firewall.@rule[-1].proto='all' +uci set firewall.@rule[-1].ipset='vpn_domains' +uci set firewall.@rule[-1].family='ipv4' +uci set firewall.@rule[-1].target='DROP' +uci commit + +service firewall restart && service dnsmasq restart +``` + # Как устроено? Список **Russia inside** формируются из списка https://community.antifilter.download/ и списка `src/Russia-domains-inside.lst`. Они объединяются, удаляются повторы и сортируются по алфавиту.