在 CentOS 6.5 中无法将手动 IP 设置为 Virtualbox Host Only 适配器

在 CentOS 6.5 中无法将手动 IP 设置为 Virtualbox Host Only 适配器

当我配置 VirtualBox 4.3.2(在 Windows 8.1 上运行)主机专用适配器的 IP 地址时,它会将其更改回其他 IP。客户机操作系统是 CentOS 6.5。

我尝试在设备管理器的网络连接中设置 IP。但是我点击 TCP/IPv4 的属性后出现此错误:

为了配置 tcp/ip,您必须安装网络适配器。

我想将这些设置提供给仅主机适配器:

  • IP地址:10.20.0.2
  • 面具:255.255.255.0

DHCP 已禁用。

但它会自动更改为类似以下内容:

  • IP地址:169.254.134.67 // 每次更新时不会固定
  • 面具:255.255.0.0

以下是输出hostonlyifs

C:\Program Files\Oracle\VirtualBox>VBoxManage list hostonlyifs

Name:            VirtualBox Host-Only Ethernet Adapter
GUID:            ce2a5907-6034-4bb0-a45d-e30e90c17483
DHCP:            Enabled
IPAddress:       169.254.134.67
NetworkMask:     255.255.0.0
IPV6Address:     fe80:0000:0000:0000:08bf:284e:1182:8643
IPV6NetworkMaskPrefixLength: 64
HardwareAddress: 08:00:27:00:28:da
MediumType:      Ethernet
Status:          Up
VBoxNetworkName: HostInterfaceNetworking-VirtualBox Host-Only Ethernet Adapter

正如您上面看到的,尽管我没有启用 DHCP,但它显示 DHCP 已启用。

我尝试这样做:

VBoxManage hostonlyif ipconfig "VirtualBox Host-Only Ethernet Adapter" --ip 10.20.0.2 --netmask 255.255.255.0

仍然没有任何反应。

我已禁用 APIPA,现在 IP 已更改为0.0.0.0

答案1

不是 100% 确定您的设置是什么,但会解释通常 VirtualBox 中的“仅主机”适配器是除主网络接口之外的第二个网络接口。

例如,在我的 Mac OS X VirtualBox 设置中,在 VirtualBox 本身的“首选项…”下 — 在“网络”选项卡/面板下 — 我有一个名为的“仅主机”适配器vboxnet0。在“适配器”面板中设置如下:

在此处输入图片描述

请注意,我在“适配器”面板中设置了以下内容:

  • IPv4 地址: 192.168.56.1
  • IPv4 网络掩码: 255.255.255.0
  • IPv6 地址: [blank]
  • IPv6 网络掩码: 0

我还将“DHCP 服务器”设置为禁用。另请注意,对于此示例,此适配器的网络范围为192.168.56.x。如果您希望此适配器成为范围的一部分10.20.0.x,则将适配器的 IPv4 地址从 更改192.168.56.110.20.0.1

然后,在您想要进行此设置的虚拟机的实际“设置”中,单击“设置”。现在,主适配器“适配器 1”应设置为标准默认值,如下图所示:

在此处输入图片描述

但是在“适配器 2”下,您需要启用该适配器并将“连接到:”设置为“仅主机适配器”,然后设置“名称:”,vboxnet0如下图所示:

在此处输入图片描述

完成后,启动您的客户操作系统 - 我正在使用 Ubuntu,但这适用于大多数 Linux 客户操作系统,例如 CentOS - 然后输入以下内容以在第二个网络端口上手动启动您的新网络连接:

sudo ifconfig eth1 192.168.56.10 netmask 255.255.255.0 up

注意:我已选择192.168.56.10该接口的静态地址。您可以将其设置为 到 范围内的任何值192.168.56.2192.168.56.255我之所以选择该.10地址,是因为它很容易记住;至少对我来说是这样。如果您想将地址设置为10.20.0.2— 假设您的地址在该10.20.0.x范围内 — 那么只需更改192.168.56.10为 即可10.20.0.2

现在,这sudo ifconfig只是一个临时连接。如果你现在重新启动,该连接将会丢失。因此,如果你想将其设置为永久设置,则必须/etc/network/interfaces按如下方式进行编辑。首先,使用你最喜欢的文本编辑器打开该文件;我喜欢使用nano

sudo nano /etc/network/interfaces

该文件的内容如下所示:

# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).

# The loopback network interface
auto lo
iface lo inet loopback

# The primary network interface
auto eth0
iface eth0 inet dhcp

请注意 DHCP 的设置eth0;保持原样。要添加新的网络接口,您需要在文件底部添加类似以下内容:

# The local hostmachine access interface.
auto eth1
iface eth1 inet static
address 192.168.56.10
netmask 255.255.255.0

请注意如何eth1将设置为static并且具有addressnetmask设置。添加后,只需保存文件即可。现在,在重新启动时,您的机器将始终知道分配eth1,如果您想从主机操作系统访问该客户操作系统,您只需转到192.168.56.10。如果您想将地址设置为10.20.0.2— 假设您的地址在10.20.0.x范围内 — 那么只需更改192.168.56.1010.20.0.2

相关内容