C'est la commande que j'ai passée
cmd = { "/bin/sh", "-c", "ping " + ip + " -c 2 && arp -a" };
L'adresse mac obtenue, mais l'adresse mac n'est pas l'adresse client que je veux, mais l'adresse sur mon serveur de cluster. Existe-t-il un bon moyen d'obtenir l'adresse mac client via IP ?
En fait, si vous souhaitez obtenir l'adresse mac du client, il n'y a aucun moyen, car lorsque le datagramme passe par le routeur, l'adresse mac dans le message sera réécrite par le routeur, car l'adresse mac de l'expéditeur dans le la couche de liaison doit être enregistrée, le processus général est le suivant :
Vous pouvez également vous référer à cet article :
Réseau - L'adresse MAC et l'adresse IP changent ou restent inchangées pendant le processus de routage et de transfert des paquets de données