Сетевой мост: различия между версиями

Материал из ALT Linux Wiki
Нет описания правки
 
(не показаны 3 промежуточные версии этого же участника)
Строка 1: Строка 1:
{{stub}}
{{Note|Обратите внимение, что это не официальная документация, а попытка начинающего админа объяснить материал начинающим админам.}}


1) создать бридж (тут нужно выбрать как - etcnet, systemd-networkd, NetworkManager или Alterator) и назначить именно ему (а не физическому интерфейсу, к которому он привязан) IP-адрес
В данной статье будет расписано как новичку создать сетевой мост с помощью EtcNet.


Сетевой мост в ALT Linux можно создать тремя способами:
==Создание интерфейса==
*etcnet
Имя интерфейса будет '''vmbr0'''.
*systemd-networkd
*NetworkManager
*Alterator


В данной статье мы рассмотрим все четыре способа.
1. Первым делом [[Etcnet start|настраиваем сеть]] с помощью Etcnet. (В нашем примере у интерфейса идентификатор enp0s3 вместо eth0)


==Etcnet==
2. Создаем каталог для интерфейса моста, у которого будет идентификатор '''vmbr0'''
Например, интерфейс будет называться '''br0'''.
# mkdir /etc/net/ifaces/vmbr0


Тогда для его настройки необходимо завести каталог '''/etc/net/ifaces/br0''' и создать там файлы со следующими данными:
3. Копируем настройки сетевого интерфейса в каталог моста
# cp /etc/net/ifaces/enp0s3/* /etc/net/ifaces/vmbr0/


  # mkdir /etc/net/ifaces/br0
4.Удаляем у сетевогог интерфейса файлы ipv4address, ipv4route и resolv.conf, оставляя при этом файл options
# cd /etc/net/ifaces/br0
  # rm -f /etc/net/ifaces/enp0s3/{i,r}*
# mcedit brctl


<pre> stp AUTO on </pre>
5.Приводим файл options в /etc/net/ifaces/vmbr0/ к следующему виду:
<pre>
BOOTPROTO=static
CONFIG_WIRELESS=no
CONFIG_IPV4=yes
HOST='enp0s3'
ONBOOT=yes
TYPE=bri
</pre>
'''Последовательность строго соблюдать!'''


# mcedit ipv4address
Имя интерфейса, обозначенного здесь как enp0s3, следует указать в соответствии с реальной конфигурацией сервера.


<pre> 192.168.100.200/24 </pre>
IP-адрес для интерфейса будет взят из <code>/etc/net/ifaces/enp0s3/ipv4address</code>.


# mcedit options
В опции HOST нужно указать те интерфейсы, которые будут входить в мост. Если в него будут входить интерфейсы, которые до этого имели IP-адрес (например, enp0s3), то этот адрес должен быть удален (например, можно закомментировать содержимое файла <code>/etc/net/ifaces/enp0s3/ipv4address</code>).


<pre> TYPE=bri
6.Перезапускаем сервис Network
HOST='eth0 tap0'
BOOTPROTO=static </pre>


*Содержимое файла <tt>brctl</tt> передаётся утилите brctl. <tt>AUTO</tt> означает, что скрипт {{cmd|setup-bri}} самостоятельно определит имя bridge-интерфейса. Если в вашей сети этот мост один и рассылать пакеты протокола STP не нужно, тогда файл brctl с указанной опцией не нужен. По умолчанию STP выключен
# service network restart
*IP-адрес для интерфейса, как обычно, будет взят из файла <tt>ipv4address</tt>.
*В опции <tt>HOST</tt> файла <tt>options</tt> нужно указать те интерфейсы, которые будут входить в мост. Если в него будут входить интерфейсы, которые до этого имели IP-адрес (например, eth0), то этот адрес должен быть удалён (например, можно закомментировать содержимое файла {{path|ifaces/eth0/ipv4address}}).


==systemd-networkd==
==Что у нас по итогу==
<pre>
ifaces
|--vmbr0
|  |--ipv4address
|  |--resolv.conf
|  |--options
|  `--ipv4route
`--enp0s3
  `--options
</pre>


==NetworkManager==
*vmbr0-->ipv4address
Создаем мост с выключенным STP:
<pre>
# nmcli connection add type '''bridge''' ifname '''br0''' stp '''no'''
192.168.0.133/24
</pre>


Добавляем интерфейс enp30s0 в мост:
*vmbr0-->resolv.conf
<pre>
search alt.ru
nameserver 192.168.0.10 192.168.0.1
</pre>


# nmcli connection add type '''bridge-slave''' ifname '''enp30s0''' master '''br0'''
*vmbr0-->options
<pre>
BOOTPROTO=static
CONFIG_WIRELESS=no
CONFIG_IPV4=yes
HOST='enp0s3'
ONBOOT=yes
TYPE=bri
</pre>


Отключаем существующие подключения. (см. '''nmcli connection show --active'''):
*vmbr0-->ipv4route.conf
<pre>
default via 192.168.0.15
</pre>


# nmcli connection down '''Connection'''
*enp0s3-->options
<pre>
TYPE=eth
DISABLED=no
NM_CONTROLLED=no
CONFIG_IPV4=YES
</pre>


Делаем активным новый мост:
Источник: [[PVE#Настройка_сетевой_подсистемы|PVE]]
 
# nmcli connection up '''bridge-br0'''
 
==iproute2==
===Создание моста===
Создаем мост:
# ip link add '''br0''' type '''bridge'''
# ip link set '''br0''' up
 
Удостоверяемся, что мост создан:
# ip link show type '''bridge'''
 
Включаем интерфейс, который будет добавлен в мост:
# ip link set '''eth0''' up
 
Добавляем сетевой интерфейс в мост:
# ip link set '''eth0''' master '''br0'''
 
Настраиваем IP-адрес моста
# ip address add dev '''br0''' 192.168.0.90/24
Проверяем:
# ip addr show '''br0'''
 
===Удаление моста===
Вывод из моста:
# ip link set '''eth0''' nomaster
 
Отключение интерфейса:
# ip link set '''eth0''' down
 
Удаление моста:
 
# ip link delete '''br0''' type '''bridge'''
 
[https://wiki.archlinux.org/title/Network_bridge#With_iproute2 [i]]
 
==Alterator==
См. [[alterator-net-bridge]].
{{Category navigation|title=Начинающему системному администратору|category=Начинающему системному администратору|sortkey={{SUBPAGENAME}}}}
{{Category navigation|title=Начинающему системному администратору|category=Начинающему системному администратору|sortkey={{SUBPAGENAME}}}}

Текущая версия от 12:50, 3 августа 2022

Примечание: Обратите внимение, что это не официальная документация, а попытка начинающего админа объяснить материал начинающим админам.


В данной статье будет расписано как новичку создать сетевой мост с помощью EtcNet.

Создание интерфейса

Имя интерфейса будет vmbr0.

1. Первым делом настраиваем сеть с помощью Etcnet. (В нашем примере у интерфейса идентификатор enp0s3 вместо eth0)

2. Создаем каталог для интерфейса моста, у которого будет идентификатор vmbr0

# mkdir /etc/net/ifaces/vmbr0

3. Копируем настройки сетевого интерфейса в каталог моста

# cp /etc/net/ifaces/enp0s3/* /etc/net/ifaces/vmbr0/

4.Удаляем у сетевогог интерфейса файлы ipv4address, ipv4route и resolv.conf, оставляя при этом файл options

# rm -f /etc/net/ifaces/enp0s3/{i,r}* 

5.Приводим файл options в /etc/net/ifaces/vmbr0/ к следующему виду:

BOOTPROTO=static
CONFIG_WIRELESS=no
CONFIG_IPV4=yes
HOST='enp0s3'
ONBOOT=yes
TYPE=bri

Последовательность строго соблюдать!

Имя интерфейса, обозначенного здесь как enp0s3, следует указать в соответствии с реальной конфигурацией сервера.

IP-адрес для интерфейса будет взят из /etc/net/ifaces/enp0s3/ipv4address.

В опции HOST нужно указать те интерфейсы, которые будут входить в мост. Если в него будут входить интерфейсы, которые до этого имели IP-адрес (например, enp0s3), то этот адрес должен быть удален (например, можно закомментировать содержимое файла /etc/net/ifaces/enp0s3/ipv4address).

6.Перезапускаем сервис Network

# service network restart

Что у нас по итогу

ifaces
|--vmbr0
|  |--ipv4address
|  |--resolv.conf
|  |--options
|  `--ipv4route
`--enp0s3
   `--options
  • vmbr0-->ipv4address
192.168.0.133/24
  • vmbr0-->resolv.conf
search alt.ru
nameserver 192.168.0.10 192.168.0.1
  • vmbr0-->options
BOOTPROTO=static
CONFIG_WIRELESS=no
CONFIG_IPV4=yes
HOST='enp0s3'
ONBOOT=yes
TYPE=bri
  • vmbr0-->ipv4route.conf
default via 192.168.0.15
  • enp0s3-->options
TYPE=eth
DISABLED=no
NM_CONTROLLED=no
CONFIG_IPV4=YES

Источник: PVE