Назад | Перейти на главную страницу

Как настроить туннель VxLAN с мостом ovs?

Я хочу подключить виртуальные машины, расположенные на двух разных машинах, с мостом ovs и туннелем VxLAN, предположим топологию как на картинке топология показывает, что моя конфигурация на хосте A выглядит следующим образом (конфигурация на хосте B почти такая же, за исключением изменения remote_ip на адрес хоста A'eth0):

ovs-vsctl add-br ovs-br0
ovs-vsctl add-port ovs-br0 vtep -- set interface vtep type=vxlan options:remote_ip=172.168.1.200 options:key=5000

tap0 создается и автоматически добавляется к мосту ovs-br0 при запуске виртуальных машин с qemu, но я не могу выполнить эхо-запрос с VM1 на VM2.

Я также погуглил несколько таких ссылок: http://networkstatic.net/configuring-vxlan-and-gre-tunnels-on-openvswitch/ , в котором говорится, что я должен создать два моста ovs, к сожалению, он не говорит, нужно ли (и как) соединять эти два моста вместе.

Я смущен тем, как взаимодействуют ovs-br0 и eth0, помогает ли это стек TCP / IP ядра выполнять эту работу, или мне нужно создать еще один мост ovs и соединить эти два моста с портами исправлений?

Пожалуйста, поправьте меня, если моя топология или конфигурации не подходят, и заранее большое спасибо.

Я решил эту проблему.

Мои конфигурации на туннеле vxlan с мостом ovs верны, причина того, что я не могу выполнить пинг с VM1 на VM2, - это неправильные шаги при установке ovs. Я забыл сделать modules_install для установки встроенных файлов .ko в путь к библиотеке ядра.

Одного моста ovs достаточно для создания туннеля ovs vxlan, пакеты, поступающие от виртуальных машин, будут добавлены с помощью внешнего заголовка на порт vtep, затем маршрутизируются в соответствии с таблицей маршрутизации и перенаправляются на физический порт eth0. Нам не нужно явно подключаться и физический порт, ядро ​​ОС поможет нам в этом.