linux - 从通过WiFi连接到同一路由器的ESP32查找通过LAN连接到路由器的设备的IP地址

标签 linux ip ethernet esp32

我有一个通过 WiFi 连接到路由器的 ESP32。我有一个 Linux 系统,它通过 LAN 电缆连接到同一路由器。我希望能够从 ESP32 获取 Linux 系统的 IP 地址,以便我可以发送数据。

我不能给 Linux 一个静态 IP。我也无法使用 DD-WRT 或 Open-WRT 对路由器进行编程。我正在寻找可以读取路由器上的 iptables 并使用它的主机名解析 linux 机器的 IP 地址的东西。我还没有找到任何关于它的信息。我还有一个想法,即在 Linux 上添加一个小型 dns 服务器,它将其 IP 附加到 ESP 知道的已知主机名。它只会将数据发送到应该由 Linux 上的 dns 解析的主机名。但是,我不确定要查找什么以及路由器是否会将数据转发到本地网络上的 dns。

最佳答案

使用hostByName函数

const char* hostname = "thelinuxserver"
IPAddress resultIP;
WiFi.hostByName(hostname, resultIP);

关于linux - 从通过WiFi连接到同一路由器的ESP32查找通过LAN连接到路由器的设备的IP地址,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57412276/

相关文章:

linux - Linux 中的以太网 + 串口

linux - 如何将多个二进制文件通过管道传输到从标准输入读取的应用程序

正则表达式替换上下文中的字符串,但不替换上下文

PHP 唯一计算机 ID

java - 自动刷新Java中连接的IP地址列表

Android 设备与本地主机服务器的连接

linux - 在 Linux 中如何显示文件名为 3 个大写字符的所有文件?

适用于 Windows 的 Python 程序可执行文件

c - 以太网 Controller 中的硬件 Rx/Tx 队列是什么

linux - 可以在同一个 NIC 上使用 PPPoE 和单独的静态 IP 地址吗?