已Root的Android 11树莓派4设置USB tethering固定IP求助
解决Android 11树莓派4 USB Tethering固定IP的方案
方法一:临时手动设置(即时生效,重启失效)
- 先确认USB tethering对应的网络接口名称,执行命令:
找到类似ip link showusb0或rndis0的接口(这是USB共享网络的默认接口) - 关闭USB tethering,切换到root权限后执行以下命令(替换为你需要的IP参数):
su # 用ip命令配置(Android 11推荐) ip addr flush dev usb0 ip addr add 192.168.42.100/24 dev usb0 ip link set usb0 up ip route add default via 192.168.42.1 dev usb0 - 重新开启USB tethering,此时设备会使用你指定的固定IP
方法二:开机自动设置(永久生效)
Android 11系统分区默认只读,需先挂载为可读写:
- 挂载系统分区:
su mount -o remount,rw /system - 创建开机自启脚本,路径为
/system/etc/init.d/99_usbtether_staticip,内容如下(按需替换参数):#!/system/bin/sh sleep 10 # 等待系统初始化完成 INTERFACE="usb0" STATIC_IP="192.168.42.100/24" GATEWAY="192.168.42.1" # 配置静态IP ip addr flush dev $INTERFACE ip addr add $STATIC_IP dev $INTERFACE ip link set $INTERFACE up ip route add default via $GATEWAY dev $INTERFACE - 给脚本添加执行权限:
chmod +x /system/etc/init.d/99_usbtether_staticip - 若系统无
/system/etc/init.d目录,可改用Magisk的自启目录:
创建/data/adb/post-fs-data.d/usb_tether_staticip.sh,内容同上,再添加权限:chmod +x /data/adb/post-fs-data.d/usb_tether_staticip.sh
方法三:修改DHCP配置文件(根源固定)
Android USB tethering默认通过DHCP分配IP,修改配置文件可固定设备自身IP:
- 挂载系统分区为可读写后,找到DHCP配置文件(通常是
/system/etc/dhcpcd.conf或/system/etc/dhcp/dhcpd.conf,不同设备路径可能有差异) - 编辑文件,添加对应接口的静态IP配置:
interface usb0 static ip_address=192.168.42.100/24 static routers=192.168.42.1 static domain_name_servers=8.8.8.8,8.8.4.4 - 保存后重启设备,开启USB tethering即可生效
注意事项
- 确保设置的IP不在USB tethering默认DHCP地址池内(常见地址池为192.168.42.0/24或192.168.123.0/24)
- 若配置后无法联网,检查网关、DNS参数是否正确,或更换IP地址尝试
- 部分定制系统的接口名称或配置文件路径可能不同,需自行确认
内容的提问来源于stack exchange,提问作者Phạm Nguyễn Khang
相关产品推荐
相关产品推荐

