网络#
在 Jetson Devkit 上,我们假设有两个可用的网络接口用于启用基于摄像头的系统。内置的 RJ-45 接口用于互联网连接,另一个接口(通过 USB 以太网适配器)用于通过连接的 PoE 交换机与摄像头设备通信(请参阅 AI-NVR 应用程序的硬件设置)。Jetson 有一个 systemd 服务 jetson-networking 来设置这两个接口。在 Jetson AGX Orin 上,RJ-45 接口名为 eno1,为了保持一致性,在 Orin Nx/Nano 上,JPS 也将 RJ-45 接口从 enP8p1s0 重命名为 eno1。安装 JPS 软件包后,您需要重启 Orin Nx/Nano,以便应用更改。在 Orin 系列上,USB 以太网接口应以可预测的方式命名,如 https://www.freedesktop.org/wiki/Software/systemd/PredictableNetworkInterfaceNames/ 中所述。在下面的示例中,可预测的网络接口名称为 enx00808e8f9137。
enx00808e8f9137: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 192.168.100.1 netmask 255.255.255.0 broadcast 192.168.100.255
inet6 fe80::2e0:4cff:fe36:8f1f prefixlen 64 scopeid 0x20<link>
ether 00:e0:4c:36:8f:1f txqueuelen 1000 (Ethernet)
RX packets 156532 bytes 9721380 (9.7 MB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 16287 bytes 707010 (707.0 KB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions
eno1: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 192.168.0.33 netmask 255.255.255.0 broadcast 192.168.0.255
inet6 fe80::4ab0:2dff:fe81:4ad8 prefixlen 64 scopeid 0x20<link>
ether 48:b0:2d:81:4a:d8 txqueuelen 1000 (Ethernet)
RX packets 332785 bytes 36237215 (36.2 MB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 157048 bytes 11475164 (11.4 MB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
在启用 jetson-networking 服务之前,您需要编辑 /opt/nvidia/jetson-configs/jetson-camif.conf,并将 eth1 替换为您系统上正确的摄像头接口名称,例如 enx00808e8f9137。
# Camerinterfaces
# List the camera interfaces as a Bash arrry, ex:
# CAMERA_INTERFACES=("PoE0" "PoE1" "PoE2")
CAMERA_INTERFACES=("eth1")
如果您使用的是基于 Jetson Orin 模块构建的第三方平台,则系统可能具有多个用于摄像头的以太网接口。请咨询平台供应商以获取摄像头接口名称。NVIDIA 建议平台供应商通过如下 udev 重命名摄像头接口,以便接口名称在重启后保持不变。
ACTION=="add", SUBSYSTEM=="net", KERNELS=="0005:03:00.0", NAME:="PoE0"
ACTION=="add", SUBSYSTEM=="net", KERNELS=="0005:04:00.0", NAME:="PoE1"
ACTION=="add", SUBSYSTEM=="net", KERNELS=="0005:05:00.0", NAME:="PoE2"
在这种情况下,jetson-camif.conf 将如下所示
CAMERA_INTERFACES=("PoE0" "PoE1" "PoE2")
使用以下命令启用 jetson-networking 服务
sudo systemctl enable jetson-networking
您需要重启设备,以便正确应用相关的网络管理器配置。
DHCP 服务器正在摄像头接口上运行,为摄像头设备提供 IP 地址。地址池从 192.168.100.150 开始。您可以使用命令 dhcp-lease-list --lease /run/jetson/networking/jetson-dhcp-server.leases
检查 IP 地址分配,如下所示
ubuntu@tegra-ubuntu:~$ dhcp-lease-list --lease /run/jetson/networking//jetson-dhcp-server.leases
To get manufacturer names please download http://standards.ieee.org/regauth/oui/oui.txt to /usr/local/etc/oui.txt
Reading leases from /run/jetson/networking//jetson-dhcp-server.leases
MAC IP hostname valid until manufacturer
===============================================================================================
00:00:1b:04:e5:13 192.168.100.151 -NA- 2023-11-27 05:49:46 -NA-
68:6d:bc:7d:7d:c7 192.168.100.150 DEFAULT 2023-11-27 05:45:29 -NA-
注意
在 Jetson AGX Orin 和 Orin Nx 上,建议使用 USB 以太网适配器作为摄像头接口。
注意
在启动 jetson-networking 服务之前,请确保摄像头接口的链路已启动,否则该服务可能无法设置 DHCP 服务器。