🌐 uci 指令 修改 OpenWrt 靜態 IP

🧠 指令解析

uci set network.@interface[1].ipaddr='192.168.99.2'
  • network:表示修改 /etc/config/network 設定檔

  • @interface[1]:挑選第 2 個 config interface 區塊(因為索引從 0 開始)

  • ipaddr='192.168.99.2':設定該介面的靜態 IPv4 位址為 192.168.99.2

❓ 如何確認 interface 區塊順序

使用以下指令查看:

uci show network | grep '=interface'

範例輸出可能是:

network.lan=interface
network.wan=interface
network.wg0=interface

✅ 若你確定要改的是 lan 接口,可以直接這樣寫:

uci set network.lan.ipaddr='192.168.99.2'

這樣語意清楚,也不怕索引順序變動造成誤改

✅ 完成修改後的步驟

  1. 儲存設定變更:
uci commit network
  1. 重新啟動網路:
/etc/init.d/network restart

📌 注意:此步驟可能會讓裝置 IP 改變,導致 SSH/web UI 斷線,建議從本地 console 操作,或先設好 fallback gateway

🔍 延伸建議(選用)

你可以一併調整以下項目:

uci set network.lan.netmask='255.255.255.0'         # 子網遮罩
uci set network.lan.gateway='192.168.99.1'          # 預設 gateway
uci set network.lan.broadcast='192.168.99.255'      # 廣播位址(可選)
uci set network.lan.ip6assign='64'                  # IPv6 prefix(若需要)