Hyper-V ホスト構築時にかかる罠 〜 解決編

ソリューショングループのHiroです、こんにちは。

愛知県にもいよいよ4月20日から「まん延防止等重点措置」が実施されること決まりました。
東京都や大阪府では緊急事態宣言発出の再要請も検討しているとのことで、まだまだ新型コロナウイルスは先が見通せない状況。
一方で、ワクチンは9月末までに全対象者分を確保できる見通しとのことで明るい兆しも見え始めているようです。

とにかく、「緊急事態宣言」や「まん延防止等重点措置」に振り回されなくてもよい日が1日も早く来ることを期待するばかりです。

さて、今回は 前回 の続きで、Hyper-V ホスト構築時にかかった罠の解決編をお届けいたします。

前回の記事でも記載した状況を一つづつ整理して考えると・・・

Guest から社内の何台かのマシンにアクセスできない
→ アクセスできるマシンもある以上、IPアドレス設定による設定ミスは考えにくい

(同一筐体の)Guest と Host 間のアクセスはできる
→ 仮想スイッチの設定ミスは考えにくいが、一度作成しなおしても状況は変わらなかった

Host から別の Host 上で動作している Guest にアクセスできないものがある
→ 仮想スイッチを消してアクセスすれば普通に通信可能であり、ドライバレベルの問題ではなさそう

という状況まで判明し、もうお手上げ!!!
・・・と思っていたのですが、ここまできて思いついたのは・・・MACアドレス!!!

そう、ネットワーク通信はIPアドレスだけで管理されている訳ではなく、MACアドレスも重要。
とはいえ、まさか MAC アドレスはハードウェア毎に一意で、問題が発生することなど・・・
と思って調べてみたところ、まさにビンゴ!

Hyper-V のデフォルト設定では、

  • 最初の3つのオクテットは Microsoft の IEEE 組織的一意識別子である 00:15:5D
  • 次の2つのオクテットは サーバーの IP アドレスの最後の 2 つのオクテットから派生 (16進数表記)
  • 最後のオクテットは 0x0 ~ 0xFF の範囲から自動的に生成

とのことで、状況を調べてみると2台の Host が利用する MACアドレス が完全に一緒になっていました。

さらに調べてみると、

  • Hyper-V ではホストのIPアドレスを変更しても、Hyper-V ゲストに利用される MACアドレス は自動的に変わらない(まあ、勝手に変えられても困りますが・・・)
  • 数年前に社内の固定IPアドレスの整理をした時、Hyper-V Host のIPアドレスも変更しており、それまで使用していたIPアドレスを新 Host に設定してしまった

という状況で、特定のマシン間での通信不可という現象が生まれてしまったようです。

今回の教訓!!!

Hyper-Vを構築したホストのIPアドレスは基本的に変えないのが望ましい
もし変更せざるを得ない場合は、ゲストに付与されるMACアドレスに注意する