目 录CONTENT

文章目录

virtualbox设置桥接网络

筱晶哥哥
2023-08-19 / 0 评论 / 0 点赞 / 16 阅读 / 3291 字 / 正在检测是否收录...
温馨提示:
本文最后更新于 2024-03-23,若内容或图片失效,请留言反馈。部分素材来自网络,若不小心影响到您的利益,请联系我们删除。

使用 vagrant + virtualbox 搭建的虚拟机需要桥接网络供其他机器连接。

目前我使用的虚拟机是使用 vagrant + virtualbox 搭建的。

vagrant创建虚拟机会默认创建192.168.56.x网段的适配网络,也就是虚拟机的ip得设置在192.168.56.x这个网段。

这是我用vagrant的Vagrantfile。

Vagrant.configure("2") do |config|
    config.vm.box_url = "https://mirrors.ustc.edu.cn/centos-cloud/centos/7/vagrant/x86_64/images/CentOS-7.box"

	# 设置虚拟机的Box
	config.vm.box = "centos/7"

	# 设置虚拟机的主机名
	config.vm.hostname="centos7"

	# 设置虚拟机的IP,每次创建的时候,注意ip不能相同,都在192.168.56.x段
	config.vm.network "private_network", ip: "192.168.56.101"

	# 设置主机与虚拟机的共享目录
	# config.vm.synced_folder "~/Documents/vagrant/share", "/home/vagrant/share"

	# VirtaulBox相关配置
	config.vm.provider "virtualbox" do |v|
		# 设置虚拟机的名称,这个会在VirtualBox中显示的
		v.name = "centos7"
		# 设置虚拟机的内存大小
		v.memory = 4096
		# 设置虚拟机的CPU个数
		v.cpus = 4
	end
end

vagrant up 启动后,会默认创建两个网卡,一个是网络地址转换(NAT),另一个是仅主机网络,在virtualbox中可以看到,右键虚拟机->设置->网络

比如说现在我的电脑主机的ip是192.168.2.x,虚拟机的网络是192.168.56.101。

此时主机和虚拟机之间是可以直接互连的,比如我在虚拟机中搭建mysql,redis等,本地主机都是可以直接连上的,只需要虚拟机暴露端口和关闭防火墙就行了。

但是如果此时,局域网中有其他机器也在192.168.2.x网段,就连不上192.168.56.x的机器了,因为他们不在一个网段。

这时需要设置桥接网络,需要设置虚拟机也在192.168.2.x网段内。

以下是设置步骤:

正常搭建的ip地址为192.168.56.101的虚拟机,可以先用xshell连接,然后修改网络配置文件:

# 我这里的文件是ifcfg-eth1,根据自己的来,可能名字不同
vi /etc/sysconfig/network-scripts/ifcfg-eth1

修改ip地址,添加网关地址,dns等。

# VAGRANT-BEGIN
# The contents below are automatically generated by Vagrant. Do not modify.
NM_CONTROLLED=yes
BOOTPROTO=none
ONBOOT=yes
IPADDR=192.168.2.101
NETMASK=255.255.255.0
GATEWAY=192.168.2.1
DNS1=192.168.2.1
DEVICE=eth1
PEERDNS=no
#VAGRANT-END

重启网络服务

systemctl restart network.service

在virtualbox中添加网络

右键虚拟机->设置->网络,设置网卡1配置为桥接,网卡2的适配网络为上面添加的网络

到电脑网络设置那里,网络适配器配置那,设置下192.168.2.x网络的网关为192.168.2.1。

设置好后,重启虚拟机,使用xshell连接192.168.2.101,看是否连接成功。

0

评论区