Ошибка «Нет носителя» при создании интерфейса TAP для моста KVM

Ошибка «Нет носителя» при создании интерфейса TAP для моста KVM

Интерфейсы

Я попытался создать интерфейс Tap (тап210i0) вручную для kvm. Но каждый раз устройство Tun показываетНЕТ-НОСИТЕЛЯ.

У меня есть интерфейсыено1,ено2,vmbr0итап210i0. eno1 и eno2 являютсярабыдляvmbr0.

Вот набор команд, которые я опробовал.

ip tuntap add tap210i0 mode tap

ip link set dev tap210i0 up

ip link set tap210i0 master vmbr0

Когда я печатаю"brctl шоу"это показывает"tap210i0"как один из интерфейсов вместе с eno1. Я гуглил, но не нашел прямого ответа на мою проблему.

Я думаю, что у меня также работают модули TAP.

lsmod | egrep -si tap

выход :

кран 24576 1 vhost_net

Обратите внимание, что все виды брандмауэров отключены (включая iptables).

Может ли кто-нибудь дать мне работающее предложение? Пожалуйста, не предлагайте мне перезапустить сеть, так как я могу получить доступ к этому серверу только удаленно. Я не мог зайти на физический сервер, чтобы исправить это.

решение1

АКРАНИнтерфейс обеспечивает виртуальную связь с двумя сторонами:

  • the интерфейссторона, видимая сетевым уровнем на хосте, который в случае использования OP часто находится в режиме ответвления (Ethernet уровня 2) и настроен как порт моста.
  • аневидимыйсторона: апроцессоткрыв файловый дескриптор для специального устройства ( /dev/net/tun), что позволяет этому процессу читать и записывать IP-пакеты (режим tun) или кадры Ethernet (режим tap). Эти пакеты либо приходят со стороны интерфейса хоста, либо идут на нее.

Создание интерфейса — не самая важная часть. Самая важная часть — это наличие процесса, прикрепленного к невидимой стороне этого интерфейса для чтения и записи пакетов. Пока такого процесса нет, связь по этому каналу не существует. Это естественным образом переводится как «NO-CARRIER», потому что это имеет смысл. Это нормальное и ожидаемое поведение.

Три примера таких процессов, которые приходят мне на ум, — это QEMU (который обеспечивает эмуляцию устройств KVM, включая сетевые интерфейсы), OpenVPN и опция Tunnel в openssh.

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

Связанный контент