我正在使用 Windows 7。我安装了虚拟机并创建了一个 ubuntu 16.04 vm。它的 IP 是 192.168.0.10
但我的所有克隆也都有相同的 IP。我尝试了不同的方法来更改 IP,但似乎都不起作用
我的文件内容/etc/network/interfaces
如下
auto lo
iface lo inet loopback
I added the following
auto eth0
iface eth0 inet static
address 192.168.0.5
netmask 255.255.255.0
network 192.168.0.0
broadcast 192.168.0.255
gateway 192.168.0.1
dns-nameservers 192.168.0.1
使用重启网络后sudo service network-manager restart
,没有任何变化,我的 IP 显示为 192.168.0.10
ip addr show-显示以下内容
$ ip addr show
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
valid_lft forever preferred_lft forever
inet6 ::1/128 scope host
valid_lft forever preferred_lft forever
2: enp0s3: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
link/ether 08:00:27:8c:7a:3c brd ff:ff:ff:ff:ff:ff
inet 192.168.225.194/24 brd 192.168.225.255 scope global dynamic enp0s3
valid_lft 42984sec preferred_lft 42984sec
inet6 fe80::aad4:1c86:ded3:1636/64 scope link
valid_lft forever preferred_lft forever
答案1
首先,你必须决定网络拓扑。你至少有以下选择
NAT:您的每台虚拟机都连接到单独的网卡(至少虚拟机认为是这样),并借助网络地址转换 (NAT) 使用主机的外部 IP 地址进入真实网络。虚拟机之间无法互相看到。
桥接适配器:您的物理主机适配器会为每个虚拟机获取一个额外的以太网 (MAC) 地址,并同时充当两个(或更多)独立适配器。这样,每个虚拟机都与主机并行连接到网络,并从主 DHCP 服务器获取 IP 地址。这样,机器会获得不同的 IP 地址(当然 MAC 地址必须不同)并且可以互相看到。
NAT 网络:最近在 VirtualBox 中引入了此功能(我认为是版本 5),但在我的例子中没有起作用。它应该是一种内部网络,虚拟机可以相互通信,但无法从实际网络访问。
内部网络:虚拟机可以互相看到但看不到主机,也看不到真实网络。
仅主机适配器:虚拟机可以互相看到对方(可能还可以看到主机),但看不到真实网络。主机应该能够与虚拟机进行通信。
接下来,确保虚拟机中的网卡具有不同的 MAC 地址。选择“桥接适配器”或“仅主机适配器”,并确保您的 DHCP 服务器同意为网络中的更多参与者提供服务。这对我来说确实有效。
不要忘记设置“电缆连接”选项。
对于“仅主机适配器”和“NAT 网络”,您应该首先在文件 -> 首选项 -> 网络下创建这些网络。
答案2
我最近遇到了这个问题,安全创建 VM 网络的方法是创建 NAT 网络并将其分配给 VM。使用 Mac OS X 和 VirtualBox(版本 5.2.24 r128163(Qt5.6.3)),可以NAT Network
通过以下方式创建:
- 按下
⌘,
打开首选项对话框 - 选择
Network
图标 - 选择“添加新的 NAT 网络”图标
然后对于每个虚拟机:
- 选择虚拟机
- 按下
⌘s
打开其设置对话框 - 选择
Network
图标 - 在
Attached To:
下拉菜单中选择NAT Network
您刚刚创建的那个应该会自动被选中。当您重新启动每个虚拟机时,它们应该都处于一个网络中,它们可以相互通信并与外部网络通信,但反之则不然。这桌子表达得非常好。