← До фільтрів та технологій

← До списку лабораторних по Docker

Docker Лабораторна 35: Macvlan для окремих ip

Технологія: Docker

Номер лабораторної: 35 · Рівень: middle

Тема: Macvlan мережі в Docker

Повний опис / сценарій лабораторної:

Мета: зрозуміти як працює macvlan мережа і коли її доцільно використовувати.



Крок 1. Визначити фізичний інтерфейс хоста.

Команда: ip addr

Пояснення: наприклад eth0 або enp3s0.



Крок 2. Вибрати підмережу і шлюз які вже використовуються у локальній мережі.

Пояснення: наприклад 192.168.1.0/24.



Крок 3. Створити macvlan мережу.

Команда: docker network create -d macvlan --subnet=192.168.1.0/24 --gateway=192.168.1.1 -o parent=eth0 lab35-mac

Пояснення: заміни eth0 і параметри на реальні для свого стенду.



Крок 4. Запустити контейнер у macvlan мережі.

Команда: docker run -d --name mac-test --network lab35-mac busybox sh -c "while true; do sleep 3600; done"



Крок 5. Дізнатися ip контейнера.

Команда: docker inspect mac-test --format "{{.NetworkSettings.Networks.lab35-mac.IPAddress}}"

Пояснення: контейнер отримує ip з тієї ж підмережі що і хост.



Крок 6. Спробувати ping з іншого хоста у тій же мережі до цього ip.

Пояснення: якщо налаштування коректні контейнер буде доступним напряму.



Крок 7. Перевірити можливість доступу з хоста до контейнера.

Пояснення: для macvlan за замовчуванням хост і контейнери можуть не бачити один одного.



Крок 8. Ознайомитися з режимом macvlan bridge і коригуванням маршрутів.

Пояснення: можливо знадобиться додатковий macvlan інтерфейс на хості.



Крок 9. Видалити тестовий контейнер і мережу.

Команда: docker rm -f mac-test; docker network rm lab35-mac



Крок 10. Міні звіт.

Завдання: опиши коли macvlan виправданий а коли краще лишитися на bridge та прокиданні портів.