Для того, чтобы клиент мог использовать подсети для разных виртуальных машин (а не только для одной) на VmWare ESXi нужно следующее:
- Машина с установленным VmWare ESXi
- Один дополнительный IP адрес с присвоенным к нему MAC адресом (запрашиваем MAC через интерфейс в клиентской робот панели
- Подсеть, смаршрутизированная на 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
Обращаю внимание, что для других виртуализаций ман аналогичен!