feat: ✨ 封禁到/24 /64 ip段
This commit is contained in:
parent
7ad04188e8
commit
d968c0da5c
|
@ -21,7 +21,8 @@ openwrt需要安装`iptables ip6tables`模块
|
||||||
|
|
||||||
* 除了`whitelist_pattern="Transmission|qBittorrent|µTorrent|aria2|BitComet"`, 其余都会被屏蔽
|
* 除了`whitelist_pattern="Transmission|qBittorrent|µTorrent|aria2|BitComet"`, 其余都会被屏蔽
|
||||||
* 例外情况: `special_pattern="qbittorrent/3\.3\.15|Transmission\ 2\.9|BitComet\ 2\.04"`, 这些也会被屏蔽
|
* 例外情况: `special_pattern="qbittorrent/3\.3\.15|Transmission\ 2\.9|BitComet\ 2\.04"`, 这些也会被屏蔽
|
||||||
* 当时间的小时数字是12的整数倍时,清空防火墙规则和log (eg:12:00/24:00)
|
* 当时间的小时数字是12的整数倍时,清空防火墙规则和log (eg:12:00/24:00). 0禁用
|
||||||
|
* 封禁延伸到 `/24` `/64` ip段
|
||||||
* 当ip是私有地址时,忽略
|
* 当ip是私有地址时,忽略
|
||||||
* 加入没什么用的彩色输出
|
* 加入没什么用的彩色输出
|
||||||
* `--debug`: 调试模式会打印更多信息,但不会写入log和添加防火墙
|
* `--debug`: 调试模式会打印更多信息,但不会写入log和添加防火墙
|
||||||
|
|
|
@ -215,6 +215,13 @@ echo "$ips" | while IFS= read -r line; do
|
||||||
continue
|
continue
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
# 转化成/64,/24掩码
|
||||||
|
if echo "$ip" | grep -q ":"; then
|
||||||
|
ip=$(echo "$ip" | awk -F: '{printf "%s:%s:%s:%s::/64", $1, $2, $3, $4}')
|
||||||
|
else
|
||||||
|
ip=$(echo "$ip" | cut -d '.' -f 1-3).0/24
|
||||||
|
fi
|
||||||
|
|
||||||
# 初始化标志
|
# 初始化标志
|
||||||
in_special_cases=0
|
in_special_cases=0
|
||||||
in_whitelist=0
|
in_whitelist=0
|
||||||
|
|
Loading…
Reference in New Issue