我目前正在开展一个项目,该项目涉及在三台独立机器上运行的三个独立模块(目前在 3 个不同的 VM 中完成),所有模块都必须相互通信。我遇到的一个烦恼是,当我将 VM 转移到不同的计算机或不同的网络时,VM 获得的 IP 地址与每个模块中硬编码的 IP 地址不同。
我觉得必须有一种更简单、更便携的方法来做到这一点。是否可以在 10.0.0.x 子网中为每个 VM 分配一个别名 IP,并通过该地址而不是它们的实际 192.168.1.x 地址来引用它们?每个 VM 和主机都运行 Ubuntu 9.04 64 位。
提前致谢,戴夫麦克莱兰
编辑:复制我的 /etc/network/interfaces 文件而不是在下面评论它——它被破坏了
auto eth0
iface eth0 inet dhcp
iface eth0:0 inet static
address 192.168.14.21
network 192.168.14.0
netmask 255.255.255.0
broadcast 192.168.14.255
gateway 192.168.14.1
Run Code Online (Sandbox Code Playgroud)
编辑 /etc/network/interfaces:
iface eth0 inet static
address 192.168.0.10
network 192.168.0.0
netmask 255.255.255.0
broadcast 192.168.0.255
gateway 192.168.0.1
Run Code Online (Sandbox Code Playgroud)
更改以适合您的首选网络子网/设置。
要在 DHCP 的 eth0 上创建别名:
# The primary network interface
auto eth0
iface eth0 inet dhcp
iface eth0:0 inet static
address 192.168.0.10
network 192.168.0.0
netmask 255.255.255.0
broadcast 192.168.0.255
gateway 192.168.0.1
Run Code Online (Sandbox Code Playgroud)
调出界面:
$ sudo ifup eth0:0
$ ifconfig eth0:0
eth0:0 Link encap:Ethernet HWaddr 00:0c:29:b0:fe:76
inet addr:192.168.0.10 Bcast:192.168.0.255 Mask:255.255.255.0
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
Interrupt:19 Base address:0x2000
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
7402 次 |
| 最近记录: |