С Новым годом! Форум программистов, компьютерный форум, киберфорум
Debian, Kali Linux, Raspbian, Astra Linux
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.75/4: Рейтинг темы: голосов - 4, средняя оценка - 4.75
1 / 1 / 0
Регистрация: 12.08.2011
Сообщений: 111
1

Объединить 2 виртуалки двух хостов в Хетзнер

29.12.2021, 20:32. Показов 793. Ответов 3
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Всем привет!
Имею 2 VDS на Хетзнере. На обеих стоят виртуальные машины (на promox). Виртуалки убунту 20.04. Два хоста соединены между собой через vswith. Между ними соединение имеется. Нужно через них соединить виртуалки. Если тупо на виртуалках создать vlan, то связь между машинами есть, но хетзнер ругается на левые Мак-адреса виртуалок, т.е. в сети должны быть только мак-адреса хостов. Соединение должно идти через хосты.
Настройки хостов:
1.
Код
source /etc/network/interfaces.d/*
auto lo
iface lo inet loopback
iface lo inet6 loopback
auto enp0s31f6
iface enp0s31f6 inet static  - внешка
  address 42.4.96.45
  netmask 255.255.255.224
  pointopoint 42.4.96.33
  gateway 42.4.96.33
  # route 42.4.96.32/27 via 42.4.96.33
#  up route add -net 42.4.96.32 netmask 255.255.255.224 gw 42.4.96.33 dev enp0s31f6



iface enp0s31f6.4000 inet manual - wswitch
auto vmbr4000
iface vmbr4000 inet manual
  bridge-ports enp0s31f6.4000
  bridge-stp off
  bridge-fd 0
  mtu 1400
  up ip addr add 192.168.100.3/24 dev vmbr4000
  echo "1 vswitch" >> /etc/iproute2/rt_tables
#  post-up echo 1 > /proc/sys/net/ipv4/ip_forward
#  post-up iptables -t nat -A POSTROUTING -s '192.168.100.0/24' -o enp0s31f6.4000 -j MASQUERADE
#  post-down iptables -t nat -D POSTROUTING -s '192.168.100.0/24' -o enp0s31f6.4000 -j MASQUERADE


iface enp0s31f6 inet6 static
        address 2a01:4f8:172:10de::2/64
        gateway fe80::1

auto vmbr1 - сеть виртуальной машины
iface vmbr1 inet static
        address 192.168.1.3/24
        bridge-ports none
        bridge-stp off
        bridge-fd 0
        post-up echo 1 > /proc/sys/net/ipv4/ip_forward

        post-up iptables -t nat -A POSTROUTING -s '192.168.1.0/24' -o enp0s31f6 -j MASQUERADE
        post-down iptables -t nat -D POSTROUTING -s '192.168.1.0/24' -o enp0s31f6 -j MASQUERADE
2 хост:

Код
auto lo
iface lo inet loopback
iface lo inet6 loopback

auto enp0s31f6
iface enp0s31f6 inet static
  address 136.201.55.223
  netmask 255.255.255.192
  pointopoint 136.201.55.193
  gateway 136.201.55.193
  # route 136.201.55.192/26 via 136.201.55.193
#  up route add -net 136.201.55.192 netmask 255.255.255.192 gw 136.201.55.193 dev enp0s31f6

iface enp0s31f6.4000 inet manual
auto vmbr4000
iface vmbr4000 inet manual
  bridge-ports enp0s31f6.4000
  bridge-stp off
  bridge-fd 0
  mtu 1400
  up ip addr add 192.168.100.2/24 dev vmbr4000
#  post-up iptables -t nat -A POSTROUTING -s '192.168.100.0/24' -o enp0s31f6 -j MASQUERADE
#  post-down iptables -t nat -D POSTROUTING -s '192.168.100.0/24' -o enp0s31f6 -j MASQUERADE

iface enp0s31f6 inet6 static
        address 2a01:4f8:172:10de::2/64
        gateway fe80::1

auto vmbr1
iface vmbr1 inet static
        address 192.168.1.2/24
        bridge-ports none
        bridge-stp off
        bridge-fd 0
#echo "1 vswitch" >> /etc/iproute2/rt_tables
        post-up echo 1 > /proc/sys/net/ipv4/ip_forward

        post-up iptables -t nat -A POSTROUTING -s '192.168.1.0/24' -o enp0s31f6 -j MASQUERADE
        post-down iptables -t nat -D POSTROUTING -s '192.168.1.0/24' -o enp0s31f6 -j MASQUERADE
Виртуалки имеют интернет через хост используя MASQUERADE - на сетевом интерфейсе не должно быть маков от виртуалок.

Адреса виртуалок примерно такие:

Код
network:
  ethernets:
    ens18:
      addresses:
      - 192.168.1.47/24
      gateway4: 192.168.1.3
      nameservers:
        addresses:
        - 8.8.8.8
        search: []
    ens19:
      addresses:
      - 192.168.100.47/24 - если добавить такой интерфейс на обеих виртуалках, то все работает, но tcpdump обнаруживается мак виртуалок
      gateway4: 192.168.100.2
      routes:
      - to: 192.168.100.0/24
        via: 192.168.100.2
  version: 2
и
Код
# This is the network config written by 'subiquity'
network:
  ethernets:
    ens18:
      addresses:
      - 192.168.1.139/24
      gateway4: 192.168.1.2
      nameservers:
        addresses:
        - 8.8.8.8
        search: []
Пробовал примерно так на 1-м хосте:
Код
-A POSTROUTING -s 192.168.1.47/24 -d 192.168.1.139/24 -o enp0s31f6.4000 -j MASQUERADE
-A PREROUTING -i enp0s31f6.4000 -j DNAT --to 192.168.1.47
И так на 2-м:
Код
-A POSTROUTING -s 192.168.1.139/24 -d 192.168.1.47/24 -o enp0s31f6.4000 -j MASQUERADE
-A PREROUTING -i enp0s31f6.4000 -j DNAT --to 192.168.1.139
Но естественно не сработало. Если на виртуалках добавить сеть 192.168.100.0, то они соединяются миную хост и на внешних интерфейсах появляется мак-адреса виртуалок. Подскажите пожалуйста как правильно настроить? Заранее благодарен!
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
29.12.2021, 20:32
Ответы с готовыми решениями:

Используя маски равной длины объединить шлюзом на двух маршрутизаторах 2 сети с числом хостов по200 в сеть с IP
Используя маски равной длины объединить с помощью шлюза на двух маршрутизаторах 2 сети с числом...

Можно ли из одной виртуалки получить доступ к Асtivе Direсtоrу другой виртуалки?
Всем привет! Ситуация такая: На 2х виртуалках стоит Sеrvеr2003 и развернут Асtivе Direсtоrу. Можно...

Соединение двух хостов через третий посредством VPN
Доброго времени друзья. Дано: Имеется Win Server 2012 с реальным IP адресом, на нем поднят VPN....

Объединить условия из двух if в один
Есть 2 функции if($group == 'unban'){ $sum = Functions::getUnbanSum($name); } else{...

Объединить содержимое двух файлов
Разобрать программу, которая записывает в файл F3 сначала компонент файла F1, затем компонент файла...

3
4975 / 1003 / 144
Регистрация: 29.01.2013
Сообщений: 5,916
03.01.2022, 09:30 2
Цитата Сообщение от tarabukinivan Посмотреть сообщение
соединить виртуалки
Что вы под этим понимаете? какова цель? Отказоустойчивый кластер? Распределённое файловое хранилище? Что?
1
1 / 1 / 0
Регистрация: 12.08.2011
Сообщений: 111
15.02.2022, 11:37  [ТС] 3
Соединяю сентри и валидатора. Все уже решил. Спасибо!
0
1 / 1 / 0
Регистрация: 02.03.2022
Сообщений: 9
02.03.2022, 23:09 4
а как решили ? поделитесь
0
02.03.2022, 23:09
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
02.03.2022, 23:09
Помогаю со студенческими работами здесь

Объединить данные двух таблиц по ID
Всем привет, столкнулся с такой проблемой. Есть две таблицы в одной в поле (post) содержатся только...

Объединить значение двух полей
2 поля - Имя и фамилия Возможно при запросе в селекте указать таким образом, чтобы значение двух...

Объединить результат двух запросов
доброе время суток! есть 2 запроса select SUM(convert(numeric(10), zav_num)) from izmer_ceha...

Объединить содержимое двух файлов
Помогите плиз!!! Сцепить каждый файл с расширением txt с одноименным файлом, имеющим расширение...

Объединить RAM двух компьютеров
Как организовать объединение физической памяти двух компьютеров, на которых запущено приложение,...

Объединить числа из двух файлов
Имеются два файла. Пользователь заполняет данные два файла числами и буквами. Написать программу,...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru