Virtualbox+Centos 7虚拟机设置host-only网卡的静态IP地址

时间:2024-03-19 10:18:55

对Virtualbox使用不是很熟悉,每次启动虚拟机都会被自动分配一个动态的IP地址(host-only),对我使用hadoop等很不方便,之前都是跳过了这个问题,今天花了半天时间终于解决了。

具体处理方法如下:

1. 启动Virtualbox,选着“管理”-->“全局设定”,在弹出的窗口中,选着“网络”,然后在右侧窗口中,选择“仅主机(Host-Only)网络”选项卡,如下图;

Virtualbox+Centos 7虚拟机设置host-only网卡的静态IP地址

如果没有VirtualBox Host-Only Ethernet Adapter,可以点击右侧“+”添加。

然后双击VirtualBox Host-Only Ethernet Adapter,会弹出下图:

Virtualbox+Centos 7虚拟机设置host-only网卡的静态IP地址

选择“DHCP服务器”,去掉“启用服务器”选中状态。


Virtualbox+Centos 7虚拟机设置host-only网卡的静态IP地址

2. 启动虚拟机

在终端输入ifconfig,会显示如下信息,其中enp0s3和enp0s8表示两个网卡:

[[email protected] ~]$ ifconfig
enp0s3: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 10.0.2.15  netmask 255.255.255.0  broadcast 10.0.2.255
        inet6 fe80::a00:27ff:fe4c:2f5b  prefixlen 64  scopeid 0x20<link>
        ether 08:00:27:4c:2f:5b  txqueuelen 1000  (Ethernet)
        RX packets 28  bytes 3361 (3.2 KiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 58  bytes 6795 (6.6 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0


enp0s8: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.168.56.103  netmask 255.255.255.0  broadcast 192.168.56.255
        inet6 fe80::a00:27ff:fe46:d7f8  prefixlen 64  scopeid 0x20<link>
        ether 08:00:27:46:d7:f8  txqueuelen 1000  (Ethernet)
        RX packets 24  bytes 6616 (6.4 KiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 81  bytes 9555 (9.3 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

cd /etc/sysconfig/network-scripts目录下,会看到存在ifcfg-enp0s3文件,复制一份并修改名称为ifcfg-enp0s8,接下来编辑ifcfg-enp0s8,最终的文件内容如下:

TYPE=Ethernet
HWADDR=08:00:27:46:d7:f8 ( 注意:这个表示虚拟网卡的地址)
BOOTPROTO=static                  (这里要修改成static)
DEFROUTE=yes
PEERDNS=yes
PEERROUTES=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_PEERDNS=yes
IPV6_PEERROUTES=yes
IPV6_FAILURE_FATAL=no
NAME=enp0s8
UUID=3d54f693-bbef-4c56-8984-e0495a7c21s2 (这个要和enp0s3的编码不一样)
DEVICE=enp0s8
ONBOOT=yes
IPADDR=192.168.56.103
NETMASK=255.255.255.0
GATEWAY=192.168.56.1

上述完成后,执行service network restart,一切OK啦!