Виртуальный интерфейс linux debian

How do I create virtual ethernet devices in linux?

I am testing an implementation of a protocol that talks between two computers using ethernet (not IP). In order to not actually have to have two physical computers, I want to create two virtual ethernet interfaces. These would only be able to talk to each other, so one endpoint program would bind to one interface and the other endpoint would bind to the other. Is this possible and how do I do it?

6 Answers 6

You can use VDE2, a virtual switch.

For example (you will need a few terms):

# Install vde2 (assumes Debian/Ubuntu) sudo aptitude install vde2 # Create the switch and two tap interfaces attached to it sudo vde_switch -tap tap0 -tap tap1 # Configure the interfaces sudo ip addr add 10.0.31.10 dev tap0 sudo ip addr add 10.0.31.11 dev tap1 # Start a server socat - TCP-LISTEN:4234,bind=10.0.31.10 # Alternatively, an echo server: #socat PIPE TCP-LISTEN:4234,bind=10.0.31.10 # Start a client socat - TCP:10.0.31.10:4234,bind=10.0.31.11 

Type on one side, it will appear on the other.

This example does not work: All traffic goes through the ‘lo’ interface as can be seen by using ‘tcpdump’. You may also notice that both tap interfaces are still down. After bringing them up tcpdump works on the tap interfaces but shows not traffic at all on them. The Linux kernel uses it local routing table (see ‘ip route show table local’) to find out that these IPs are local and just routes the packets locally, without using ‘vde_switch’. Having said all that, I have not yet found a way to make an socat connection through vde_switch and tap interfaces.

Источник

Виртуальный интерфейс в Debian, Ubuntu Linux

Настраиваем виртуальный интерфейс в Debian Linux

Потребовалось мне настроить на системе виртуальный интерфейс ( не Алиас ), а в интернете информации практически нет, потому опубликую маленькую инструкцию.

Читайте также:  Find glibc version in linux

Работа проводилась на операционной системе Debian Squeeze, но подойдет и для Ubuntu.

Делать будем виртуальный интерфейс virt0

Необходимо установить нужный пакет для Debian:

aptitude install uml-utilities

Теперь добавляем в конфигурационный файл сети находящийся по адресу /etc/network/interfaces:

auto virt0 iface virt0 inet static address 192.168.1.1 netmask 255.255.255.0 tunctl_user uml-net

После этого просто перегружаем сеть командой:

/etc/init.d/networking restart

Проверяем командой ifconfig virt0:

ifconfig virt0 virt0 Link encap:Ethernet HWaddr cd:15:c6:37:51:18 inet addr:192.168.1.1 Bcast:192.168.10.255 Mask:255.255.255.0 inet6 addr: fe71::cz15:c9vv:gd59:8019/64 Scope:Link UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:0 errors:0 dropped:0 overruns:0 frame:0 TX packets:0 errors:0 dropped:6 overruns:0 carrier:0 collisions:0 txqueuelen:500 RX bytes:0 (0.0 B) TX bytes:0 (0.0 B)

Виртуальный интерфейс добавлен. Задача выполнена.

Источник

Настройка сети Debian 9

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

В этой статье будет рассмотрена настройка сети Debian 9. Мы разберем как настроить имя хоста, сетевые интерфейсы и получить IP адреса для них. Эта инструкция подойдет как для обычных компьютеров, так и для серверов.

1. Имя компьютера

Чтобы посмотреть текущее имя хоста вы можете использовать команду hostname:

Установить новое имя хоста очень просто, для этого достаточно передать его команде hostname в качестве параметра:

После перезагрузки имя хоста не сохранится, поэтому вам нужно отредактировать файл /etc/hostname и добавить туда новое имя хоста, уже это имя останется даже после перезагрузки:

Осталось только связать новое имя хоста с локальным IP адресом, чтобы иметь возможность обращаться по нему к компьютеру. Для этого добавьте такую строку в файл /etc/hosts:

127.0.0.1 localhost debian-pc

2. Список сетевых интерфейсов

Перед тем как мы сможем настроить сеть нужно посмотреть какие сетевые интерфейсы подключены к вашей системе и какие имена им присвоены. Для этого наберите:

Также можно посмотреть только имена интерфейсов, в папке /sys/class/net:

Читайте также:  Linux вывод операционной системы

3. Настройка сетевого интерфейса

Для настройки сетевых интерфейсов в операционных системах, основанных на Debian, используется файл /etc/network/interfaces. Здесь должно находится описание для каждого интерфейса, способ получения IP а другие параметры. В одном файле может быть настроено несколько интерфейсов. Описание каждого интерфейса начинается со слова auto после которого идет имя интерфейса.

Это означает, что указанный интерфейс должен быть запущен при выполнении ifup с опцией -a, именно она используется при инициализации системы. После строки auto идут другие строки настроек, которые касаются именно этого интерфейса. Вот так, например, выглядит строка для включения локального интерфейса:

Перед тем как рассматривать все более подробно, поговорим про опции, которые можно использовать:

  • pre-up — выполнить команду перед запуском интерфейса;
  • post-up — выполнить команду после запуска интерфейса;
  • up — выполнить команду при запуске интерфейса;
  • pre-down — команда перед отключением;
  • post-down — команда после отключения;
  • iface — указывает имя интерфейса;
  • inet — указывает
  • description — создать имя синоним для устройства;
  • address — устанавливает ip адрес для статического соединения;
  • netmask — установка маски сети;
  • broadcast — широковещательный адрес;
  • metric — приоритет для шлюза по умолчанию;
  • gateway — шлюз по умолчанию;
  • hwaddress — установить MAC адрес;
  • mtu — размер одного пакета.

Это далеко не все опции, которые можно использовать, но основные из них и уже с помощью этого можно настроить большинство из того, что нужно. Дальше рассмотрим различные варианты настройки интерфейсов, самый часто используемый на домашних компьютерах — это получение ip адреса по DHCP, в таком случае, ip адрес может меняться при каждом запуске. Рассмотрим его первым.

Настройка динамического IP

Мы будем получать IP адрес через DHCP сервер, оттуда же будут получены шлюзы и DNS сервер, поэтому для работы достаточно добавить две строчки. Например, настроем получение IP по DHCP для интерфейса eth0:

auto eth0
iface eth0 inet dhcp

Но если необходимо, то вы можете установить вручную ip адрес DNS сервера:

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

auto lo
iface lo inet loopback

Здесь мы не получаем адрес по DHCP, но присваиваем локальный адрес 127.0.0.1.

Читайте также:  Переименовать компьютер альт линукс

Настройка статического IP адреса

Если вы хотите установить именно статический IP, то здесь все будет немного сложнее. Нам нужно знать не только этот свободный IP адрес, но и шлюз, маску сети и DNS сервер. Для настройки используется такой набор строк:

iface eth0 inet static
address 192.168.1.15
netmask 255.255.255.0
gateway 192.168.1.1
broadcast 192.168.0.255
dns-nameservers 8.8.8.8

Здесь указывается, что мы будем использовать метод получения ip адреса static, а затем расписаны все параметры. Но это еще далеко не все, что можно сделать с помощью файла /etc/network/interfaces. Также вы можете создавать виртуальные интерфейсы.

Настройка виртуальных интерфейсов

В некоторых случаях нам может понадобиться создать виртуальный интерфейс. Это позволяет добавить еще один IP адрес к интерфейсу. Чтобы создать такой интерфейс достаточно дописать его номер после двоеточия:

auto eth0:0
iface eth0:0 inet static
address 192.168.1.101
netmask 255.255.255.0
gateway 192.168.1.1
dns-nameservers 8.8.8.8

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

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

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

auto br0
iface br0 inet static
address 192.168.1.20
network 192.168.1.0
netmask 255.255.255.0
broadcast 192.168.1.255
gateway 192.168.1.1
bridge_ports eth0
bridge_stp off
bridge_fd 0
bridge_maxwait 0

Здесь мы указываем имя интерфейса br0, дальше выполняем стандартную настройку получения статического IP адреса, затем связываем этот мост с интерфейсом eth0.

Перезагрузка сети

После внесения всех изменений необходимо перезапустить сеть, чтобы сетевые настройки debian вступили в силу, для этого наберите:

sudo systemctl restart networking

Выводы

В этой статье мы рассмотрели как выполняется настройка сети Debian 9. Конечно, это еще далеко не все, что возможно настроить, но с помощью этих команд можно в большинстве случаев заставить работать сеть. настройка сети из консоли debian дело сложное, в графическом интерфейсе все делается намного проще, с помощью NetworkManager все настраивается автоматически. Надеюсь, эта информация была полезной для вас.

Обнаружили ошибку в тексте? Сообщите мне об этом. Выделите текст с ошибкой и нажмите Ctrl+Enter.

Источник

Оцените статью
Adblock
detector