Giter Club home page Giter Club logo

domain-routing-openwrt's Issues

Возможность добавить юзерские ip/ip_range в игнор

Здравствуйте, а есть какой-то удобный вариант добавить определённые ip и ip_range в какой-то список чтоб маршрутизация на них была не через vpn? А то есть определённые адреса к которым хотелось бы иметь доступ мимо впн-а, а суммаризованый список к сожалению захватывает эти адреса по случайности.
Вчера пытался настроить маркировку своего списка "исключений" другой меткой (0x2) и направлять все файлы с таким пакетом в нормальную таблицу маршрутизации (не vpn), но что-то ничего не получилось (Я к сожалению в сетях и настройках FW не силён).
Может есть какие-то более удобные варианты?

OpenWRT 24

Огромная просьба, добавить поддержку снапшотов OpenWRT 24. Вручную менял настройки скрипта, чтобы он выдавал значение 23 вместо 24 на моём GL-MT3000 всё сработало.

Out of memory на старых роутерах когда используется ip.lst вместо ipsum.lst

Сразу говорю, я не предлагаю эти изменения для мёрджа, просто оставляю инфу, может кто-то ещё будет нуждаться в таком и найдёт это в гугле. Возможно настройки не оптимальны.

Я тут попользовался вашим конфигом (не ansible, в основном брал с хабра).
Всё отлично, через неделю понял что суммаризованым списком немного неудобно пользоваться.
Начал пытаться использовать ip.lst вместо ipsum.lst, и разумеется на моём картофельном роутере начал лететь OOM при рестарте фаерволла. Я не понимаю что там этот фаерволл делает, но жрёт память при рестарте он дико.
В итоге я таки победил свой роутер и теперь пользуюсь более точным списоком ip.lst.

Роутер у меня TP-Link TL-WR842N v3
Пишет что 56MiB оперативы всего.
OpenWRT 22.03

Идея моих изменений такая: Не грузим никакие списки при рестарте фаерволла, загружаем все айпишники уже после рестарта. Перед рестартом желательно ресетнуть всё тоже.

Во-первых надо:

opkg update
opkg install zram-swap

Это чуть-чуть "добавит" оперативы.

Мои изменённые конфиги:
(/etc/init.d/hirkn)

#!/bin/sh /etc/rc.common

START=99

dir=/tmp/lst
SUBNET=https://antifilter.download/list/subnet.lst
IP=https://antifilter.download/list/ip.lst
COMMUNITY=https://community.antifilter.download/list/community.lst

mkdir -p $dir

echo "Run download lists"
rm -f /$dir/subnet.lst && wget -P $dir $SUBNET
rm -f /$dir/ip.lst && wget -P $dir $IP
rm -f /$dir/community.lst && wget -P $dir $COMMUNITY

# Check file at reboot
if [ ! -f $dir/subnet.lst ]
then
    wget -P $dir $SUBNET
fi

if [ ! -f $dir/ip.lst ]
then
    wget -P $dir $IP
fi

if [ ! -f $dir/community.lst ]
then
    wget -P $dir $COMMUNITY
fi

echo "Flushing old ruleset (Because otherwise firewall restart can be killed by OOM)"
nft flush ruleset
echo "Restarting firewall"
/etc/init.d/firewall restart
# nft list ruleset
echo "Adding community.lst"
cat /tmp/lst/community.lst | xargs -r -n1000 | sed 's/ /,/g' | xargs -n1 sh -c 'nft add element inet fw4 vpn_community { "$@" }' dummy
echo "Adding subnet.lst"
cat /tmp/lst/subnet.lst | xargs -r -n1000 | sed 's/ /,/g' | xargs -n1 sh -c 'nft add element inet fw4 vpn_subnets { "$@" }' dummy
echo "Adding ip.lst"
cat /tmp/lst/ip.lst | xargs -r -n1000 | sed 's/ /,/g' | xargs -n1 sh -c 'nft add element inet fw4 vpn_ip { "$@" }' dummy

(/etc/config/firewall)
Как видим в конфиге я не использую loadfile (он закомменчен)

config ipset
        option name 'vpn_ip'
        option match 'dst_ip'
        #option loadfile '/tmp/lst/ip.lst'

config ipset
        option name 'vpn_subnets'
        option match 'dst_net'
        #option loadfile '/tmp/lst/subnet.lst'

config ipset
        option name 'vpn_community'
        option match 'dst_net'
        #option loadfile '/tmp/lst/community.lst'

config rule
        option name 'mark_subnet'
        option src 'lan'
        option dest '*'
        option proto 'all'
        option ipset 'vpn_subnets'
        option set_mark '0x1'
        option target 'MARK'

config rule
        option name 'mark_ip'
        option src 'lan'
        option dest '*'
        option proto 'all'
        option ipset 'vpn_ip'
        option set_mark '0x1'
        option target 'MARK'
        option family 'ipv4'

config rule
        option name 'mark_community'
        option src 'lan'
        option dest '*'
        option proto 'all'
        option ipset 'vpn_community'
        option set_mark '0x1'
        option target 'MARK'
        option family 'ipv4'

Ошибка при загрузке страницы uci в startup

изображение

выходит ошибка

XHR request timed out

Роутер: Redmi AX6
FW: OpenWrt SNAPSHOT r20813-bfb4f545a8 / LuCI Master git-22.260.19132-34dd31a

В ручную не завелось. запустил через ansible всё завелось.

У меня решилось поместив код hirkn в start() { ** }
и запускать через /etc/init.d/hirkn start
не знаю как актуально для других версий.

использование вместе с zapret

можно ли использовать этот скрипт совместно с zapret, если да, то как?
у меня возникали конфликты, роутинг доменов из списка не работал

Ошибка при копировании настроек

Получаю следующие ошибки:
fatal: [192.168.1.1]: FAILED! => {"changed": true, "checksum": "638f04858d5887b50c61b7c9a41ad8a068ce7385", "dest": "/etc/hotplug.d/iface/30-rknroute", "md5sum": "db11dee959eb32d01d34b35c24195d21", "msg": "chmod (/etc/hotplug.d/iface/30-rknroute) failed: chmod: invalid mode 'False'", "src": "/root/.ansible/tmp/ansible-tmp-1550921521.83-94202376827463/source"}
fatal: [192.168.1.1]: FAILED! => {"changed": true, "checksum": "ffe1b15697030e4be45349840923a773806c9cbc", "dest": "/etc/config/dnscrypt-proxy", "md5sum": "d833f620cf01f61e2c5697f61f14df6c", "msg": "chmod (/etc/config/dnscrypt-proxy) failed: chmod: invalid mode 'False'", "src": "/root/.ansible/tmp/ansible-tmp-1550922152.67-233527556261273/source"}

Ошибка возникает, как я понял, из-за того, что template файлы не с теми правами и владельцами. не стал разбираться. Файлы копируются, я просто на время закомментировал эти строки.

P.S. Спасибо за то, что поделились своим трудом.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.