我有兴趣查找通过 USB 串行连接到我的计算机的设备(在本例中为 ESP8266)的 MAC 地址。有没有linux命令可以实现这个功能?我尝试过,有dmesg
或lsusb
没有运气。
我使用的是 Arch Linux,内核“5.2.6-arch1-1-ARCH”
答案1
连接到ESP8266的串口并运行以下命令:
AT+CIPSTAMAC?
您可以使用以下命令找到串行端口:
dmesg | grep tty
或者这个命令:
setserial -g /dev/ttyS[0123]
您可能会在以下位置找到连接到串行端口的良好程序列表:这一页。
答案2
您可以使用以下命令从连接的网络适配器获取 MAC 地址ifconfig
但是,我认为您无法对串行设备执行此操作,因为它不会显示为网络适配器设备。您需要通过串行发送适当的命令来获取特定于该特定设备的 MAC 地址。
您也许可以上传一个打印 MAC 地址的 Arduino 草图,这将通过串行显示地址。 ESP8266WiFi 库可以处理繁重的工作。
这是草图:
#include <ESP8266WiFi.h>
void setup(){
Serial.begin(115200);
delay(500);
Serial.println();
Serial.print("MAC: ");
Serial.println(WiFi.macAddress());
}
void loop(){}