Vagrant で public_networkの 接続するbridged network名を指定する
Windows環境で 有効な bridge adapterが複数ある場合、
どのadapterに接続するのかを 予め Vagrantfileで指定しておく方法
自前調査の結果なので、もっと楽な方法あれば教えてくださいm(_ _)m
Bridged Networkへの接続
例えば接続する adapterが "Realtek PCIe GbE Family Controller" なら以下のようにVagrantのconfigに追記すれば良い
...
config.vm.network "public_network", bridge: "Realtek PCIe GbE Family Controller"
...
で、この adapterの文字列って何を指定すれば?
adapter名の取得
vboxmanage list bridgedifs
で一覧表示可能なので、そこのNameから持ってくる
C:\Users\user>vboxmanage list bridgedifs
Name: Realtek PCIe GbE Family Controller
GUID: ...
蛇足
最初、vboxmanage listでとれば良いという事に気が付かず色々調べてしまったので その残骸。
Bridgedネットワークで出てくるアダプタは netshを使ってインターフェースを一覧したときに
Admin Stateが有効 な状態の物が対象っぽい(VirtualBox関係は除く)
C:\Users\user>netsh interface show interface
Admin State State Type Interface Name
-------------------------------------------------------------------------
有効 接続 専用 イーサネット
有効 接続 専用 VirtualBox Host-Only Network
有効 接続 専用 Npcap Loopback Adapter
有効 切断 専用 Wi-Fi
ここで出てくる Interface Nameは変更可能な名前なので残念ながら違う。
GUIからはネットワーク接続のプロパティで「接続の方法:」というところに表示されている文字列?
Registryの中で以下のキー以下にNetwork Interfaceが列挙されているので その中では DriverDescじゃないかと。
HKLM\SYSTEM\CurrentControlSet\Control\Class\{4d36e972-e325-11ce-bfc1-08002be10318}
WMI使って NIC一覧のQueryを投げる方法がわりと楽で、そのNameを使えば良い
wmic nic where "(NetConnectionStatus > 0)" get Name,NetConnectionStatus
C:\Users\yasuo\work\centos>wmic nic where "(NetConnectionStatus > 0)" get Name,NetConnectionStatus
Name NetConnectionStatus
Realtek PCIe GbE Family Controller 2
Realtek 8821CE Wireless LAN 802.11ac PCI-E NIC 7
Bluetooth Device (Personal Area Network) 7
VirtualBox Host-Only Ethernet Adapter 2
Npcap Loopback Adapter 2
Author And Source
この問題について(Vagrant で public_networkの 接続するbridged network名を指定する), 我々は、より多くの情報をここで見つけました https://qiita.com/yasuoohno/items/734a44eecea57f6f4450著者帰属:元の著者の情報は、元の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 .