记录一次IPhone和Android手机USB网卡的移植过程
移植环境
ARM64 + Linux 5.15.98
IPhone USB网卡的快速移植
1. 添加驱动支持
defconfig添加:
CONFIG_USB_IPHETH=m
编译驱动后,找到 ipheth.ko并转载
insmod /lib/modules/$(uname -r)/kernel/drivers/net/usb/ipheth.ko
2. USB连接IPhone手机,留意手机的信任弹窗
并点击确定和输入密码
3. 检查USB网卡是否生成
ifconfig -a
4. 如果生成的网卡没有自动分配IP,安装udhcpc
如果支持apt-get,可以直接安装(只要你喜欢,也可以自行交叉编译, 或者下载deb包安装):
apt-get install udhcpc
apt-get install ideviceinstaller
开启dhcpc服务:
udhcpc -i <网卡名>
检查网卡是否已经分配IP:
ifconfig -a
5. 验证测试
ping www.baidu.com
如果网卡已经正确获取到IP,网络还是ping不通,可以检查路由配置和dns
检查路由:
# 以下是我自身环境的检查和操作,供参考
# 删除 192.168.195.2的默认路由
route del default gw 192.168.195.2
# 添加默认路由到 USB 网卡
route add default gw 172.20.10.1 dev enx666d2f1827ce
路由解决,可以先ping外网测试ping 8.8.8.8
.
外网IP ping通后, 域名还是不通,可以检查DNS,例如可以设置:
# 编辑 /etc/resolv.conf,修改nameserver:
nameserver 8.8.8.8
Android USB网卡的快速移植
需要重编内核并烧录!!!
-
#2 udhcpc
udhcpc_1%3a1.30.1-4ubuntu6.4_arm64.deb
# 安装udhcpc,也可以直接下载deb包dpkg -i xx.deb安装 apt-get install udhcpc #删除默认路由 route del default gw 192.168.1.2 #申请IP udhcpc -S -i usb0
-
测试
ping www.baidu.com
Done!