2024/04/22
※以下は備忘録であり、内容の正確性は保証しません。
このページに記載されている情報をもとに、あなたに何らかの損害(金銭的・社会的)が発生しても当方は一切責任を取りませんのであしからず。
全てのイーサネットアダプターには固有のMACアドレスが割り当てられている、このアドレスは製造時に固定され基本的に利用者側で変更することはできない。
その特性を利用して、一部のプロバイダーや企業などではMACアドレスを接続端末(≒ユーザー)の識別・追跡に使用することもある。
身近な例ではDHCPによるIPアドレスの固定割り当てなどに使われるのがいい例だろうか。
(※逆にユーザーのプライバシー保護の為、接続ごとにMACアドレスをランダムな値に変化させる機能を有したOSもある)
MACアドレスフィルタリングが有効なネットワークにおいて、PC内蔵のNICが故障してしまったのでUSBNICを買ってきたがネットワークに参加できない。
→本稿の主目的
プロバイダーより貸与されたルーターの代わりに、市販のルーターを使用した場合にインターネット接続できない。
→一部メーカーのルーターには、WAN側のMACアドレスを変更する機能が備わっている。(B社など)
「基本的に利用者側で変更することはできない。」とはいうものの、時には変更したい場面はある、それがMACアドレス。
一部メーカーは、Windows上で動作するMACアドレス変更ユーティリティを配布しているのでそれが使用できる。(E社など)
最近のNICはデバイスマネージャーから任意の値に設定が可能。
この例はホストOSから一時的にオーバーライドする方法でなので別のPCでは設定値は反映されないし、管理者権限のないユーザーでは変更することはできない。
当然ゲーム機など、機能が提供されていないOSでは使用できない。
デバイスマネージャーから変更できる |
恒久的に書き換えるためにはハードウェアを改造する必要がある。
今回用意したUSBNICにはASIX製の「AX88772」が使用されていた。(安価なUSBNICは大体これ)
チップメーカーサイトよりプログラミングツールが入手できるそうだがユーザー登録が必要らしいので却下。
資料によるとMACアドレスは「96C56」タイプの外付けのEEPROMに書き込まれており、読み書きに使用するROMライターは「EZP2019+」が使用できた。
ROMライターを使ってEEPROMを直接書き換える | 使用したROMライター |
ROMライターを使用して内容を確認してみる、オンボードでは周辺回路の影響か読出し毎にデータが変化してしまうので、ICを基板から外す必要があった。
読みだしたデータは万一に備え保存しておく。
データ内にMACアドレスと一致する箇所があるので任意のアドレスに書き換える。
ROMの内容(反転部分が書き込んだMACアドレス) |
IPCONFIG /ALL の実行結果 |
書き込みが完了したら動作を確認して正常なら成功。上手くいかなかったら勉強代。