【ネットワーク】"なぜmacアドレスを変更することができるのか"

macアドレスを変更できる理由について調べました。

macアドレスは変更できるものなのか?

ブラウザのプライベートモードを使いGoogleで「macアドレスとは」と検索すると以下のページが一番上に出てきました。

大塚商会「MACアドレス」2022年6月17日取得

こちらのページによると

MACアドレスは各製品に固有の番号なので変更できないが、IPアドレスはシステム管理者などが状況に合わせて設定可能である。

とされています。

明確に覚えているわけではありませんが、たしか基本情報技術者試験のテキストでもmacアドレスは機器のROMに記録されており、変更できないという風な記述があったと記憶しています。

一方、こんな記事もあります。

Wi-Fi Column「進むMACアドレスのランダム化。影響や切り替え方法をご紹介」2022年6月17日取得

最近の多くのOSではmacアドレスのランダム化が簡単に行えるようなのです。

相反する記述があり、どういうことなのか気になったので調べました。

macアドレスの「一時的な」変更が可能

どういう仕組みでWindowsなどのOSがmacアドレスを変更しているのか気になりましたが、WindowsはOSのソースコードを公開していません。

であればオープンソースのOSであるLinuxの当該機能にあたるソースを見ることで、どういう理屈で変更できないはずのmacアドレスを変更しているか分かるのではないかと思いました。

どうやらLinuxには標準ではmacアドレス変更昨日はついておらず、パッケージを追加する必要があるようです。

最後に、MACアドレスを元のハードウェア値に戻すには、次のコマンドを実行します。
macchanger -p enp0s31f6
ただし、これを行う必要はありません。
システムを再起動すると、変更は自動的に失われ、実際のMACアドレスが再び復元されます。

WebSetNet「LinuxでMACアドレスを変更する方法」2022年6月17日取得

この挙動を考えると、macアドレスの変更と言っても通信に使用するmacアドレスを変更しているだけであり、NICのROMの値を変更しているわけではなさそうです。