6.4 USB 网络共享(USB tethering)
6.4.1 概述
USB 网络共享(USB tethering)是通过通用串行总线(USB)物理层将移动设备(如智能手机、平板电脑)的广域网(WAN)连接共享给计算机系统的技术。
以下配置方法已在红米 Note 12 5G 上完成测试验证,可同时支持 Android 和 iOS 设备。
6.4.1.1 Wi-Fi 共享的流量特性
大多数新款 Android 手机开启 Wi-Fi 并关闭移动数据后,可将网络共享给 FreeBSD。该功能通过将手机已建立的 Wi-Fi 连接经由 USB 接口转发给 FreeBSD 实现,不产生移动数据流量。

已获取 root 权限的 Android 设备,还可通过数据线共享手机的 VPN 连接给 FreeBSD 设备。相关软件可参考 VPN 热点,使用方法可参考 通过创建 Wifi 热点来共享 V2ray 代理。
6.4.2 加载内核模块
首先需加载相应内核模块,使系统能识别 USB 网络共享设备(若默认未加载)。
6.4.2.1 通用 Android 设备驱动
一般 Android 设备使用远程网络驱动接口规范(Remote Network Driver Interface Specification,RNDIS)协议,需加载以下内核模块:
# kldload if_urndis该命令加载 USB RNDIS 网络驱动,使系统能够识别使用 RNDIS 协议的 Android 设备。
6.4.2.2 Apple 设备驱动
Apple iPhone/iPad 设备需加载以下内核模块:
# kldload if_ipheth该命令加载 iPhone/iPad 以太网网络驱动,使系统能够识别 iOS 设备的 USB 网络共享功能。加载成功后,系统通常会创建类似 ue0 的网络接口。
6.4.2.3 其他 Android 设备驱动
Android 设备使用通信设备类以太网控制模型/网络控制模型(Communication Device Class Ethernet Control Model/Network Control Model,CDC ECM/NCM)协议,需加载以下内核模块:
# kldload if_cdce该命令加载 USB CDC ECM/Ethernet 网络驱动,使系统能够识别使用 CDC ECM/NCM 协议的 Android 设备。加载成功后,系统通常会创建类似 ue0 的网络接口。
6.4.3 持久化驱动加载机制
如果需要系统启动时自动加载上述模块,可根据设备类型选择相应条目写入 /boot/loader.conf 文件:
if_urndis_load="YES" # 设置系统启动时自动加载 USB RNDIS 网络驱动
if_cdce_load="YES" # 设置系统启动时自动加载 USB CDC ECM/Ethernet 网络驱动
if_ipheth_load="YES" # 设置系统启动时自动加载 iPhone/iPad 以太网驱动编辑完成后,保存文件并重启系统使更改生效。
6.4.4 物理连接与网络共享启用
加载所需内核模块后,将 USB 数据线连接到 FreeBSD 系统与移动设备之间,然后在移动设备上开启 USB 网络共享功能。具体开启方式因设备品牌和系统版本而异,通常可在移动设备的“设置”、“网络”或“个人热点”菜单中找到相关选项。需注意,某些设备可能需要先启用 USB 调试(对于 Android 设备)或信任此计算机(对于 iOS 设备)才能正常工作。
6.4.5 获取 IP 地址
移动设备开启 USB 网络共享后,FreeBSD 系统会自动创建相应的网络接口,通常接口名称为 ue0,可通过 ifconfig 命令确认实际接口名称。确认接口名称后,通过 DHCP 为该接口获取 IP 地址:
# dhclient ue0该命令为 ue0 接口发送 DHCP 请求,从移动设备获取 IP 地址、子网掩码、默认网关和 DNS 服务器等网络配置参数。获取成功后,可使用 ifconfig ue0 命令查看分配的 IP 地址。
6.4.6 参考文献
- FreeBSD Project. if_urndis -- USB Remote NDIS Ethernet device[EB/OL]. [2026-04-14]. https://man.freebsd.org/cgi/man.cgi?query=if_urndis&sektion=4. USB RNDIS 网络设备驱动手册页,用于 Android USB 网络共享。
- FreeBSD Project. if_cdce -- Communication Device Class Ethernet device[EB/OL]. [2026-04-14]. https://man.freebsd.org/cgi/man.cgi?query=if_cdce&sektion=4. USB CDC Ethernet 设备驱动手册页。
- FreeBSD Project. if_ipheth -- Apple iPhone USB Ethernet device[EB/OL]. [2026-04-14]. https://man.freebsd.org/cgi/man.cgi?query=if_ipheth&sektion=4. iPhone USB 网络共享驱动手册页。
- FreeBSD Project. dhclient -- Dynamic Host Configuration Protocol client[EB/OL]. [2026-04-14]. https://man.freebsd.org/cgi/man.cgi?query=dhclient&sektion=8. DHCP 客户端手册页,描述自动获取 IP 地址配置。
- FreeBSD Project. ifconfig -- configure network interface parameters[EB/OL]. [2026-04-14]. https://man.freebsd.org/cgi/man.cgi?query=ifconfig&sektion=8. 网络接口配置工具手册页。
- FreeBSD Project. loader.conf -- kernel and module configuration[EB/OL]. [2026-04-14]. https://man.freebsd.org/cgi/man.cgi?query=loader.conf&sektion=5. 内核模块加载配置文件格式手册页。
- FreeBSD Project. FreeBSD Handbook, Chapter 32: Advanced Networking[EB/OL]. [2026-04-14]. https://www.freebsd.org/doc/en/books/handbook/advanced-networking/. FreeBSD 手册中关于高级网络配置的指南。