Virbr0 Centos 7 что это такое

Обновлено: 26.06.2024

На этой странице представлено введение в общие сетевые конфигурации, используемые приложениями на основе libvirt. Эта информация относится ко всем гипервизорам, будь то Xen, KVM или другой.

Двумя распространенными настройками являются "виртуальная сеть" или "общее физическое устройство". Первый идентичен во всех дистрибутивах и доступен «из коробки». Последний требует ручной настройки конкретного дистрибутива.

Содержание

Переадресация NAT (также известная как «виртуальные сети»)

Конфигурация хоста

Каждая стандартная установка libvirt по умолчанию обеспечивает подключение к виртуальным машинам на основе NAT. Это так называемая «виртуальная сеть по умолчанию». Вы можете убедиться, что он доступен с

Если он отсутствует, пример конфигурации XML можно перезагрузить и активировать

Когда сеть libvirt по умолчанию работает, вы увидите изолированное устройство-мост. Это устройство явно * НЕ * имеет добавленных физических интерфейсов, поскольку оно использует NAT + переадресацию для подключения к внешнему миру. Не добавлять интерфейсы

Libvirt добавит правила iptables, чтобы разрешить трафик к/от гостей, подключенных к устройству virbr0, в цепочках INPUT, FORWARD, OUTPUT и POSTROUTING. Он также попытается включить ip_forward. Некоторые другие приложения могут отключить его, поэтому лучше всего добавить следующее в /etc/sysctl.conf

Если вы уже используете dnsmasq на своем компьютере, см. libvirtd и dnsmasq.

Гостевая конфигурация

После завершения настройки хоста гость может быть подключен к виртуальной сети на основе сетевого имени. Например. чтобы подключить гостя к виртуальной сети «по умолчанию», вам необходимо отредактировать файл конфигурации домена для этого гостя:

где имя или uuid гостя. Добавьте следующий фрагмент XML в файл конфигурации:

Примечание. MAC-адрес является необязательным и будет создан автоматически, если его не указать.

Применение изменений к сети

Иногда необходимо отредактировать определение сети и применить изменения на лету. Наиболее распространенным сценарием для этого является добавление новых статических сопоставлений MAC+IP для DHCP-сервера сети. Если вы отредактируете сеть с помощью «virsh net-edit», любые сделанные вами изменения не вступят в силу до тех пор, пока сеть не будет уничтожена и перезапущена, что, к сожалению, приведет к тому, что все гости потеряют сетевое соединение с хостом, пока их сетевые интерфейсы явно переподключены (что делается автоматически как побочный эффект перезапуска службы libvirtd).

virsh net-update

К счастью, многие изменения в конфигурации сети (включая вышеупомянутое добавление статического сопоставления MAC-адресов и IP-адресов для DHCP) можно выполнить с помощью «virsh net-update», которому можно приказать немедленно применить изменения. Например, чтобы добавить запись статического хоста DHCP в сеть с именем «по умолчанию», сопоставляющую MAC-адрес 53:54:00:00:01 с IP-адресом 192.168.122.45 и именем хоста «bob», вы можете использовать эту команду:

Наряду с подкомандой «добавить» в virsh net-update также есть подкоманда «удалить», а также «изменить» (для некоторых элементов), «добавить первым» и «добавить последним».< /p>

В каждом случае последним аргументом в командной строке (кроме "--live --config") должен быть раздел XML, который вы хотите добавить, изменить или удалить. Например, правильный XML для «virsh net-update default add forward-interface» будет выглядеть примерно так: «» (обратите внимание на осторожное использование кавычек — из-за того, что XML содержит пробелы и символы перенаправления оболочки, вы должны заключать в кавычки все Фрагмент XML, но это означает, что любые кавычки в XML должны быть либо одинарными, либо экранироваться обратной косой чертой.)

Произвольные изменения в сети

Хотя наиболее распространенные случаи изменения конфигурации сети могут быть обработаны с помощью "virsh net-update", есть некоторые части конфигурации, которые нельзя изменить таким образом, и в этих случаях у вас останутся все запущенные гости отключаются от сети после ее перезапуска. Это можно исправить, перезапустив службу libvirtd, которая во время инициализации проверяет, подключены ли все гостевые устройства к соответствующим мостам.

Переадресация входящих подключений

По умолчанию гости, подключенные через виртуальную сеть, могут устанавливать любые исходящие сетевые подключения. Входящие соединения разрешены с хоста и других гостей, подключенных к той же сети libvirt, но все остальные входящие соединения блокируются правилами iptables.

Если вы хотите сделать общедоступной службу, которая находится в гостевой системе за виртуальной сетью с NAT, вы можете настроить скрипт libvirt «hook» для qemu, чтобы установить необходимые правила iptables для переадресации входящих подключений к хосту на любом заданном порт HP на порт GP на гостевой GNAME:

1) Определите а) имя гостя "G" (как определено в XML домена libvirt), б) IP-адрес гостя "I", в) порт гостя, который будет получать подключения "GP" и d) порт на хосте, который будет перенаправлен на гостевую "HP".

(Чтобы убедиться, что IP-адрес гостя остается неизменным, вы можете либо настроить гостевую ОС со статической информацией об IP-адресе, либо добавить элемент внутри элемента сети, который используется вашим гостем. См. адрес XML-документации libvirt network раздел с дефейлами и примером.)

2) Остановить гостевую систему, если она запущена.

3) Создайте файл /etc/libvirt/hooks/qemu (или добавьте следующее в уже существующий скрипт ловушки) с содержимым, подобным следующему (замените GNAME, IP, GP и HP в соответствии с вашей настройкой) :

Используйте приведенный ниже базовый скрипт или посмотрите «расширенную» версию, которая может работать с несколькими разными машинами и сопоставлениями портов, здесь (улучшения приветствуются), или вот скрипт python, который делает то же самое и прост в понимании и настройке (улучшения приветствуются):

4) chmod +x /etc/libvirt/hooks/qemu

5) Перезапустите службу libvirtd.

6) Запустите гостевую систему.

(NB: этот метод является хаком и имеет один досадный недостаток в версиях libvirt до 0.9.13 — если libvirtd перезапускается во время работы гостя, все стандартные правила iptables для поддержки виртуальных сетей, которые были добавлены by libvirtd будет перезагружен, тем самым изменив порядок вышеприведенного правила FORWARD относительно правила отклонения для сети, что делает эту настройку неработающей до тех пор, пока гость не будет остановлен и перезапущен.Благодаря новому хуку «reconnect» в libvirt- 0.9.13 и новее (который используется приведенным выше скриптом, если он доступен), этот недостаток отсутствует в более новых версиях libvirt (однако этот скрипт-ловушку все же следует считать взломом).

Мостовая сеть (также известная как "общее физическое устройство")

Конфигурация хоста

Подключение на основе NAT полезно для быстрого и простого развертывания или на компьютерах с динамическим/спорадическим сетевым подключением. Более продвинутые пользователи захотят использовать полный мост, когда гость подключается напрямую к локальной сети. Инструкции по настройке зависят от дистрибутива и даже от выпуска.

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

Важное примечание. Если после попытки использовать интерфейс моста вы обнаружите, что ваше сетевое соединение перестало работать и больше отказывается работать, это может быть связано с тем, что вышестоящий маршрутизатор/коммутатор блокирует «неавторизованные коммутаторы» в сети (например, , путем обнаружения пакетов BPDU). Вам придется изменить его конфигурацию, чтобы явно разрешить хост-компьютер/сетевой порт в качестве «коммутатора».

Соединение Fedora и RHEL

Здесь описано, как настроить briding с помощью стандартных сетевых скриптов инициализации и systemctl.

Непосредственное использование NetworkManager

Если ваш дистрибутив был выпущен через некоторое время после 2015 года и использует NetworkManager, скорее всего, он изначально поддерживает мостовое соединение. См. эти инструкции по созданию моста непосредственно с помощью NetworkManager:

Отключение NetworkManager (для старых дистрибутивов)

Если ваш дистрибутив был выпущен до 2015 года, версия NetworkManager, скорее всего, не поддерживает создание моста, поэтому для моста необходимо использовать "классические" сценарии инициализации сети и явно пометить их как независимые от NetworkManager ("NM_CONTROLLED=no " строк в скриптах ниже).

При желании вы также можете полностью отключить NetworkManager:

Создание сценариев инициализации сети

В каталоге /etc/sysconfig/network-scripts необходимо создать 2 файла конфигурации. Первый (ifcfg-eth0) определяет ваш физический сетевой интерфейс и говорит, что он будет частью моста:

Очевидно, измените HWADDR, чтобы он соответствовал реальному адресу сетевой карты. Вы также можете настроить здесь MTU устройства, используя, например, MTU=9000.

Второй файл конфигурации (ifcfg-br0) определяет устройство моста:

ВНИМАНИЕ! Строка TYPE=Bridge чувствительна к регистру — в ней должна быть заглавная буква "B" и строчная буква "ridge"

После этого изменения перезапустите сеть (или просто перезагрузите компьютер)

Последний шаг — отключить сетевой фильтр на мосту:

Теперь у вас должно быть "общее физическое устройство", к которому могут быть подключены гости и которые имеют полный доступ к локальной сети

Обратите внимание, что этот мост полностью независим от virbr0. *НЕ* пытайтесь подключить физическое устройство к «virbr0» — это только для подключения через NAT

Соединение Debian/Ubuntu

Гостевая конфигурация

Чтобы разрешить вашим виртуальным машинам использовать этот мост, их конфигурация должна включать определение интерфейса, как описано в разделе Мост в локальную сеть. По сути, вы указываете имя моста для подключения.Предполагая общее физическое устройство, где мост называется "br0", будет использоваться следующий гостевой XML:

Обратите внимание: MAC-адрес является необязательным и будет создан автоматически, если его не указать.

Чтобы изменить конфигурацию виртуальной машины, используйте:

Дополнительную информацию см. в разделе часто задаваемых вопросов по адресу:

Прохождение PCI хост-сетевых устройств

Возможно напрямую назначить сетевое PCI-устройство хоста гостю. Одним из предварительных условий для выполнения этого назначения является то, что хост должен поддерживать расширения Intel VT-d или AMD IOMMU. Существует два метода настройки назначения PCI-устройства гостю:

Назначение

Это традиционный метод назначения гостю любого универсального устройства PCI. Это подробно описано в следующем руководстве:

Назначение с помощью (только для устройств SRIOV)

Сетевые карты SRIOV предоставляют несколько «виртуальных функций» (VF), каждая из которых может быть индивидуально назначена гостю с помощью назначения устройств PCI, и каждая из них будет вести себя как полноценное физическое сетевое устройство. Это позволяет многим гостям получить преимущество в производительности за счет прямого назначения устройств PCI, используя только один слот на физическом компьютере.

Эти VF могут быть назначены гостям традиционным способом с помощью , однако этот метод оказывается проблематичным, поскольку (в отличие от обычных сетевых устройств) сетевые устройства SRIOV VF не имеют постоянных уникальных MAC-адресов, а вместо этого получают новый и другой случайный MAC-адрес каждый раз при перезагрузке ОС хоста. В результате, даже если гостю каждый раз назначается один и тот же VF, каждый раз при перезагрузке хоста гость будет видеть, что его сетевой адаптер имеет новый MAC-адрес, что приведет к тому, что гость будет полагать, что подключено новое оборудование. требуется повторная настройка сетевых параметров гостя.

Хост может установить MAC-адрес перед назначением VF гостю, но в настройках это не предусмотрено (поскольку это универсальное устройство PCI, оно ничего не знает об элементах, специфичных для функций). как MAC-адрес). Чтобы решить эту проблему, в libvirt-0.9.10 добавлен новый (задокументированный здесь). Этот новый тип интерфейсного устройства ведет себя как гибрид a и a - libvirt сначала выполнит любую указанную инициализацию оборудования/коммутатора для конкретной сети (например, установку MAC-адреса и/или связывание с коммутатором 802.1Qbh), а затем выполнит Назначение устройства PCI гостю.

Чтобы использовать , у вас должна быть сетевая карта с поддержкой SRIOV, аппаратное обеспечение хоста, поддерживающее расширения Intel VT-d или AMD IOMMU, и вы должны узнать адрес PCI VF, который вы хотите назначить (см. этот документ для получения инструкций о том, как это сделать).

После того, как вы проверили/узнали приведенную выше информацию, вы можете отредактировать конфигурацию гостевого домена, чтобы иметь запись устройства, подобную следующей:

(Обратите внимание, что если вы не укажете MAC-адрес, он будет сгенерирован автоматически, как и для любого другого типа интерфейсного устройства. Кроме того, этот элемент используется только в том случае, если вы подключаетесь к аппаратному коммутатору 802.11Qgh (802.11 Переключатели Qbg (также известные как "VEPA") в настоящее время не поддерживаются в этом режиме)).

При запуске гостя он должен увидеть сетевое устройство того типа, который предоставляется физическим адаптером, с настроенным MAC-адресом. Этот MAC-адрес останется неизменным при перезагрузке гостевой системы и хоста.

Назначение из пула SRIOV VFs в определении libvirt

Жесткое кодирование адреса PCI конкретного VF в гостевой конфигурации имеет два серьезных ограничения:

1) Указанный VF должен быть доступен в любое время при запуске гостевой системы, что подразумевает, что администратор должен постоянно назначать каждую VF одному гостю (или изменять конфигурацию гостя, чтобы указывать неиспользуемый в настоящее время адрес PCI VF каждый раз при запуске). гость запущен).

2) Если гость перемещается на другой хост, этот хост должен иметь точно такое же оборудование в том же месте на шине PCI (или, опять же, конфигурация гостя должна быть изменена перед запуском).

Начиная с libvirt 0.10.0, можно избежать обеих этих проблем, создав сеть libvirt с пулом устройств, содержащим все VF устройства SR-IOV, а затем настроив гостевую систему для ссылки на эту сеть; при каждом запуске гостя из пула будет выделяться один VF и назначаться гостю; когда гость остановлен, VF будет возвращен в пул для использования другим гостем.

Ниже приведен пример определения сети, которое сделает доступным пул всех VF для адаптера SR-IOV с его PF (физической функцией) на "eth3" на хосте:

Чтобы использовать эту сеть, поместите приведенный выше текст, например, в /tmp/passthrough.xml (заменив «eth3» на сетевое имя PF вашего собственного устройства SR-IOV), затем выполните следующие команды:

Хотя показано только одно устройство, libvirt автоматически создаст список всех VF, связанных с этим PF, при первом запуске гостевой системы с определением интерфейса, подобным следующему:

Вы можете убедиться в этом, запустив "virsh net-dumpxml passthrough" после запуска первого гостя, использующего сеть; вы получите вывод, подобный следующему:

Как создать виртуальный сетевой интерфейс, например virbr0-nic ? Я пытаюсь найти способ создать сетевой адаптер, такой как virbr0-nic, но все, что я могу найти в Интернете, это то, как создать интерфейс, подключенный к физическому интерфейсу, например eth0:0 . Когда я пишу

Итак, virbr0 — это мост, к которому подключен virbr0-nic. Так как же создаются virbr0-nic и vnet1?

обычно это связано с чем-то вроде моста, специфичного для части программного обеспечения. Что вы ДЕЙСТВИТЕЛЬНО пытаетесь сделать?

Я установил KVM и заметил, что он создал новую сетевую карту virbr0-nic. Мне просто интересно, как я могу создать свой собственный сетевой адаптер, такой как этот.

5 ответов 5

Это фиктивные устройства. Вы можете бежать

Чтобы создать сетевой интерфейс с именем dummy0 .

Если вам нужно более одного устройства, вы можете создать, скажем, 5 с помощью

Затем вы сможете управлять этими устройствами, как любым другим сетевым устройством.

Дайте ему MAC-адрес с

Дайте ему IP-адрес с помощью

Добавьте его в существующий мост с помощью

Настроить, отключить, отключить NAT и т. д.

Этот ответ кажется более правильным, чем альтернативный, но в нем отсутствуют подробности о простом создании интерфейса, эквивалентного тому, что KVM настраивает по умолчанию (virbr0-nic).

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

Для этой цели libvirt использует устройство TUN. Вы можете создать это устройство вручную с помощью следующей команды:

virbr0-nic означает сетевую карту виртуального моста.

По сути, это мост между вашей физической сетевой картой и виртуальной сетевой картой вашей виртуальной машины.

Для управления мостовым интерфейсом можно использовать команду brctl. Вы можете перечислить все ваши мостовые интерфейсы с помощью

и добавлять или изменять мосты в соответствии с вашими потребностями. Чтобы создать новый мост, используйте

где будет имя вашего нового моста (как virbr0-nic). Затем вы можете добавить интерфейсы к мосту с помощью

Вы можете обратиться к справочной странице для получения дополнительной информации.


На самом деле это не говорит о создании нового "virbr1-nic", а только о новом "virbr1", интерфейс которого должен быть установлен ("virbr1-nic"), который уже существовал ранее.

Я также не думаю, что это мост между физическим и виртуальным. Мне приходится маскироваться между virbr0 и физическим сервером, чтобы пакеты могли маршрутизироваться.

Непонятно, какие именно типы устройств virbr0-nic и vnet1 входят в вашу настройку. Есть несколько типов виртуальных устройств, которые полезно включить в мост, некоторые из них можно создать с помощью команды ip.

Одним из видов виртуальных устройств является veth, который создает пары подключенных виртуальных интерфейсов Ethernet.

В этом примере veth0 и veth1 — произвольные имена интерфейсов, которые я придумал для примера. Этот метод может быть полезен, например, если вы хотите переместить один из двух интерфейсов в другое сетевое пространство имен.

Другим типом виртуального интерфейса является vlan, в котором вы создаете один виртуальный интерфейс Ethernet, подключенный к определенному тегу 802.1q на физическом интерфейсе:

Существует справочная страница с информацией о других типах виртуальных интерфейсов, которые можно создать с помощью команды ip. Название справочной страницы зависит от того, какую версию вы установили, я видел, что она называется ip-link или просто ip .

Кроме того, если вы используете какую-либо виртуализацию, есть виртуальные интерфейсы, соединяющие хост и виртуальную машину. Их особенности зависят от используемого вами решения виртуализации.


но у меня нет этого /usr/bin/tunctl -t virbr0-nic, который устанавливается из кабины, и я не могу найти параметр удаления, когда буду использовать виртуальную машину. Это нормально, когда она существует? но для сети с systemd-networkd у меня много проблем с этим. Cockpit будет использовать Network-Manager и файлы конфигурации из него. после установки моя сеть отключается, все устройства и приложения работают со многими сбоями.

Если вы проверите ‘ifconfig -a’ после новой установки системы RHEL/CentOS 6,7, вы найдете имя интерфейса virbr0. Вот пример только что установленной системы CentOS 7.

Что такое интерфейс virbr0 Интерфейс моста virbr0 создается сетевой конфигурацией libvirtd по умолчанию. libvirtd — это служба, которая обеспечивает хосту основу для работы в качестве гипервизора.Поэтому, если вы не используете виртуализацию xen, вы можете либо запретить активацию сети libvirtd по умолчанию при загрузке, либо запретить активацию самой libvirtd при загрузке. Первый предотвратит сетевое подключение любой гостевой виртуальной машины, подключенной к сети libvirtd по умолчанию, а второй вообще предотвратит запуск виртуальных машин. Что хорошо, если вы им не пользуетесь. Отключить сеть libvirtd по умолчанию

Вы можете временно отключить сеть libvirtd по умолчанию с помощью команды virsh. Это не будет сохраняться после перезагрузки.

Чтобы навсегда отключить создание сети libvirtd по умолчанию при загрузке:

Удалить сеть по умолчанию libvirtd Чтобы навсегда удалить сеть по умолчанию libvirtd:

Чтобы навсегда отключить запуск службы libvirtd при загрузке на RHEL5 и RHEL6:

Чтобы навсегда отключить запуск службы libvirtd при загрузке на RHEL7:

Под сетевым соединением понимается объединение сетевых интерфейсов на одном хосте для резервирования и/или увеличения пропускной способности. Это помогает повысить доступность сетевого интерфейса и повысить производительность. Связывание такое же, как объединение портов или объединение. Связывание позволяет объединить несколько портов в одну группу, эффективно объединяя пропускную способность в одно соединение. Связывание также позволяет создавать каналы с несколькими гигабитами для передачи трафика через зоны с наибольшим трафиком в вашей сети. Теперь мы можем настроить сетевое соединение и мост на сервере Centos.

network-bond

Режимы подключения к сети:

mode=1 (активное резервное копирование)
Политика активного резервного копирования: активен только один подчиненный сервер в соединении. Другой ведомый становится активным тогда и только тогда, когда активный ведомый выходит из строя. MAC-адрес соединения виден извне только на одном порту (сетевом адаптере), чтобы не запутать коммутатор. Этот режим обеспечивает отказоустойчивость. Основной параметр влияет на поведение этого режима.

mode=2 (баланс-исключающее ИЛИ)
политика XOR: передача на основе [(исходный MAC-адрес XOR с MAC-адресом назначения) по модулю счетчика ведомых устройств]. Это выбирает одно и то же ведомое устройство для каждого MAC-адреса назначения. Этот режим обеспечивает балансировку нагрузки и отказоустойчивость.

mode=3 (broadcast)
Политика широковещания: передает все на все подчиненные интерфейсы. Этот режим обеспечивает отказоустойчивость.

mode=4 (802.3ad)
IEEE 802.3ad Агрегация динамических каналов. Создает группы агрегации с одинаковыми настройками скорости и дуплекса. Использует все ведомые устройства в активном агрегаторе в соответствии со спецификацией 802.3ad.

Предварительные требования:
Поддержка Ethtool в базовых драйверах для получения скорости и дуплекса каждого подчиненного устройства. Коммутатор, поддерживающий динамическую агрегацию каналов IEEE 802.3ad. Большинству коммутаторов потребуется определенная конфигурация для включения режима 802.3ad.

mode=5 (balance-tlb)
Адаптивная балансировка нагрузки при передаче: связывание каналов, не требующее какой-либо специальной поддержки коммутатора. Исходящий трафик распределяется в соответствии с текущей нагрузкой (вычисляемой относительно скорости) на каждом ведомом устройстве. Входящий трафик принимается текущим ведомым устройством. Если принимающее ведомое устройство выходит из строя, другое ведомое устройство получает MAC-адрес отказавшего принимающего ведомого устройства.

Необходимое условие: поддержка Ethtool в базовых драйверах для получения скорости каждого подчиненного устройства.

mode=6 (balance-alb)
Адаптивная балансировка нагрузки: включает balance-tlb плюс балансировку нагрузки приема (rlb) для трафика IPV4 и не требует какой-либо специальной поддержки коммутатора. Балансировка нагрузки на прием достигается путем согласования ARP. Связующий драйвер перехватывает ARP-ответы, отправленные локальной системой на выходе, и перезаписывает исходный аппаратный адрес уникальным аппаратным адресом одного из ведомых устройств в соединении, так что разные одноранговые узлы используют разные аппаратные адреса для сервера.

Также вы можете использовать несколько интерфейсов связи, но для этого вы должны загрузить столько модулей связи, сколько вам нужно.

Выполните следующие действия, чтобы настроить Network Bonding и Bridge на сервере Centos с двумя сетевыми адаптерами.

alias bond0 bonding
options bond0 miimon=80 mode=5
vi /etc/sysconfig/network-scripts/ifcfg-bond0

DEVICE=bond0
IPADDR=192.168.1.154
NETMASK=255.255.255.0
GATEWAY=192.168.1.1
ONBOOT=да
BOOTPROTO=нет
USERCTL=no
vi /etc/sysconfig/network-scripts/ifcfg-eth0

DEVICE=eth0
ONBOOT=yes
BOOTPROTO=none
USERCTL=no
MASTER=bond0
SLAVE=yes
vi /etc/sysconfig /сетевые сценарии/ifcfg-eth1

DEVICE=eth1
ONBOOT=yes
BOOTPROTO=none
USERCTL=no
MASTER=bond0
SLAVE=yes
Введите следующую команду, чтобы загрузить связующий модуль

Перезапустите сеть

Настройка сетевого моста

Мост — это способ соединения двух сегментов Ethernet независимо от протокола.Пакеты пересылаются на основе Ethernet-адреса, а не IP-адреса (например, маршрутизатора). Поскольку пересылка выполняется на уровне 2, все протоколы могут прозрачно проходить через мост.

network- bridge-config

Необходимые утилиты администрирования моста находятся в пакете bridge-utils в большинстве дистрибутивов. Установите пакет bridge-utils через yum.

После завершения установки bridge-utils

DEVICE=bond0
ONBOOT=yes
USERCTL=no
BRIDGE=br0

DEVICE=br0
BOOTPROTO=static
IPADDR=192.168.1.154
NETMASK=255.255.255.0
GATEWAY=192.168.1.1
ONBOOT=yes
>TYPE=Bridge
Перезапустить сеть

Проверьте список мостов прямо сейчас.

Настройка простого сетевого моста

DEVICE=cloudbr0
BOOTPROTO=static
IPADDR=192.168.1.154
NETMASK=255.255.255.0
DEFROUTE=yes
GATEWAY=192.168.1.1
DNS1=4.2.2.2
ONBOOT=yes
TYPE=Мост

vi ifcfg-eth0
DEVICE=eth0
HWADDR=bc:56:4e:40:31:5f
ONBOOT=yes
NM_CONTROLLED=no
BRIDGE =cloudbr0

В своей последней статье я поделился инструкциями по настройке объединения сетевых карт в RHEL/CentOS 7 Linux. В этой статье я покажу вам пошаговое руководство по настройке сетевого моста с помощью nmtui (NetworkManager) на узле CentOS или RHEL 7. Сетевой мост — это устройство канального уровня, которое перенаправляет трафик между сетями на основе MAC-адресов и поэтому также называется устройством уровня 2. Сетевые мосты (также называемые сетевыми мостами или коммутацией виртуальных сетей) размещают сетевые интерфейсы виртуальных машин в той же сети, что и физический интерфейс.

Как создать или настроить сетевой мост в CentOS / RHEL 7/8

Сетевой мост можно настроить с помощью текстового пользовательского интерфейса NetworkManager (NMTUI) или интерфейса командной строки (CLI), вручную создав необходимые файлы конфигурации. Я написал еще одну статью о настройке сетевого моста в Oracle Virtual Box.

Настройка сетевого моста с помощью NMTUI (NetworkManager)

Инструмент текстового пользовательского интерфейса nmtui можно использовать для настройки сетевого моста в окне терминала. Введите следующую команду, чтобы запустить инструмент:

Появится текстовый пользовательский интерфейс. Любая недопустимая команда выводит сообщение об использовании.

После запуска nmtui для навигации используйте клавиши со стрелками или клавишу Tab, чтобы перейти вперед, и нажмите Shift+Tab, чтобы перейти назад по параметрам. Нажмите Enter, чтобы выбрать параметр. Пробел переключает статус флажка.

В начальном меню выберите Изменить соединение. Выберите «Добавить», откроется экран «Новое подключение».

настроить сетевой мост

настроить сетевой мост

Выберите «Мост», с помощью которого вы хотите настроить сетевой мост, откроется экран «Редактировать соединение».

настроить сетевой мост

Назначьте мосту имя профиля и имя устройства.

Чтобы добавить подчиненные интерфейсы в мост, выберите Добавить, откроется экран «Новое подключение».

настроить сетевой мост

Введите имя требуемого ведомого устройства или MAC-адрес в разделе «Устройство» и нажмите кнопку «ОК».

Если вы не укажете MAC-адрес, раздел «Устройство» автоматически заполнится после перезагрузки окна «Редактировать подключение», но только в том случае, если устройство будет успешно найдено.

настроить сетевой мост

Имя ведомого моста отображается в разделе ведомых устройств.

Если у вас есть DHCP-сервер, вы можете оставить для адресов IPv4 и IPv6 значение «Автоматически». Если вы хотите назначить статический IP-адрес, вручную заполните сведения о сети, как показано ниже. Поскольку мы не используем IPv6, я установил для параметра «Конфигурация IPv6» значение «Игнорировать».

настроить сетевой мост

Просмотрите и подтвердите настройки, прежде чем нажимать кнопку OK, чтобы выйти из утилиты nmtui (NetworkManager).

Затем перезапустите сетевые службы, чтобы изменения вступили в силу.

Теперь проверьте конфигурацию вашей сети

Наконец-то мы проверим подключение моста

Таким образом, мы можем подключиться к нашему шлюзу, что означает, что наш мост работает должным образом.

Настройка сетевого моста через интерфейс командной строки

Чтобы настроить сетевой мост, создайте файл в каталоге /etc/sysconfig/network-scripts/ с именем ifcfg-brN , заменив N на номер интерфейса, например 0. В нашем случае мы создадим ifcfg-br1.

Содержимое файла интерфейса моста и файла интерфейса Ethernet почти. Отличия в этом примере следующие:

  • Директиве DEVICE в качестве аргумента передается имя интерфейса в формате brN , где N заменяется номером интерфейса.
  • Директиве TYPE присваивается аргумент Bridge. Эта директива определяет тип устройства, а аргумент чувствителен к регистру.
  • Файл конфигурации интерфейса моста теперь имеет IP-адрес, а физический интерфейс имеет только MAC-адрес.
  • Добавлена ​​дополнительная директива DELAY=0 , чтобы предотвратить ожидание моста, пока он отслеживает трафик, узнает, где находятся хосты, и создает таблицу MAC-адресов, на которой основываются его решения по фильтрации.
  • Добавьте NM_CONTROLLED=no к интерфейсу Ethernet, чтобы предотвратить изменение файла NetworkManager.

Ниже приведен пример файла конфигурации интерфейса моста с использованием статического IP-адреса:

Чтобы завершить сетевой мост, мы должны создать еще один интерфейс, или вы можете использовать существующий интерфейс и указать его на интерфейс моста. Ниже приведен пример файла конфигурации интерфейса Ethernet, указывающего на интерфейс моста. Настройте свой физический интерфейс в файле /etc/sysconfig/network-scripts/ifcfg-ethX , где X — это уникальный номер, соответствующий конкретному интерфейсу, следующим образом:

Из-за согласованного именования сетевых устройств имя интерфейса может быть ethX или enX или будет зависеть от типа сетевой карты.

Наконец перезапустите сетевую службу, чтобы изменения вступили в силу

Надеюсь, статья о настройке сетевого моста с помощью NetworkManager nmtui в RHEL/CentOS 7/8 Linux была полезной. Пожалуйста, дайте мне знать ваши отзывы и мнения, используя поле для комментариев ниже.

Похожие записи

Не нашли то, что искали? Выполните быстрый поиск в GoLinuxCloud

Если мои статьи о GoLinuxCloud помогли вам, пожалуйста, купите мне кофе в знак признательности.

Купить кофе GoLinuxCloud

Для любых других отзывов или вопросов вы можете использовать раздел комментариев или форму обратной связи.

Читайте также: