virtualbox网络配置实现PC、虚拟机、开发板互ping
参考链接:https://www.cnblogs.com/fuzidage/p/13718610.html
一.设置virtualbox网卡
1.1 关闭虚拟机
1.2 设置添加网卡
进入设置-网络
1.2.1 添加网卡1(NAT网络)
这个网络是主机通过网络地址转换到虚拟机,比如主机用无线网卡WLAN上网,用NAT转换比较合适,这样虚拟机也可以访问外网。
1.2.2 添加网卡2(host only网络)
这个网络是主机通过无线网卡WLAN上外网,但是虚拟机想通过有线网卡和主机、甚至与开发板互相ping通,传输文件。
二,配置windows和虚拟机
2.1 配置window以太网卡
刚添加了虚拟机虚拟virtual host only网卡, 那么我们反正用的WLAN上的外网,为了方便,设置windows下的以太网卡网段和virtual host only网卡保持一致。
host only设置为192.168.56.110.
2.2 配置虚拟机网络
一般默认情况下,虚拟机是通过NAT共享网络给虚拟机用的,那么此时虚拟机也是可以上网的,只是不能和外界开发板进行互相ping, 同时windows主机也不能ping虚拟机。 如下图:
图中可以看到两块网卡,eth0是Ubuntu默认的网卡(NAT),eth1是新增的网卡(host only),如果没有地址手工指定一下。sudo vim /etc/network/interfaces将文件内容修改为如下所示:
再来看下网卡ip信息:
三,测试上网状态
从测试结果上可以看到虚拟机上外网和ping windows主机都是ok的。
10.0.2.15时无线网卡的ip,
192.168.56.100是以太网卡的ip,
192.168.56.101是host only网卡的ip。
同理用Windows ping虚拟机也是ok的。
用开发板ping主机和虚拟机发现,只能ping通windows主机,无法ping通虚拟机,如下图。这是为什么呢?
这是由于我们windows主机和开发板用的网线直连,两个以太网卡在同一网段下,当然能够ping通。但是虚拟机和windows主机用的确是host only网卡(NAT方式用来上外网),这样只能保证虚拟机和Windows主机是互通的,但是却无法被开发板访问,我们的开发板是没有无线网卡的,所以不能用WLAN,因此我们要想让开发板访问到虚拟机还得经过windows的以太网卡。
那么我们虚拟机和windows主机是host only方式,所以我们无法用到以太网卡进行虚拟机和windows主机的交互。所以我们可以采取将host only网卡桥接到以太网卡,进入 网络-更改适配器-同时选中host only网卡和以太网卡,点击右键-选择桥接,如下图所示:
这样我们的虚拟机的host only网卡就可以透过以太网卡和开发板交互了,效果如下:
开发板能够ping windows主机和虚拟机。
四,结果
4.1 windows ping 虚拟机
4.2 虚拟机 ping windows
4.3 开发板 ping windows和虚拟机
4.2 虚拟机 ping windows
[外链图片转存中…(img-Kgv2YkNH-1647857650103)]