From 0e93c1be0c10acd6081e58662c8a2c28942d5e34 Mon Sep 17 00:00:00 2001 From: Olia Lisa Date: Wed, 22 Jul 2026 20:33:39 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E4=BF=AE=E6=94=B9ip=E6=A0=A1=E9=AA=8C?= =?UTF-8?q?=E8=A7=84=E5=88=99?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- hiwifi-b70.sh | 10 +++++++--- newifi3_d2.sh | 9 +++++++-- r2s.sh | 9 +++++++-- x86-64.sh | 10 ++++++++-- 4 files changed, 29 insertions(+), 9 deletions(-) diff --git a/hiwifi-b70.sh b/hiwifi-b70.sh index 3421034..9cad896 100644 --- a/hiwifi-b70.sh +++ b/hiwifi-b70.sh @@ -196,15 +196,19 @@ input_lan_ip() { valid_ipv4() { local ip="$1" + # 第一层:检查格式,必须是4段数字 + echo "$ip" | grep -Eq '^[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+$' || return 1 + + # 第二层:检查每段范围 echo "$ip" | awk -F. ' - NF==4 && $1>=0 && $1<=255 && $2>=0 && $2<=255 && $3>=0 && $3<=255 && $4>=0 && $4<=255 - ' -} + ' | grep -q . || return 1 + return 0 +} project_dir="$(cd "$(dirname "$0")" && pwd)" cd "$project_dir" diff --git a/newifi3_d2.sh b/newifi3_d2.sh index 2e7c7d9..94ff09f 100644 --- a/newifi3_d2.sh +++ b/newifi3_d2.sh @@ -195,13 +195,18 @@ input_lan_ip() { valid_ipv4() { local ip="$1" + # 第一层:检查格式,必须是4段数字 + echo "$ip" | grep -Eq '^[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+$' || return 1 + + # 第二层:检查每段范围 echo "$ip" | awk -F. ' - NF==4 && $1>=0 && $1<=255 && $2>=0 && $2<=255 && $3>=0 && $3<=255 && $4>=0 && $4<=255 - ' + ' | grep -q . || return 1 + + return 0 } project_dir="$(cd "$(dirname "$0")" && pwd)" diff --git a/r2s.sh b/r2s.sh index 2aea275..f4da511 100644 --- a/r2s.sh +++ b/r2s.sh @@ -243,13 +243,18 @@ input_lan_ip() { valid_ipv4() { local ip="$1" + # 第一层:检查格式,必须是4段数字 + echo "$ip" | grep -Eq '^[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+$' || return 1 + + # 第二层:检查每段范围 echo "$ip" | awk -F. ' - NF==4 && $1>=0 && $1<=255 && $2>=0 && $2<=255 && $3>=0 && $3<=255 && $4>=0 && $4<=255 - ' + ' | grep -q . || return 1 + + return 0 } # 项目根目录,保证从任意位置执行 r2s.sh 都能找到其他资源 diff --git a/x86-64.sh b/x86-64.sh index cc6ee48..5fee7b6 100644 --- a/x86-64.sh +++ b/x86-64.sh @@ -269,13 +269,18 @@ input_lan_ip() { valid_ipv4() { local ip="$1" + # 第一层:检查格式,必须是4段数字 + echo "$ip" | grep -Eq '^[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+$' || return 1 + + # 第二层:检查每段范围 echo "$ip" | awk -F. ' - NF==4 && $1>=0 && $1<=255 && $2>=0 && $2<=255 && $3>=0 && $3<=255 && $4>=0 && $4<=255 - ' + ' | grep -q . || return 1 + + return 0 } # 项目根目录,用来保证从任意位置执行 main.sh 都能找到其他脚本 @@ -293,6 +298,7 @@ rootfs_partsize=$(ask_input "请输入根分区大小(MB)" "$default_rootfs_part # lan口ip default_lan_ip="192.168.1.1" lan_ip=$(input_lan_ip "$default_lan_ip") +echo $lan_ip # 安装依赖 install_dependencies