Могу ли я потерять три IP-адреса в каждой сети при подключенной сетевой сети Xen?

Около месяца назад я задал этот вопрос на Superuser. Ответ там определенно работает, но я столкнулся с проблемой, о которой я раньше не думал.

Установки, которые я выполнял (на основе ранее упомянутого ответа), были

auto eth0 iface eth0 inet static address abcd netmask 255.255.255.0 network abc0 broadcast abc255 gateway abc254 auto xenbr0 iface xenbr0 inet static bridge_ports none address efg1 netmask 255.255.255.0 

Затем я бы сконфигурировал domUs использовать адрес в диапазоне, который был назначен мне центром данных. В частности, этот диапазон будет равен efg24 / 29, предоставляя мне 8 IP-адресов, доступных для domU. Шлюз будет мостом IP, откуда пакеты маршрутизируются через eth0 во внешний мир. Это сработало отлично.

Проблема, которую я понял пару дней назад, заключается в том, что domU никогда не смогут достичь таких адресов, как efg1, потому что это сам мост. Но что, если одному из domUs действительно нужен доступ к efg1 (фактический внешний IP)?

Итак, я начал перемещать все внутри сетей, которые мне были назначены. Проблема тогда заключалась в том, что с блоком / 29 я бы сохранил только 5 IP-адресов для domU:

 auto xenbr0 iface xenbr0 inet static bridge_ports none address efg25 netmask 255.255.255.248 

Я всегда теряю три адреса в своей сети (один для «сети», один для самого моста и один для широковещательного адреса). Я фактически не определял адрес сети и широковещания, но ifconfig прежнему показывает широковещательный адрес как 31 (последний IP-адрес в сети), и я не могу поместить мост по адресу 24 любым рабочим способом. Проблема становится еще хуже с сетью / 30, где у меня будет только один из четырех IP-адресов, доступных для domU (да, у меня также есть такая сеть).

Поскольку я плачу за IP-адрес, я хочу максимально эффективно использовать их. Затем я начал исследовать маршрутизацию Xen. Теперь я пытаюсь использовать vif-route и network-route в /etc/xen/xend-config.sxp чтобы создать такую ​​настройку, как:

  +-----------------------------+ +-------------+ | dom0 | | domU | | | | | -------eth0 vif1.0--------------eth0 | | abcd ???? | | efg24 | | | | | +-----------------------------+ +-------------+ 

Таким образом, датацентр отправит пакеты для моих IP-адресов в eth0 dom0, dom0 направит его на правильный vif, который передаст его в eth0 domU.

Независимо от того, что я пытаюсь, я не могу заставить его работать, без каких-либо значимых сообщений об ошибках, чтобы начать отладку. Два дня постоянного Гуглинга не помогли мне, и я сейчас смотрю в пустоту.

Я смотрю на это неправильно, или я просто настраиваю вещи неправомерно? Возможно ли такая настройка? Если да, то что я делаю неправильно?

    One Solution collect form web for “Могу ли я потерять три IP-адреса в каждой сети при подключенной сетевой сети Xen?”

    Мне удалось заставить его работать. Он не на 100% чист, как я хочу, но, по крайней мере, он функциональный.

    Мое решение в основном состоит из запуска моста с сетевой сетью 24 и без IP-адреса. Когда мост поднят, я вручную добавляю маршрут для блока / 29 IP, который я получил на моем сервере. В domUs я запускаю интерфейс с правильной сетью IP и a / 24 netmask, без шлюза. Когда интерфейс завершен, я вручную добавляю маршрут к адресу eth0 моего dom0 и делаю его шлюзом по умолчанию. Конечно, dom0 настроен для маршрутизации IP-пакетов между сетями.

    Dom0's /etc/network/interfaces

     ### The primary adapter ### # These settings are provided by the dServer host auto eth0 iface eth0 inet static address abcd netmask 255.255.255.0 network abc0 broadcast abc255 gateway abc254 ### Network bridges ### auto xenbr0 iface xenbr0 inet manual bridge_ports none network efg0 netmask 255.255.255.0 gateway abc254 ### Static routes ### # No route for efg0/24 was automatically set # I assume that's due to the bridge not having an IP address assigned up ip route add efgh/29 dev xenbr0 down ip route delete efgh/29 

    DomU /etc/network/interfaces

     # The primary network interface auto eth0 iface eth0 inet static address efgh netmask 255.255.255.0 # Static routing up ip route delete efg0/24 up ip route add abcd dev eth0 up ip route add default via abcd down ip route delete default via abcd dow ip route delete abcd 

    Включите маршрутизацию пакетов, убедившись, что это установлено в файле /etc/sysctl.d/xen-routing.conf (имя файла является произвольным, но должно заканчиваться на .conf)

     net.ipv4.ip_forward=1 

    После того, как вы это сделали, вы можете включить настройку, перезагрузившись или сделать это в Интернете с помощью

     sysctl -w net.ipv4.ip_forward=1 
    Interesting Posts

    Deserialize JSON в динамический объект C #?

    Доступные ссылки в Textmate?

    Как объединить или объединить два видеофайла с ffmpeg?

    Можно ли напрямую использовать физический раздел с Windows XP для загрузки виртуальной машины?

    Солнце и / или тепловой ущерб на задней панели монитора или компьютера

    Как я могу разделить страницы PDF в середине?

    Почему мой ноутбук отключается самостоятельно?

    Преобразование полосы пропускания: Bps-Bytes / s MBit-MB

    Что я могу отключить на ноутбуке vista для освобождения ресурсов

    Не может отправлять файлы через bluetooth на windows 8 pro; Отсутствие передачи файла Bluetooth

    Есть ли способ повторно включить панель управления Mac OS X?

    Как добавить, отредактировать или управлять пользовательскими поисковыми системами в Opera 15 или более поздних версиях (на основе Chromium)?

    Изменение времени ответа всплывающего окна панели задач

    Как отключить поиск и догадывание доменов в адресной строке Firefox, сохраняя при этом другие функции?

    Есть ли способ предотвратить копирование данных на флэш-диске

    Давайте будем гением компьютера.