Могу ли я создать три "ветхих" интерфейса для создания виртуальной локальной сети в Linux?
В Linux с iproute2
Я знал, как создать два veth
(Виртуальный Ethernet) NIC и разделил их на два сетевых пространства имен, затем я получил два виртуальных NIC и подключил их виртуальный "кабель".
Теперь я хочу построить локальную сеть, в которой должно быть три сетевых адаптера, каждый из которых имеет один IP-адрес и образует сегмент сети.
Могу ли я использовать veth
(или что имеет смысл) для достижения этого?
2 ответа
veth
с всегда приходят парами.
Если вы хотите построить сегмент сети с более чем двумя виртуальными сетевыми картами, вам нужно будет объединить veth
с переходом.
Допустим, у нас есть три сетевых пространства имен, давайте назовем их "красным", "зеленым" и "синим", между которыми мы хотим построить сегмент сети. Нам нужно (используемые имена являются произвольными).
- Выберите одно из пространств имен сети, чтобы удерживать мост, давайте выберем зеленый.
- Создать два
veth
пары,veth0
/veth1
а такжеveth2
/veth3
, - Положить
veth
s в пространствах имен сети,veth0
-> "красный"veth1
-> "зеленый"veth2
-> "зеленый" veth3 -> "зеленый" - Создать мост
br0
в "зеленом" мостуveth1
а такжеveth2
, - Назначить IP-адреса / маски
veth0
в красном,"br0
в "зеленом" иveth2
в синем."
Да, таким образом вы можете создавать произвольно сложные ЛВС. Я регулярно делаю это с помощью нескольких сценариев (помогает запуск xterm или двух в каждом сетевом пространстве имен). Обратите внимание, что вам нужны маршруты в каждом пространстве имен сети.
Есть также дюжина или около того приложений, которые имитируют ЛВС таким образом и дают вам графический интерфейс для их создания и управления ими.
редактировать
Вот список с более чем дюжиной приложений; поиск в Google, вероятно, будет больше.