FastNetMon

Friday, 4 July 2014

Как парковать сети на VmWare ESXi в Hetzner.DE и FastVPS.ru?

Для того, чтобы клиент мог использовать подсети для разных виртуальных машин (а не только для одной) на VmWare ESXi нужно следующее:
  1. Машина с установленным VmWare ESXi
  2. Один дополнительный IP адрес с присвоенным к нему MAC адресом (запрашиваем MAC через интерфейс в клиентской робот панели
  3. Подсеть, смаршрутизированная на IP из пункта 2 (это делается через запрос по тикету) 
Сначала нужно создать на IP из пункта 2 виртуальную машину с Debian, при этом обязательно указываем для нее выданный Датацентром MAC адрес, без этого сеть не заработает.

Создание виртуального свитча


Скачиваем клиент VMware vSphere Client (работает только на Windows). Устанавливаем и подключаемся к серверу (от клиента необходим IP и root пароль). Идем на вкладку "Configuration", далее выбираем "Hardware", "Networking". Щелкаем Add Networking. Далее "Cennection type" выбираем "Virtual Machine". Next. Далее выбираем "Create Virtual Switch". Next. Network label "SubnetSwitch", VLAN ID не трогаем. Next. Finish.

Создаем виртуальную машину "subnet-router.ru", подключенную в стандартный свитч, с сетевой карточкой (бриджет сеть). Ставим на нее Дебиян любой битности.

Добавление второго интерфейса для машину роутера

Идем на вкладку "Virtual Machines", щелкаем правой кнопкой по машину-роутеры и выбираем "Edit settings". На вкладке Hardware уже будет одна сетевая карточка - Network Adapter 1, это внешний выходит в сеть ДЦ (и для него должен быть прописан выданный ДЦ MAC). Щелкаем "Add", выбираем "Ethernet Adapter", Next, Type: e1000, Network Label: SubetSwitch. Ставим галочку "Connect at power on". Next. Finish.Ok. После этого перезагружаем машину резетом из панели управления.

Входим на машину и поднимаем сеть

Активируем форвардинг пакетов:
echo "net.ipv4.ip_forward=1" >> /etc/sysctl.conf
sysctl -p
Второй интерфейс, от подсети появился как eth1:
ifconfig -a
eth0 Link encap:Ethernet HWaddr 00:50:56:15:24:49
          inet addr:46.4.18.186 Bcast:46.4.18.191 Mask:255.255.255.192
          inet6 addr: fe80::250:56ff:fe15:2449/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
          RX packets:1676 errors:0 dropped:0 overruns:0 frame:0
          TX packets:172 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:156685 (153.0 KiB) TX bytes:69378 (67.7 KiB)
eth1 Link encap:Ethernet HWaddr 00:0c:29:f7:a5:52
          BROADCAST MULTICAST MTU:1500 Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:0 (0.0 B) TX bytes:0 (0.0 B)
lo Link encap:Local Loopback
          inet addr:127.0.0.1 Mask:255.0.0.0
          inet6 addr: ::1/128 Scope:Host
          UP LOOPBACK RUNNING MTU:16436 Metric:1
          RX packets:8 errors:0 dropped:0 overruns:0 frame:0
          TX packets:8 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0
          RX bytes:560 (560.0 B) TX bytes:560 (560.0 B)
 
Конфигурируем eth1.
Берем последний useable ip, но не самый последний в роботе!
nano /etc/network/interfaces
auto eth1
iface eth1 inet static
    address 78.47.208.230
    netmask 255.255.255.248
Перезапускаем сеть:
/etc/init.d/networking restart
Создаем вируталку, указывая SubnetSwitch как сетевой интерфейс для нее.
  • Создать
  • Configuration - Custom
  • Next - Next - Next
  • На вкладке Network выбираем NIC1: "SubnetSwitch". Adapter: E1000, Connact on Power On: флажок стоит.
  • Ставим ОС и конфигурируем, как указано ниже. Автоматическая конфигурация работать не будет.
Конфигурируем сеть:
address [любой используемый адрес из подсети]
netmask 255.255.255.248
gateway 78.47.208.230
Вот пример конфига:
nano /etc/network/interfaces
auto eth0
iface eth0 inet static
    address 78.47.208.225
    netmask 255.255.255.248
    gateway 78.47.208.230
После того, как сеть будет настроена, должен пойти FORWARD траффик на роутере:
iptables -nvL
Chain INPUT (policy ACCEPT 2312 packets, 593K bytes)
 pkts bytes target prot opt in out source destination
Chain FORWARD (policy ACCEPT 173 packets, 34322 bytes)
 pkts bytes target prot opt in out source destination
Chain OUTPUT (policy ACCEPT 2175 packets, 350K bytes)
 pkts bytes target prot opt in out source destination
 Источник: http://wiki.hetzner.de/index.php/VMware_ESXi_english 

Обращаю внимание, что для других виртуализаций ман аналогичен!  

 

4 comments :

  1. При такой конфигурации теряется один из адресов подсети (уходить на router VM, на которой уже есть белый ip с адаптера eth0), не так ли?

    ReplyDelete
  2. Павел, привет!
    Может подскажете...
    Hetznet по запросу выдает IP (причем в документации написано не более 6). Для описанной конфигуарции нужно запросить IP, плюс дополнительную подсеть, причем из этой подсети один адрес уйдет на роутер. Получается в подсети может быть максимум 4 адреса, которые можно использовать для вирутальных машин? Или подсеть выдается из специальных диапазонов и не считается за дополнительные адреса? За сколько адресов в конце нужно доплачивать?
    А не пробовали по той же схеме использовать подсеть IP6?

    ReplyDelete
    Replies
    1. Да, всегда один айпи теряется. Айпи для роутинга обязательно платный, Хецнер его расценивает как обычный и биллит соотвествующе. Но можете попросить тикетом и объяснить ситуацию, что айпи использоваться не будет и нужен сугубо для роутинга, может пойдут навстречу, но маловероятно.

      Delete

Note: only a member of this blog may post a comment.