1

Onderwerp: MACAddress

Hallo,

Ik ben momenteel met een project bezig (c++, gcc), waarbij ik het MAC van mijn apparaat wil weten. Ik kan deze op mijn 'Bash on Ubuntu on Windows 10'  en raspberry pi beiden achterhalen door de file "/sys/class/net/eth0/address" uit te lezen.
Graag wil ik weten of deze file op alle linux distro's ook op deze locatie te vinden is, zodat ik mijn source voor meerdere distro's kan gebruiken.

Zou iemand voor mij kunnen bevestigen of deze methode van de MAC uitlezen altijd mogelijk zou moeten zijn?


//linux stores it's MAC address on this file location
//(probably all distros) -> NOT CONFIRMED
std::ifstream macFile ("/sys/class/net/eth0/address");
if (macFile.is_open())
{
    getline (macFile,macAddress);
    macFile.close();
}


MVG,

Re: MACAddress

Ha Daansch,
Als je dit soort dingen doet, ben je vast bekend met Vagrant of KVM. Je kan van elke distro een image downloaden en eventueel via Ansible of een script deze gegevens naar boven toveren.

ACAB: All computers are broken. https://medium.com/message/everything-i … e5f33a24e1 "I've decided that you need gray hair and hemorrhoids to be a consultant.
The gray hair makes you look distinguished & the hemorrhoids make you look concerned."

Re: MACAddress

De layout van sys(fs) wordt bepaald door de kernel en niet door de Linux distributie. Het kan theoretisch voorkomen dat een distributie geen /sys mount, hoewel dat (misschien met uitzondering van embedded systemen) niet veel zal voorkomen.

Let wel op dat /sys op andere UNIXen (BSD, macOS) niet bestaat. Ook kun je er niet vanuit gaan dat de naam van de eerste ethernet interface eth0 is (zie één van de systemd draadjes hier).