Configure WI-FI_AP as network server for ESP32 CAM

Nvidia Jetson 配置Hotspot

2019年1月7日

16:52

近期在玩 Nvidia Jetson AGX Xavier ,给他配置了一个无线网卡,型号为 Intel , 支持蓝牙技术,安装好以后,系统自动识别,并加载驱动,操作系统层顺利看到 wlan0,在桌面环境下启用无线AP功能, 可以顺利启动, 但它自动启动后,缺省工作在10.42.0.0/24网段,并允许wifi客户端使用这个AP代理访问Internet(—>eth0)。

我的工作AP环境中有两个无线客户端,分别是 ESP32 CAM1 和 ESP32 CAM2 两个摄像头设备,而它的rtsp代码我是用github上复制下来的,用于Jetson的图像识别。为了让这两个客户端能使用这个Jetson的AP信号,我做了如下定制化,以脱离局域网环境,让他们自动工作在同一网络。

查询系统进程,发现这个AP是使用NetworkManager管理的,并启动了 dnsmasq 对客户端体哦那个服务,这个dnsmasq以前听说过但没有具体使用过, 所以我现在记录下来,做个文档,共享给大家。

目标规划: AP 工作在 192.168.193.0/24, AP IP=192.168.193.1, 并根据两个摄像头的MAC地址分配静态IP。
由于不涉及 DNS 解析, 所以就没有填写关于 DNS 配置的相关信息, 有兴趣的可以查询 dnsmasq 的配置文件.

1:修改AP网络IP

在 /etc/NetworkManager/system-connection 目录中, 可以看见你刚刚创建的 AP 名字的一个文件, 用vim编辑它,在其中的 [ipv4] 节里面增加一行, 格式如下:

address1=192.168.193.1/24,192.168.193.1

注意是 address1, 后面有一个数字1.

2: 修改 dnsmasq配置文件。

查看系统进程, 可以看到dnsmasq进程在命令行参数中指定了配置文件目录, 所以在这个目录中增加配置文件。

vim /etc/NetworkManager/dnsmasq-shared.d/spender # 这个文件名可以随便起。创建一个新的即可。增加如下内容:

cache-size=1500

#指定作用于的网络接口

interface=wlan0

#指定listen 的地址,可以多个

listen-address=127.0.0.1
listen-address=192.168.193.1

#配置dhcp 选项

动态分配的ip范围及更新时间

dhcp-range=192.168.193.1,192.168.193.100,255.255.255.0,2h

#客户端路由

dhcp-option=option:router,192.168.193.1

#客户端 dns

dhcp-option=option:dns-server,192.168.193.1,192.168.0.254

#静态分配两个客户端IP

dhcp-host=08:3a:f1:a1:51,192.168.193.11
dhcp-host=08:3a:f1:a1:54,192.168.193.12

修改完以后,保存即可。
使用 systemctl restart network-manager 或者干脆 reboot 生效。

这个论坛使用了 markdown格式, 为第一次投文档, 写的不是很规范, 见谅!

Hi spender1,

Welcome to Jetson & Embedded Systems forum, and thanks for your sharing to community, but it’s better to post with English manner then other developers can know your sharng.

Thanks

1 Like

The browser has a plug-in called Translator, which I also read English documents through, very hard, very slow, very expensive.