Статический IP-псевдоним Ubuntu (независимый от DHCP/маршрутизатора)

Статический IP-псевдоним Ubuntu (независимый от DHCP/маршрутизатора)

В настоящее время я работаю над проектом, который включает три независимых модуля, работающих на трех отдельных машинах (в настоящее время это делается в 3 разных виртуальных машинах), которые все должны общаться друг с другом. Раздражение, с которым я сталкиваюсь, заключается в том, что когда я переношу виртуальные машины на другой компьютер или в другую сеть, виртуальные машины получают другие IP-адреса, чем те, которые были жестко закодированы в каждом модуле.

Я чувствую, что должен быть более простой и переносимый способ сделать это. Возможно ли назначить каждой виртуальной машине псевдоним IP, скажем, в подсети 10.0.0.x и ссылаться на них по этому адресу вместо их фактического адреса 192.168.1.x? Каждая виртуальная машина и хост работают под управлением Ubuntu 9.04 64-bit.

Спасибо заранее, Дэйв Макклелланд

Редактировать: Копирую файл /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

решение1

Отредактируйте /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

Измените в соответствии с предпочитаемой вами сетевой подсетью/настройками.

Чтобы создать псевдоним на 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

Откройте интерфейс:

$ 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 

решение2

Я столкнулся с тем же в Ubuntu. То, что вы редактируете файл интерфейса, чтобы жестко закодировать IP, не мешает DHCP-клиенту арендовать новый IP.

sudo /etc/init.d/dhcp stop

Как только вы увидите, что все работает, вы можете удалить DHCP-клиент навсегда, чтобы он больше не появлялся:

sudo apt-get remove dhcp3-client

Связанный контент