小编给大家分享一下virtualbox中网络设置的示例分析,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!
环境
host os | macOS majave |
vm | oracle virtualbox |
vm os | ubuntu 16.04 |
网络原理
NAT(网络地址转换模式)
使用NAT模式,就是让虚拟系统借助NAT(网络地址转换)功能,通过宿主机器所在的网络来访问公网。也就是说,使用NAT模式可以实现在虚拟系统里访问互联网。这种NAT模式下的虚拟系统的TCP/IP配置信息是由VMnet8(NAT)虚拟网络的DHCP服务器提供的,系统的VM NAT Service服务就充当了路由器的作用。负责将虚拟机发到VMNet8的包进行地址转换后发到实际网络上,再将网络上的包进行地址转换后发还给VM。
实际场景:
vm和vm: 各自独立,不能相互访问
vm和host: 虚拟机可以访问宿主机,反之不行
vm可以直接访问internet, 但反之不行
Bridge Adapter(网桥模式)
虚拟机通过宿主机的物理网卡架设一个网桥,vm通过网桥进入到局域网,在局域网中拥有自己的独立IP,其所有网络功能都与真实网段中的物理机一样。它可以访问网内的任何一台机器,如果用自动的DHCP方式,则会自动分配IP地址和宿主机处于同一个网段。使用桥接模式的虚拟机和宿主机的关系,就像连在同一个hub上的两台电脑。
实际场景:
vm和vm: 可以相互访问,vm拥有独立IP, 且处于同一网段中
vm和host: 可以相互访问,vm拥有独立IP, 且处于同一网段中
vm无法访问internet
Host-only Adapter,仅主机模式
这种方式下,虚拟机的网卡连接到宿主的 VMnet1 上,但系统并不为虚拟机提供任何路由服务,因此虚拟机只能和宿主机进行通信,而不能连接到实际网络上。在某些特殊的网络调试环境中,要求将真实环境和虚拟环境隔离开,这时你就可采用host-only模式。在host-only模式中,所有的虚拟系统是可以相互通信的,但虚拟系统和真实的网络是被隔离开的。
提示:在host-only模式下,虚拟系统和宿主机器系统是可以相互通信的,相当于这两台机器通过双绞线互连。在host-only模式下,虚拟系统的TCP/IP配置信息(如IP地址、网关地址、DNS服务器等),都是由VMnet1(host-only)虚拟网络的DHCP服务器来动态分配的。如果你想利用VirtualBox创建一个与网内其他机器相隔离的虚拟系统,进行某些特殊的网络调试工作,可以选择host-only模式。
实际场景:
vm和vm: 可以相互访问,且处于同一网段中
vm和host: 默认不能相互访问,因为被虚拟机模拟出来的网卡和宿主机处于不同网段,但可以通过设置静态IP来实现互访
vm无法访问internet
NAT+Bridge
登录虚拟机使用ifconfig命令可以看到两张网卡的信息,用以实现局域网内的互联和Internet的访问。
可以指定enp0s8的静态IP。
ubuntu的指定方式为:
sudo vi /etc/network/interfaces
sudo service networking restart
看完了这篇文章,相信你对“virtualbox中网络设置的示例分析”有了一定的了解,如果想了解更多相关知识,欢迎关注天达云行业资讯频道,感谢各位的阅读!