各位佬友们好,最近在折腾 华为 OrangePi AIpro 20T。为了避免外接显示器、键鼠和无线网络不稳定带来的折腾,我整理了一套“一根网线”开发方案:
通过 Windows 11 ICS 共享上网,让开发板借用宿主机网络;通过 静态 IP 固化,保证每次都能稳定 SSH 连接;最后使用 VS Code Remote - SSH 实现原生远程开发闭环。
本文目标:
- Win11 笔记本通过网线直连 OrangePi AIpro 20T;
- OrangePi 通过 Win11 共享网络访问互联网;
- OrangePi 固定为静态 IP,避免每次查地址;
- 使用 SSH 与 VS Code 远程开发;
- 关闭 Wi-Fi 干扰,尽量保持网络路径纯净稳定。
实测环境:
- 宿主机:Lenovo 82JQ
- 系统:Windows 11
- 开发板:Huawei OrangePi AIpro 20T
- 连接方式:网线直连
官方文档:Orange Pi AIpro 20T 官方技术文档
1. 宿主机 Win11 侧:开启 ICS 共享上网
1.1 物理连接
使用网线直连笔记本与 OrangePi AIpro 20T 的 2.5G 以太网口。
如果宿主机只有普通千兆网口也没问题,网卡会自动协商到可用速率。
这里需要先明确网络拓扑:
也就是说,Win11 上有两张网卡参与这件事:
注意:用于上网的 Wi-Fi 网卡和用于直连开发板的以太网网卡不是同一张。不要选反。
1.2 开启 Windows ICS 共享
- 按下
Win + R,输入:
然后回车,打开“网络连接”。
- 找到当前真正用于访问互联网的网卡。
一般是正在连接 Wi-Fi 的那张网卡,例如:
这张网卡的作用是:连接外部互联网。
- 找到用于直连 OrangePi 的有线网卡。
一般名字类似:
这张网卡的作用是:通过网线和 OrangePi 通信。
- 右键点击用于上网的 Wi-Fi 网卡,也就是通常叫
WLAN 的那张网卡,选择:
- 勾选:
- 如果出现“家庭网络连接”下拉框,请选择用于直连 OrangePi 的以太网网卡。
也就是说:
这一点非常关键。
不是在直连开发板的以太网网卡上开启共享,而是在“能上网的 Wi-Fi 网卡”上开启共享,然后把共享目标选择为“直连开发板的以太网网卡”。
- 点击确定。
此时 Windows 通常会自动把用于直连 OrangePi 的以太网网卡 IPv4 地址设置为:
- 检查方式:
右键以太网网卡:
确认它的 IPv4 地址是否为:
如果这里不是 192.168.137.1,后面 OrangePi 侧的网关配置也要相应调整。不过默认情况下,Windows ICS 一般会使用 192.168.137.1。
1.3 放行 ICMP,方便 Ping 网关
默认情况下,Windows 可能会拦截入站 Ping 请求,导致开发板无法通过 ping 192.168.137.1 验证网关是否连通。
以管理员权限打开 PowerShell,执行:
这个规则只允许本地子网内的设备 Ping 宿主机,比直接全局放开更稳妥一些。
2. 开发板 Linux 侧:静态 IP 固化
2.1 先确认网卡名与 Netplan 配置文件
在 OrangePi 上执行:
重点确认两件事:
- 有线网卡名是不是
eth0; /etc/netplan/ 下面实际的 YAML 文件叫什么。
不同镜像里,Netplan 文件名可能不一样,例如:
下面以 /etc/netplan/01-netcfg.yaml 和 eth0 为例。
如果你的文件名或网卡名不同,请替换为自己的实际结果。
2.2 备份原配置
修改网络配置前,建议先备份:
如果你的 Netplan 文件不是 01-netcfg.yaml,请把命令里的文件名替换为实际文件名。
2.3 编辑 Netplan 配置
执行:
写入或修改为:
注意:
- YAML 严禁使用 Tab;
- 缩进必须对齐;
eth0 必须换成你实际的有线网卡名; 192.168.137.10 是开发板固定 IP; 192.168.137.1 是 Win11 直连开发板的以太网网卡地址,也是 OrangePi 的默认网关; - 这里的网关不是 Wi-Fi 网卡地址,而是 Win11 上那张直连 OrangePi 的以太网网卡地址。
2.4 应用 Netplan 配置
建议先检查配置:
然后使用:
如果没有问题,再执行:
netplan try 的好处是:如果网络配置写错导致连接中断,它可以自动回滚。远程 SSH 修改网络配置时尤其推荐先用它。
3. 修复 hostname 与 hosts 不一致问题
我这里遇到了一个比较奇怪的问题:执行 sudo netplan try 时出现:
原因是 /etc/hostname 和 /etc/hosts 中的主机名不一致。
先查看当前 hostname:
假设输出是:
那么 /etc/hosts 里也要保持一致。
编辑:
修改为类似:
重点是这一行:
它必须和 /etc/hostname 一致。
我这里原本是:
但 /etc/hostname 里是:
所以导致了 unable to resolve host。
4. 关闭 Wi-Fi,避免默认路由冲突
为了避免开发板自动连接 Wi-Fi,导致默认路由被抢、网络路径混乱,建议关闭 Wi-Fi 射频,只通过网线访问网络。
执行:
查看状态:
如果后续需要重新打开 Wi-Fi,可以执行:
这一步不是必须的,但如果你和我一样希望开发环境尽量稳定、路径尽量干净,建议关掉。
尤其是开发板自带 Wi-Fi 速度一般时,网线直连会舒服很多。
5. 连通性检查
配置完成后,在 OrangePi 上依次执行:
判断方式如下:
5.1 能 Ping 通 Win11 网关
说明 OrangePi 到宿主机的直连网络正常。
这里的 192.168.137.1 指的是 Win11 上直连 OrangePi 的以太网网卡,不是 Wi-Fi 网卡。
如果这里不通,优先检查:
- 网线是否插好;
- Win11 以太网 IPv4 是否为
192.168.137.1; - OrangePi IP 是否为
192.168.137.10/24; - Windows 防火墙是否放行 ICMP;
- Netplan 里的网卡名是否写错;
- Windows ICS 是否把共享目标选成了直连 OrangePi 的以太网网卡。
5.2 能 Ping 通公网 IP
说明 Win11 ICS 转发正常,开发板已经可以借用宿主机网络访问互联网。
如果能 Ping 通 192.168.137.1,但不能 Ping 通 8.8.8.8,通常是 ICS 共享没有生效。
可以尝试:
- 关闭共享后重新开启;
- 确认共享来源是
WLAN,也就是用于上网的 Wi-Fi 网卡; - 确认共享目标是直连 OrangePi 的以太网网卡;
- 检查 Win11 自己是否能正常上网。
重点再强调一次:
5.3 能 Ping 通域名
说明 DNS 正常。
如果能 Ping 通 8.8.8.8,但不能 Ping 通域名,大概率是 DNS 配置问题。
可以检查 Netplan 中的:
也可以执行:
查看当前 DNS 是否生效。
修改后重新应用:
6. SSH 远程连接
华为官方镜像默认用户一般是:
首次登录后,建议立即修改默认密码:
如果后续长期使用,建议配置 SSH Key 登录,并视情况关闭密码登录。
6.1 测试 SSH
在 Win11 PowerShell 中执行:
第一次连接时会提示是否信任主机指纹,输入:
然后输入密码即可登录。
如果出现类似:
通常是之前连接过同一个 IP,但设备指纹变了。可以在 Win11 PowerShell 中执行:
然后重新连接:
再次输入 yes 接受新的主机指纹即可。
6.2 配置 SSH Config
为了后续 VS Code 连接更方便,可以在 Windows 上编辑 SSH 配置文件:
添加:
之后就可以直接执行:
这样 VS Code Remote - SSH 里显示的也是 orangepi-aipro,比一串 IP 更清晰。
7. VS Code Remote - SSH 远程开发
7.1 安装插件
在 VS Code 插件市场安装:
安装完成后,按下:
搜索:
选择:
等待 VS Code 自动连接并初始化远程环境。
7.2 远程开发体验
连接成功后,你可以直接在 VS Code 中:
- 浏览开发板文件系统;
- 打开远程终端;
- 编辑代码;
- 安装远程插件;
- 运行 Python、C++、Shell 等程序;
- 调用板端 NPU 环境进行推理或测试。
也就是说,代码编辑、终端操作、文件管理都在宿主机 VS Code 中完成,但程序实际运行在 OrangePi AIpro 20T 上。
这种体验比外接显示器和键鼠舒服太多。
8. 高速文件传输
网线直连模式下,文件传输速度通常明显优于无线连接。
常用方式有三种。
8.1 VS Code 侧边栏拖拽
最简单。
连接 Remote - SSH 后,直接在 VS Code 文件树中拖拽文件即可。
适合传输:
8.2 使用 SCP
从 Win11 传文件到开发板:
从开发板拉文件到 Win11:
8.3 使用 SFTP
也可以使用支持 SFTP 的工具,例如:
- VS Code SFTP 插件;
- FileZilla;
- WinSCP。
如果要传大规模数据集,建议使用 SCP、SFTP 或 rsync 一类工具,比手动拖拽更可控。
9. 常见问题排查
9.1 SSH 连不上
先在 Win11 上 Ping 开发板:
如果 Ping 不通:
- 检查 OrangePi 静态 IP 是否配置成功;
- 检查 Win11 以太网 IP 是否为
192.168.137.1; - 检查是否插错网口;
- 检查网线;
- 检查 Netplan 里的网卡名是否正确;
- 检查 Windows ICS 的共享目标是否选成了直连 OrangePi 的以太网网卡。
如果 Ping 通但 SSH 不通,在开发板上检查 SSH 服务:
如果没有启动:
9.2 开发板能 Ping 网关,但不能上网
现象:
能通。
但是:
不通。
这种情况一般是 Win11 ICS 没有正确生效。
建议:
- 关闭 WLAN 的共享;
- 重新开启 WLAN 的共享;
- 确认共享来源是用于上网的 Wi-Fi 网卡;
- 确认共享目标是直连 OrangePi 的以太网网卡;
- 检查 Win11 自己是否能正常访问互联网。
正确关系应该是:
9.3 能 Ping IP,但不能 Ping 域名
现象:
能通。
但是:
不通。
这通常是 DNS 问题。
检查:
或者重新确认 Netplan 中的 DNS:
修改后重新应用:
9.4 Windows ICS 把 IP 改乱了
有时 Windows ICS 会比较“有自己的想法”。
如果发现直连 OrangePi 的以太网网卡 IP 不是:
可以尝试:
- 关闭 WLAN 共享;
- 手动删除以太网 IPv4 静态配置;
- 重新开启 WLAN 共享;
- 在共享目标中重新选择直连 OrangePi 的以太网网卡;
- 再次检查以太网 IPv4 地址。
一般重新开关一次共享就能恢复。
10. 系列总结
通过这套配置,OrangePi AIpro 20T 可以在不依赖 Wi-Fi、不外接显示器键鼠的情况下,稳定接入宿主机网络,并通过固定 IP 进行 SSH 与 VS Code 远程开发。
最终效果:
- 网线即网络:开发板通过 Win11 ICS 借用宿主机网络上网;
- 固定 IP:OrangePi 固定为
192.168.137.10,不再反复查地址; - 链路纯净:关闭 Wi-Fi,避免默认路由冲突;
- 远程开发:VS Code Remote - SSH 一站式完成代码编辑、终端操作和文件管理;
- 便于扩展:后续跑 Ascend NPU 推理、部署服务、同步数据集都会更顺滑。
这篇是我关于 OrangePi AIpro 20T 折腾记录的第一篇。
后续准备继续整理:
- 高性能仿真环境搭建;
- Ascend NPU 开发避坑;
- CANN / MindIE / Python 环境配置;
- 自动化部署与远程运维;
- 模型推理与板端服务化实践。
觉得有用的佬友可以点个赞,也欢迎在评论区交流折腾心得。
各位佬友们好,最近在折腾 华为 OrangePi AIpro 20T。为了避免外接显示器、键鼠和无线网络不稳定带来的折腾,我整理了一套“一根网线”开发方案:
通过 Windows 11 ICS 共享上网,让开发板借用宿主机网络;通过 静态 IP 固化,保证每次都能稳定 SSH 连接;最后使用 VS Code Remote - SSH 实现原生远程开发闭环。
本文目标:
实测环境:
官方文档:Orange Pi AIpro 20T 官方技术文档
1. 宿主机 Win11 侧:开启 ICS 共享上网
1.1 物理连接
使用网线直连笔记本与 OrangePi AIpro 20T 的 2.5G 以太网口。
如果宿主机只有普通千兆网口也没问题,网卡会自动协商到可用速率。
这里需要先明确网络拓扑:
也就是说,Win11 上有两张网卡参与这件事:
注意:用于上网的 Wi-Fi 网卡和用于直连开发板的以太网网卡不是同一张。不要选反。
1.2 开启 Windows ICS 共享
Win + R,输入:然后回车,打开“网络连接”。
一般是正在连接 Wi-Fi 的那张网卡,例如:
这张网卡的作用是:连接外部互联网。
一般名字类似:
这张网卡的作用是:通过网线和 OrangePi 通信。
WLAN的那张网卡,选择:也就是说:
这一点非常关键。
不是在直连开发板的以太网网卡上开启共享,而是在“能上网的 Wi-Fi 网卡”上开启共享,然后把共享目标选择为“直连开发板的以太网网卡”。
此时 Windows 通常会自动把用于直连 OrangePi 的以太网网卡 IPv4 地址设置为:
右键以太网网卡:
确认它的 IPv4 地址是否为:
如果这里不是
192.168.137.1,后面 OrangePi 侧的网关配置也要相应调整。不过默认情况下,Windows ICS 一般会使用192.168.137.1。1.3 放行 ICMP,方便 Ping 网关
默认情况下,Windows 可能会拦截入站 Ping 请求,导致开发板无法通过
ping 192.168.137.1验证网关是否连通。以管理员权限打开 PowerShell,执行:
这个规则只允许本地子网内的设备 Ping 宿主机,比直接全局放开更稳妥一些。
2. 开发板 Linux 侧:静态 IP 固化
2.1 先确认网卡名与 Netplan 配置文件
在 OrangePi 上执行:
重点确认两件事:
eth0;/etc/netplan/下面实际的 YAML 文件叫什么。不同镜像里,Netplan 文件名可能不一样,例如:
下面以
/etc/netplan/01-netcfg.yaml和eth0为例。如果你的文件名或网卡名不同,请替换为自己的实际结果。
2.2 备份原配置
修改网络配置前,建议先备份:
如果你的 Netplan 文件不是
01-netcfg.yaml,请把命令里的文件名替换为实际文件名。2.3 编辑 Netplan 配置
执行:
写入或修改为:
network: version: 2 renderer: NetworkManager ethernets: eth0: dhcp4: no dhcp6: no addresses: - 192.168.137.10/24 routes: - to: default via: 192.168.137.1 nameservers: addresses: - 8.8.8.8 - 114.114.114.114注意:
eth0必须换成你实际的有线网卡名;192.168.137.10是开发板固定 IP;192.168.137.1是 Win11 直连开发板的以太网网卡地址,也是 OrangePi 的默认网关;2.4 应用 Netplan 配置
建议先检查配置:
然后使用:
如果没有问题,再执行:
netplan try的好处是:如果网络配置写错导致连接中断,它可以自动回滚。远程 SSH 修改网络配置时尤其推荐先用它。3. 修复 hostname 与 hosts 不一致问题
我这里遇到了一个比较奇怪的问题:执行
sudo netplan try时出现:原因是
/etc/hostname和/etc/hosts中的主机名不一致。先查看当前 hostname:
假设输出是:
那么
/etc/hosts里也要保持一致。编辑:
修改为类似:
重点是这一行:
它必须和
/etc/hostname一致。我这里原本是:
但
/etc/hostname里是:所以导致了
unable to resolve host。4. 关闭 Wi-Fi,避免默认路由冲突
为了避免开发板自动连接 Wi-Fi,导致默认路由被抢、网络路径混乱,建议关闭 Wi-Fi 射频,只通过网线访问网络。
执行:
查看状态:
如果后续需要重新打开 Wi-Fi,可以执行:
这一步不是必须的,但如果你和我一样希望开发环境尽量稳定、路径尽量干净,建议关掉。
尤其是开发板自带 Wi-Fi 速度一般时,网线直连会舒服很多。
5. 连通性检查
配置完成后,在 OrangePi 上依次执行:
判断方式如下:
5.1 能 Ping 通 Win11 网关
说明 OrangePi 到宿主机的直连网络正常。
这里的
192.168.137.1指的是 Win11 上直连 OrangePi 的以太网网卡,不是 Wi-Fi 网卡。如果这里不通,优先检查:
192.168.137.1;192.168.137.10/24;5.2 能 Ping 通公网 IP
说明 Win11 ICS 转发正常,开发板已经可以借用宿主机网络访问互联网。
如果能 Ping 通
192.168.137.1,但不能 Ping 通8.8.8.8,通常是 ICS 共享没有生效。可以尝试:
WLAN,也就是用于上网的 Wi-Fi 网卡;重点再强调一次:
5.3 能 Ping 通域名
说明 DNS 正常。
如果能 Ping 通
8.8.8.8,但不能 Ping 通域名,大概率是 DNS 配置问题。可以检查 Netplan 中的:
nameservers: addresses: - 8.8.8.8 - 114.114.114.114也可以执行:
查看当前 DNS 是否生效。
修改后重新应用:
6. SSH 远程连接
华为官方镜像默认用户一般是:
首次登录后,建议立即修改默认密码:
如果后续长期使用,建议配置 SSH Key 登录,并视情况关闭密码登录。
6.1 测试 SSH
在 Win11 PowerShell 中执行:
第一次连接时会提示是否信任主机指纹,输入:
然后输入密码即可登录。
如果出现类似:
通常是之前连接过同一个 IP,但设备指纹变了。可以在 Win11 PowerShell 中执行:
然后重新连接:
再次输入
yes接受新的主机指纹即可。6.2 配置 SSH Config
为了后续 VS Code 连接更方便,可以在 Windows 上编辑 SSH 配置文件:
添加:
之后就可以直接执行:
这样 VS Code Remote - SSH 里显示的也是
orangepi-aipro,比一串 IP 更清晰。7. VS Code Remote - SSH 远程开发
7.1 安装插件
在 VS Code 插件市场安装:
安装完成后,按下:
搜索:
选择:
等待 VS Code 自动连接并初始化远程环境。
7.2 远程开发体验
连接成功后,你可以直接在 VS Code 中:
也就是说,代码编辑、终端操作、文件管理都在宿主机 VS Code 中完成,但程序实际运行在 OrangePi AIpro 20T 上。
这种体验比外接显示器和键鼠舒服太多。
8. 高速文件传输
网线直连模式下,文件传输速度通常明显优于无线连接。
常用方式有三种。
8.1 VS Code 侧边栏拖拽
最简单。
连接 Remote - SSH 后,直接在 VS Code 文件树中拖拽文件即可。
适合传输:
8.2 使用 SCP
从 Win11 传文件到开发板:
从开发板拉文件到 Win11:
8.3 使用 SFTP
也可以使用支持 SFTP 的工具,例如:
如果要传大规模数据集,建议使用 SCP、SFTP 或 rsync 一类工具,比手动拖拽更可控。
9. 常见问题排查
9.1 SSH 连不上
先在 Win11 上 Ping 开发板:
如果 Ping 不通:
192.168.137.1;如果 Ping 通但 SSH 不通,在开发板上检查 SSH 服务:
如果没有启动:
9.2 开发板能 Ping 网关,但不能上网
现象:
能通。
但是:
不通。
这种情况一般是 Win11 ICS 没有正确生效。
建议:
正确关系应该是:
9.3 能 Ping IP,但不能 Ping 域名
现象:
能通。
但是:
不通。
这通常是 DNS 问题。
检查:
或者重新确认 Netplan 中的 DNS:
nameservers: addresses: - 8.8.8.8 - 114.114.114.114修改后重新应用:
9.4 Windows ICS 把 IP 改乱了
有时 Windows ICS 会比较“有自己的想法”。
如果发现直连 OrangePi 的以太网网卡 IP 不是:
可以尝试:
一般重新开关一次共享就能恢复。
10. 系列总结
通过这套配置,OrangePi AIpro 20T 可以在不依赖 Wi-Fi、不外接显示器键鼠的情况下,稳定接入宿主机网络,并通过固定 IP 进行 SSH 与 VS Code 远程开发。
最终效果:
192.168.137.10,不再反复查地址;这篇是我关于 OrangePi AIpro 20T 折腾记录的第一篇。
后续准备继续整理:
觉得有用的佬友可以点个赞,也欢迎在评论区交流折腾心得。