MACアドレスを取得する方法
パブリッククラウド開発の裏側
2020/07/29
(C) Copyright 1996-2020 SAKURA Internet Inc
さくらインターネット研究所 所長 鷲北 賢さくらインターネット株式会社
自己紹介
• 鷲北 賢(わしきた けん)
• 1998年4月入社
• バックボーンのお守りからサービス開発まで
─ 初期の専用サーバ、データセンター構築
─ オンラインゲームプロジェクト
─ さくらのクラウド開発マネージャー、などなど
• 2009年より、さくらインターネット研究所 所長
─ 仮想化技術の研究(Linux KVM)
─ 高性能リソースを分割するより小型計算機を集めて高性能化する
ほうに興味あり
• @ken_washikita、https://facebook.com/ken.washikita
2
2011年某月某日
• とあるIaaS(さくらのクラウド)を開発中
─コンパネどうしようとか
─ディスクの容量はどうしようとか
─検討している最中に
• MAC addressの割り当て方が議題に
─IP addressなどと同様に唯一無二性を
厳密に管理しなければならない
3
参考:MAC addressのベンダーコード(OUI)
• MAC addressは6オクテットからなる
─ たとえば 00:e0:4c:69:6c:2a
• 上位3オクテットがベンダーコード
─ どの組織に属するかを表す
─ どの組織・事業者が作ったのかを示す
─ 別名OUI(Organizationally Unique Identifier)
• 下位3オクテットが識別子
─ ベンダーが責任をもってユニークなコードを割り当て
る
─ 1つのベンダーコードで1677万個の製品が作れる
4
VMにどんなMAC addressを割り当てるべきか?
• てか、どんなOUIを使うべきか?
• さくらのクラウドはKVMを採用していた
─ qemu/KVMのdefaultが52:54:00だった
─ 当時の多くの文献には
「VMには52:54:00を割り当てよ」
と書いてあった
─ さくらのプロトタイプもそのように作っていた
• 本当にそれでよいのか?
5
検討してみた
• VMに仮想NICを作るということは……
─ 我々はNICベンダーになったも同然だ
─ となるとMAC addressの唯一無二性に責任を負うべき
─ となれば当然ベンダーコードを取得するべきだろう
─ ってことはIEEEに申請しなければならん
─ そうだ申請しよう!
• 物理NICメーカーでないのに申請できるんかいな?
6
やってみた
7
https://standards.ieee.org/products-services/regauth/oui/index.html
できました
• 2011年8月3日発行
• エンディアンを間
違えないよう
冗長かつ丁寧に説
明してくれている
8
ところで価格は…
• 2011年当時は
1750ドルでした
9
めでたしめでたし
• OUI取得のメリット
─唯一無二性に責任が持てる
─物理ネットワークや
他のクラウドとの間で
L2レベルの相互接続を行っても問題が生じない
ことを保証できる
10
あなたの
MAC addressの
OUIは?
11
おしまい
12

How to get Mac address (OUI)