You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Android 10已root设备通过ADB Shell修改WiFi静态IP的方法求助

Android 10 Root设备通过ADB修改指定WiFi静态IP的有效方法

推荐方法:使用系统cmd wifi命令(与系统设置效果一致)

该方法直接调用系统WiFi服务API修改配置,无需手动编辑文件,可靠性高。

步骤1:获取目标WiFi的networkId

  1. 确保设备已获取ADB root权限:
    adb root
    adb shell
    
  2. 执行命令查找目标WiFi的网络ID:
    dumpsys wifi | grep -A 30 "SSID: \"你的WiFi名称\""
    
    在输出结果中找到networkId字段(例如networkId=5),记录该数值。

步骤2:设置静态IP配置

替换命令中的参数为你的实际配置:

cmd wifi set-network-properties <networkId> ip_config static <IP地址>/<子网前缀> <网关> <DNS1> <DNS2>

示例(networkId=5,IP为192.168.1.100,子网前缀24对应255.255.255.0):

cmd wifi set-network-properties 5 ip_config static 192.168.1.100/24 192.168.1.1 114.114.114.114 8.8.8.8

步骤3:重新连接WiFi使配置生效

cmd wifi disconnect
cmd wifi connect "你的WiFi名称"

备选方法:修改WifiConfigStore.xml并重启WiFi服务

若cmd wifi命令不可用,可通过修改系统配置文件实现,需严格遵循格式:

步骤1:停止WiFi服务并挂载/data为可读写

adb root
adb shell
svc wifi disable
mount -o remount,rw /data

步骤2:编辑WifiConfigStore.xml

用文本编辑器打开配置文件:

vi /data/misc/wifi/WifiConfigStore.xml

找到目标WiFi的配置节点,修改<IpAssignment>为STATIC,并添加静态IP配置节点:

<IpAssignment>STATIC</IpAssignment>
<StaticIpConfiguration>
  <IpAddress>
    <Address>192.168.1.100</Address>
    <PrefixLength>24</PrefixLength>
  </IpAddress>
  <Gateway>192.168.1.1</Gateway>
  <DnsAddresses>
    <Address>114.114.114.114</Address>
    <Address>8.8.8.8</Address>
  </DnsAddresses>
</StaticIpConfiguration>

保存并退出编辑器(vi中按Esc,输入:wq回车)。

步骤3:重启WiFi服务

svc wifi enable

之前方法失效的原因

  • ifconfig wlan0 [ip]:Android 10已默认弃用ifconfig,且直接修改接口IP会被WiFi服务的自动配置覆盖,无实际效果。
  • ip address add [ip] dev wlan0:仅为网卡添加了额外IP,系统WiFi服务仍使用原DHCP分配的主IP,因此实际网络未切换到新IP。
  • 修改WifiConfigStore.xml后未重启WiFi服务:系统内存中仍保留旧配置,重新开启WiFi时会将内存配置写回文件,导致修改被覆盖。

内容的提问来源于stack exchange,提问作者Ux Ou

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.12 04:35:28