接下来,我们要进行网络配置,方便你的主机(windows)可以使用远程连接工具连接你的虚拟机。
在默认情况下,Virtualbox虚拟机选择的上网方式是:网络地址转换(NAT),这种方式虚拟机可以上外网,但是主机不能访问虚拟机,如果想要使用putty或者xshell连接虚拟机是办不到的。
下面介绍三种联网方式,即可以主机与虚拟机之间相互访问,虚拟机也可访问外网
注意,要进入虚拟机网络设置界面时,需要先关闭虚拟机,否则不能设置
1. 使用桥接(Bridged Adapter)模式。
这种模式是虚拟机上网的首选,你可以这样理解:它相当于虚拟机直接通过主机的网卡进行联网。虚拟机会分配到一个独立的IP,同一网段的IP都可以相互通信。
需要注意两点:
1) 在选中连接方式为桥接网卡时,下面的界面名称处要选择你当前上网的网卡,比如你用的无线上网,选择网卡一般都是 ****Wireless****
2) 如果你连接的网络不能动态分配IP,需要你自己去系统里配置IP
2. 使用HostOnly模式+网络共享的方式。
当我们选择HostOnly模式时,根据字面意思便知,只能主机访问虚拟机,虚拟机与虚拟机之间可以访问,因为属于同一网段。如果虚拟机需要联外网,可以使用网络共享的方式实现虚拟机上网。
1) 设置上网模式为HostOnly模式:
注意,如果界面名称处不能选择,我们需要手动添加一个网络管理器
再去虚拟机网络设置页面,当选择HostOnly模式时,界面名称将会出现我们刚创建的网络管理器
2)。在任务栏右下角的联网图标(wifi连接时)上点击右键,在弹出菜单中选择 打开“网络和Internet”设置
3) 设置网络共享,右键当前联网的适配器,在弹出的菜单中选择属性,打开属性配置框。
3) 设置共享的网络适配器。
4) 设置虚拟适配器,查看IP属性,比如这里是192.168.137.1,后面将根据它配置虚拟机的IP。
5) 配置虚拟机的IP
将虚拟机IP配置成上一步看到的IP段,比如ubuntu18.04 server版本,我们打开/etc/netplan/50-cloud-init.yaml,配置成如下形式
配置完成后运行 sudo netplan apply 使配置生效,
此时我们通过ping www.baidu.com, 发现网络已通
再用主机 ping 192.168.137.5 ,已通
如果你是ubuntu18之前的版本, 比如16.04,配置文件 /etc/network/interfaces
eth0 为网口,根据你自己的网口名进行更改。
iface eth0 inet static
address 192.168.137.5
netmask 255.255.255.0
network 192.168.137.0
gateway 192.168.137.1
dns-nameservers 114.114.114.114
修改完成后运行/etc/init.d/networking restart 重启网络,使配置生效
3. 使用双网卡,HostOnly模式+NAT转换。
1) 进入虚拟机网络设置界面,设置两个网络模式:
同理,如果界面名称不能选,参照第二种方法里第1)步添加网络管理器
2) 启动虚拟机,使用ifconfig查看ip, 如果发现除了lo外,只有一个网卡,这时可以运行ifconfig -a查看所有网卡
之所以ifconfig只能看到一个网口信息,是因为另一个网口没有打开
3) 配置HostOnly网口的地址
比如ubuntu18.04 server版本,我们打开/etc/netplan/50-cloud-init.yaml,配置成如下形式即可
配置完成后运行 sudo netplan apply 使配置生效,
此时我们通过ping www.baidu.com, 发现网络已通
使用ifconfig 查看到192.168.****的IP,用主机ping 该IP,已通
如果你是ubuntu18之前的版本, 比如16.04,配置文件 /etc/network/interfaces
eth0 为网口,根据你自己的网口名进行更改。
iface eth0 inet dhcp
iface eth1 inet dhcp
修改完成后运行/etc/init.d/networking restart 重启网络,使配置生效