feat: 增加交互式修改lan口ip功能

This commit is contained in:
Olia Lisa
2026-07-22 18:37:36 +08:00
parent c1e72bba9a
commit bc0c518947
5 changed files with 85 additions and 11 deletions
+25 -7
View File
@@ -71,6 +71,11 @@ build(){
# ────────────────────────────────────────────
ROOTFS_PARTSIZE="${2:-}"
# ────────────────────────────────────────────
# lan口ip
# ────────────────────────────────────────────
LAN_IP=${3}
# =============================================================
# 插件包列表
# - 前面加 - 表示从固件中移除该包,例如 -dnsmasq
@@ -136,6 +141,21 @@ build(){
# 切换到 Image Builder 目录
cd "$BUILDER_DIR"
# 创建 files 目录(如果不存在)
if [ ! -d "$FILES_DIR" ]; then
echo -e "${YELLOW}[提示] files/ 目录不存在,已自动创建${NC}"
mkdir -p "$FILES_DIR"
fi
# 如果存在 LAN IP 设置脚本,则修改默认 LAN 地址
LAN_SETTING_FILE="${SCRIPT_DIR}/files/etc/uci-defaults/98-network-setting"
if [ -e "$LAN_SETTING_FILE" ]; then
# 根据用户输入的 LAN_IP 修改默认 IP
sed -i \
"s/^update_lan_ip .*/update_lan_ip ${LAN_IP}/" \
"$LAN_SETTING_FILE"
fi
# 复制 files 目录下的自定义文件到 Image Builder 的 files 目录
if [ -d "${SCRIPT_DIR}/files" ]; then
echo -e "${YELLOW}[提示] 复制自定义 files/ 目录到 Image Builder${NC}"
@@ -160,12 +180,6 @@ build(){
exit 1
fi
# 创建 files 目录(如果不存在)
if [ ! -d "$FILES_DIR" ]; then
echo -e "${YELLOW}[提示] files/ 目录不存在,已自动创建${NC}"
mkdir -p "$FILES_DIR"
fi
mkdir -p "$OUTPUT_DIR"
# 执行构建
@@ -246,6 +260,10 @@ version=$(ask_input "请输入 ImmortalWrt 版本" "$default_version")
default_rootfs_partsize="600"
rootfs_partsize=$(ask_input "请输入根分区大小(MB)" "$default_rootfs_partsize")
# lan口ip
default_lan_ip="192.168.1.1"
lan_ip=$(ask_input "请输入lan口ip" $default_lan_ip)
# 安装依赖
install_dependencies
@@ -253,4 +271,4 @@ install_dependencies
builder_dir="$(download_imagebuilder "$version")"
# 构建固件
build $builder_dir $rootfs_partsize
build $builder_dir $rootfs_partsize $lan_ip