🖧 Linux: Создание виртуального сетевого интерфейса |

🖧 Linux: Создание виртуального сетевого интерфейса

Мануал

В системах Linux настройка виртуального сетевого интерфейса – это не то, что большинству людей нужно делать очень часто, но иногда это может пригодиться.

Система распознает виртуальный интерфейс как реальный, физический интерфейс.

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

В этом руководстве вы узнаете, как создать виртуальный сетевой интерфейс в Linux.

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

Создание виртуальных сетевых интерфейсов на Linux

Методы создания виртуального сетевого интерфейса немного изменились за прошедшие годы.

Существует много способов сделать это, но мы будем использовать модуль ядра dummy для настройки нашего виртуального интерфейса в этих шагах.

Начните с включения модуля ядра с помощью следующей команды.

$ sudo modprobe dummy

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

Не стесняйтесь назвать его как угодно, но в данном примере мы назовем наш интерфейс eth0.

$ sudo ip link add eth0 type dummy

Вы сможете убедиться, что ссылка была добавлена, выполнив после этого следующую команду:

$ ip link show eth0

У нас есть наш виртуальный интерфейс, но он не слишком полезен для нас без IP-адреса или MAC-адреса.

Давайте присвоим интерфейсу MAC-адрес с помощью следующей команды.

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

$ sudo ifconfig eth0 hw ether C8:D7:4A:4E:47:50

Обратите внимание, что если команда ifconfig недоступна, вам потребуется установить пакет net-tools.

Теперь мы можем добавить алиас к интерфейсу и сконфигурировать его с IP-адресом.

$ sudo ip addr add 192.168.1.100/24 brd + dev eth0 label eth0:0

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

$ sudo ip link set dev eth0 up

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

Вы можете увидеть полную конфигурацию, просмотрев вывод команды ip a.

$ ip a
[...]
3: eth0: <BROADCAST,NOARP,UP,LOWER_UP> mtu 1500 qdisc noqueue state UNKNOWN group default qlen 1000
    link/ether c8:d7:4a:4e:47:50 brd ff:ff:ff:ff:ff:ff
    inet 192.168.1.100/24 brd 192.168.1.255 scope global eth0:0
       valid_lft forever preferred_lft forever

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

$ sudo ip addr del 192.168.1.100/24 brd + dev eth0 label eth0:0
$ sudo ip link delete eth0 type dummy
$ sudo rmmod dummy

Заключение

В этом руководстве мы узнали, как добавить виртуальный сетевой интерфейс в систему Linux с помощью модуля ядра dummy.

Это полезная практика во многих сценариях.

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

см. также:

Настраиваем LVS (Виртуальный сервер Linux) через ipvsadm

 

Пожалуйста, не спамьте и никого не оскорбляйте. Это поле для комментариев, а не спамбокс. Рекламные ссылки не индексируются!
Добавить комментарий

  1. аноним

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

    тогда можно использовать loopback (lo)

    Ответить
    1. ананим

      А если приложение должно работать изолированно и с другими хостами сети???

      Ответить
    2. ананем

      а если несколько приложений и нужно несколько отдельных интерфейсов???

      Ответить