error: A NAT rule of this name already exists|bug fix
結論
Vagrantfileで以下の行をコメントアウトすると解消できます。
config.vm.network "private_network", ip: "192.168.33.10"
この行を有効にすることで192.168.33.10でvirtual boxの中のアプリにブラウザからもアクセスできるようになります。
(hostsファイルの編集も必要です。)
状況
久々にvagrant+virtualbox構成を触って上記設定を忘れていました。
当初前述の設定をせず立ち上げた際、立ち上げることはできました。
vagrant sshもでき中身のアプリもきちんと反映されていました。
ただifconfigした際にinet 10.0.2.15、inet 192.168.122.1などの
インターフェースしかでてこずブラウザから接続しようとしても
接続できない状況がありました。
そこでvagrant 10.0.2.1などのキーワードで検索してみたところ
ネットワーク設定をブリッジネットワークに設定するとプライベートネットワークが設定できるとでたので
virtualboxのguiから設定→ネットワーク→割り当てをブリッジネットワーク(自宅ルータを選択)
してみて立ち上げたところタイトルのエラーが出ました。
エラーメッセージ
以下詳細です。
There was an error while executing `VBoxManage`, a CLI used by Vagrant
for controlling VirtualBox. The command and stderr is shown below.
Command: ["modifyvm", "9d8553f3-2aa4-4b26-b2f8-3c428bc1ca1c", "--natpf1", "ssh,tcp,127.0.0.1,2222,,22"]
Stderr: VBoxManage.exe: error: A NAT rule of this name already exists
VBoxManage.exe: error: Details: code E_INVALIDARG (0x80070057), component NATEngineWrap, interface INATEngine, callee IUnknown
VBoxManage.exe: error: Context: "AddRedirect(Bstr(strName).raw(), proto, Bstr(strHostIp).raw(), RTStrToUInt16(strHostPort), Bstr(strGuestIp).raw(), RTStrToUInt16(strGuestPort))" at line 1927 of file VBoxManageModifyVM.cpp
翻訳かけるとNATという名前がかぶっているという内容で
コマンドも実行してみましたが自分の環境ではそもそも
VBoxManageコマンドがセッティングできておりませんでした。
config.vm.networkとは
config.vm.network "private_network", ip: "192.168.33.10"とは
何をしているんでしょう。
Vagrantfileにコメントで書いてくれていました。
マシンへのホストのみのアクセスを許可するプライベートネットワークを作成します
特定のIPを使用します。
ちなみに192.168.33.20などとすれば自分の好きにIPを設定することも可能です。
Author And Source
この問題について(error: A NAT rule of this name already exists|bug fix), 我々は、より多くの情報をここで見つけました https://qiita.com/isosa_yama/items/1f47c260830866c6a6df著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .