Files
2026-05-31 10:18:48 +03:00

3.8 KiB

status, type, tags, created, updated, aliases
status type tags created updated aliases
stable concept
devops
containerization
docker
2025-12-17 2026-05-07
Network Drivers - Docker

Network Drivers - Docker

При работе с docker возникает необходимость обеспечить работу контейнеров в сети:

  • настройка правил маршрутизации (iptables)
  • формирование пакетов
  • инкапсуляция пакетов
  • шифрование и безопасность

Для этого используются Network Drivers

Сетевых драйверов поддерживаются несколько вариаций, каждый из них способен обеспечить все основные функции:

  • bridge (мост)
  • host
  • overlay
  • macvlan
  • none
  • 3rd-party plugins

Bridge

Объединение контейнеров в bridge-сеть:

  • контейнеры обьеденены в сеть
  • контейнеры в сети имеют связь друг с другом
  • контейнеры из другой сети не имеют сетевой связности
  • используется в docker по умолчанию

Host

Использует сеть хоста (удаляется сетевая изоляция)

  • удаляет сетевую изоляцию между контейнером и хостом
  • возможны проблемы с занятым портов, сетевыми ограничениями хостовой сети (поддерживается только в Linux)

Overlay

Создание сети для объединения контейнеров на разных хостах путем создания оверлейной сети

  • не поддерживает шифрование на win-хостах

MacVLAN

Работа с контейнерами, как с физическими устройствами

  • присваивает каждому контейнеру в сети физический MAC-адрес
  • позволяет обращаться к контейнеру как к настоящему устройству
  • поддерживается только в Linux

None

Отключение всех сетей в контейнере

  • может быть использован для изоляции контейнера

Работа С Bridge-сетями

Docker по умолчанию использует bridge-сеть, так как он позволяет добиться большей изоляции от внешних сетей хоста.

Контейнеры внутри одного "бриджа" не имеют доступа к другим из других бридж сетей.

Если нам нужна гибкая настройка сети внутри самого контейнера, потребуются доп. capabilities (например, CAP_NET_ADMIN)

В качестве альтернативы можно рассмотреть CNI-плагины (сторонние - 3rd-party)

Связанные заметки

  • Модель OSI — bridge/overlay/macvlan реализуют концепции L2/L3 из модели OSI; iptables работает на L3/L4
  • VLAN - Base — bridge-изоляция контейнеров ≈ VLAN-изоляция устройств: разные бриджи не видят друг друга, как разные VLAN
  • VPN — overlay-сеть реализует принцип VPN: инкапсуляция трафика одной сети поверх другой
  • Сегментация сети — изоляция контейнеров по bridge-сетям = программная сегментация сети