mirror of
https://github.com/juewuy/ShellCrash.git
synced 2026-03-10 23:41:22 +00:00
~bug fix and improve fw_filter.sh
This commit is contained in:
@@ -76,30 +76,7 @@ set_fw_filter() {
|
|||||||
set_cust_host_ipv4
|
set_cust_host_ipv4
|
||||||
;;
|
;;
|
||||||
6)
|
6)
|
||||||
while true; do
|
set_reserve_ipv4
|
||||||
[ -z "$reserve_ipv4" ] && reserve_ipv4="0.0.0.0/8 10.0.0.0/8 127.0.0.0/8 100.64.0.0/10 169.254.0.0/16 172.16.0.0/12 192.168.0.0/16 224.0.0.0/4 240.0.0.0/4"
|
|
||||||
comp_box "\033[33m注意:地址必须是空格分隔,错误的设置可能导致网络回环或启动报错,请务必谨慎!\033[0m" \
|
|
||||||
"" \
|
|
||||||
"当前网段:" \
|
|
||||||
"\033[36m$reserve_ipv4\033[0m"
|
|
||||||
btm_box "请直接输入自定义保留地址ipv4网段" \
|
|
||||||
"或输入 0 返回上级菜单"
|
|
||||||
read -r -p "请输入> " text
|
|
||||||
if [ "$text" = 0 ]; then
|
|
||||||
break
|
|
||||||
elif
|
|
||||||
echo "$text" | grep -Eq "(((25[0-5]|2[0-4][0-9]|1[0-9]{2}|[1-9]?[0-9])\.){3}(25[0-5]|2[0-4][0-9]|1[0-9]{2}|[1-9]?[0-9])/(3[0-2]|[1-2]?[0-9]))( +|$)+"
|
|
||||||
then
|
|
||||||
reserve_ipv4="$text"
|
|
||||||
if setconfig reserve_ipv4 "'$reserve_ipv4'"; then
|
|
||||||
msg_alert "已将保留地址网段设为:\033[32m$reserve_ipv4\033[0m"
|
|
||||||
else
|
|
||||||
msg_alert "\033[31m$COMMON_FAILED\033[0m"
|
|
||||||
fi
|
|
||||||
else
|
|
||||||
msg_alert "\033[31m输入有误,请重新输入!\033[0m"
|
|
||||||
fi
|
|
||||||
done
|
|
||||||
;;
|
;;
|
||||||
*)
|
*)
|
||||||
errornum
|
errornum
|
||||||
@@ -219,7 +196,7 @@ set_common_ports() {
|
|||||||
done
|
done
|
||||||
}
|
}
|
||||||
|
|
||||||
# 自定义ipv4透明路由网段
|
# 自定义ipv4透明路由、保留地址网段
|
||||||
set_cust_host_ipv4() {
|
set_cust_host_ipv4() {
|
||||||
while true; do
|
while true; do
|
||||||
[ -z "$replace_default_host_ipv4" ] && replace_default_host_ipv4="OFF"
|
[ -z "$replace_default_host_ipv4" ] && replace_default_host_ipv4="OFF"
|
||||||
@@ -256,7 +233,7 @@ set_cust_host_ipv4() {
|
|||||||
fi
|
fi
|
||||||
;;
|
;;
|
||||||
*)
|
*)
|
||||||
if [ -n "$(echo "$text" | grep -Eo '^([0-9]{1,3}\.){3}[0-9]{1,3}/[0-9]{1,2}'$)" ] && echo "$cust_host_ipv4" | grep -q "$text"; then
|
if echo "$text" | grep -Eq '^([0-9]{1,3}\.){3}[0-9]{1,3}/[0-9]{1,2}' && [ -z "$(echo $cust_host_ipv4 | grep "$text")" ]; then
|
||||||
cust_host_ipv4="$cust_host_ipv4 $text"
|
cust_host_ipv4="$cust_host_ipv4 $text"
|
||||||
if setconfig cust_host_ipv4 "'$cust_host_ipv4'"; then
|
if setconfig cust_host_ipv4 "'$cust_host_ipv4'"; then
|
||||||
msg_alert "\033[32m$COMMON_SUCCESS\033[0m"
|
msg_alert "\033[32m$COMMON_SUCCESS\033[0m"
|
||||||
@@ -270,7 +247,44 @@ set_cust_host_ipv4() {
|
|||||||
esac
|
esac
|
||||||
done
|
done
|
||||||
}
|
}
|
||||||
|
set_reserve_ipv4() {
|
||||||
|
while true; do
|
||||||
|
[ -z "$reserve_ipv4" ] && reserve_ipv4="0.0.0.0/8 10.0.0.0/8 127.0.0.0/8 100.64.0.0/10 169.254.0.0/16 172.16.0.0/12 192.168.0.0/16 224.0.0.0/4 240.0.0.0/4"
|
||||||
|
comp_box "\033[33m注意:地址必须是空格分隔,错误的设置可能导致网络回环或启动报错,请务必谨慎!\033[0m" \
|
||||||
|
"" \
|
||||||
|
"当前网段:" \
|
||||||
|
"\033[36m$reserve_ipv4\033[0m"
|
||||||
|
btm_box "请直接输入自定义保留地址ipv4网段" \
|
||||||
|
"或输入 1 重置默认网段" \
|
||||||
|
"或输入 0 返回上级菜单"
|
||||||
|
read -r -p "请输入> " text
|
||||||
|
case "$text" in
|
||||||
|
"" | 0)
|
||||||
|
break
|
||||||
|
;;
|
||||||
|
1)
|
||||||
|
unset reserve_ipv4
|
||||||
|
if setconfig reserve_ipv4; then
|
||||||
|
msg_alert "\033[32m$COMMON_SUCCESS\033[0m"
|
||||||
|
else
|
||||||
|
msg_alert "\033[31m$COMMON_FAILED\033[0m"
|
||||||
|
fi
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
if echo "$text" | grep -Eq "(((25[0-5]|2[0-4][0-9]|1[0-9]{2}|[1-9]?[0-9])\.){3}(25[0-5]|2[0-4][0-9]|1[0-9]{2}|[1-9]?[0-9])/(3[0-2]|[1-2]?[0-9]))( +|$)+"; then
|
||||||
|
reserve_ipv4="$text"
|
||||||
|
if setconfig reserve_ipv4 "'$reserve_ipv4'"; then
|
||||||
|
msg_alert "已将保留地址网段设为:\033[32m$reserve_ipv4\033[0m"
|
||||||
|
else
|
||||||
|
msg_alert "\033[31m$COMMON_FAILED\033[0m"
|
||||||
|
fi
|
||||||
|
else
|
||||||
|
msg_alert "\033[31m输入有误,请重新输入!\033[0m"
|
||||||
|
fi
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
done
|
||||||
|
}
|
||||||
# 局域网设备过滤
|
# 局域网设备过滤
|
||||||
fw_filter_lan() {
|
fw_filter_lan() {
|
||||||
get_devinfo() {
|
get_devinfo() {
|
||||||
|
|||||||
Reference in New Issue
Block a user