Virtual Boxの更新をしたら、、、
導入時に単発でdebファイルを落としてくる方法をつかっていた関係で、手元環境で使っているVirtualBoxが6.0系のままだったことに気が付きまして。
これはまずいと6.1に更新したのですが、、、ターミナルからのSSH受付用に仮想マシンに用意していたHost-only Adapter(10.0.0.0/24)が使えなくなりました。。
何が起こったの?
https://www.virtualbox.org/manual/ch06.html#network_hostonly
https://www.virtualbox.org/ticket/20626
https://www.virtualbox.org/ticket/20636
結論としては、最近のアップデートで、Host-only Adapterに指定して良いアドレスが、192.168.56.0/21に限定されたんだそうです。。
私の症状としては、アップデート後にホスト側でip addrを叩いてもvboxnet0がアドレスを取れていない、Virtual BoxでHost Only Adapterのアドレスをいじろうとすると”E_ACCESSDENIED (0x80070005)”というアラートだけ出る、というものでした。
結局上記を調べ、以下のファイルを追加したら再度10.0.0.0/24を使わせてもらえるようになりました。
# cat /etc/vbox/networks.conf
* 10.0.0.0/8 192.168.0.0/16 172.16.0.0/16
これ、頭に "*"をつけるのが正しい書式らしいです。
allowが"*" 、denyが"#"なんだそうで。
マニュアルに書いてあるのですが、最初 "*"は箇条書きか何かだと思って無視して記載していて、通らないな、、とハマってました。。
とりあえず
これだけの話ではあります。
別の迂回作として、物理IFに対して「ブリッジ」でつなぐ手もあるのですが、現状NATで使っているIFを置き換えるとGW周りのIP体系と干渉してしまうし、使ってない空きIFがあればそれ使う手もあったのですがあいにくなく、と。
dummy interfaceやbridgeインタフェースを作成してそれを使う方法も試行錯誤しましたが、結局まっとうに動く方法は組めませんでした。
Host-only Adapterは唯一無二の機能なんだなぁと再認識した今日この頃でした。