0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

VirtualboxのNATネットワークをVagrantから設定する

Posted at

設定内容

忙しい人向けに最初にやったことを書きます。諸々は後ほど。
Vagranfileでmodifyvmを使って設定します。

Vagrantfile
Vagrant.configure("2") do |config|
 (中略)
  config.vm.provider :virtualbox do |vb|
    vb.customize ["modifyvm", :id, "--nic1", "natnetwork"]
    vb.customize ["modifyvm", :id, "--nat-network1", "NatNetwork"]
  end
 (中略)
end

Virtualboxのnic1の設定にNAT ネットワークを指定して、
そのNATネットワークはNatNetworkを使用する設定になります。

はじめに

Virtualboxに対してVagrantを使って検証用の仮想サーバを色々立てたりしてると、
複数サーバ間の通信をやりたくなったり諸々の理由でNATネットワークを指定したくなりました。
Vagrantfileの書き方を調べてみるも、NATに関する記述はあっても、NATネットワークになると途端に見つからず…
調べては挫折し、挫折しては挫折しを繰り返していました。
今回再度何の気なしに調べてみたらすんなり解決できてしまい、ちょっと嬉しかったので久々に投稿します。

環境は下記です。

Virtualbox

c:\> VBoxManage.exe --version
6.1.16r140961

Vagrant

c:\> vagrant -v
Vagrant 2.2.14

Windows

SnapCrab_NoName_2021-2-2_20-5-27_No-00.png

設定内容(再掲)と解説

Vagrantfile
Vagrant.configure("2") do |config|
 (中略)
  config.vm.provider :virtualbox do |vb|
    vb.customize ["modifyvm", :id, "--nic1", "natnetwork"]
    vb.customize ["modifyvm", :id, "--nat-network1", "NatNetwork"]
  end
 (中略)
end

肝は、

    vb.customize ["modifyvm", :id, "--nic1", "natnetwork"]
    vb.customize ["modifyvm", :id, "--nat-network1", "NatNetwork"]

です。
項目ごとに説明すると下記のような感じです。

  • vb.customizeはVBoxManage.exeを呼び出します
  • modifyvmはVBoxManage.exeのオプションでVMイメージの設定を変更します(そのまま)
  • :idはイメージIDを指定するのですが、ここはVagrantがよしなにやってくれます
  • --nic1は1つ目のNICの設定をするという意味です
    • 後ろの数字は1-4まで設定でき(ると思い)ます
    • 調べていませんがGUIでは4つまでなのできっと他の数字を指定するとエラーになるのかなと…
  • natnetworkはNATネットワークを指定します(そのまま)
    • ちなみに設定項目としてはnone|null|nat|natnetwork|bridged|intnet|hostonly|genericだけあります
    • GUIの設定項目と同じですね
  • --nat-network1はNIC1に対して設定したNATネットワークのオプションでどのNATネットワークにするかを指定します
  • NatNetworkは、事前に設定したNATネットワークを指定します
    • GUIで言うファイル->環境設定->ネットワークで表示されるNATネットワーク名です

さいごに

結局のところ公式サイトに書いてありました。
日本語にこだわって探すと良くないですね。再認識しました。
それにしても日本語で書かれていなかったのはもしかして…

  • 外に繋ぐならNAT + 内部ネットワークで良いから…?
  • あまりNATネットワークって良くなかったりとかある…?

みたいなのがあるのでしょうか。
個人的にはポート周りがひと目で分かって良いので多用していますが…

参考にしたもの

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?