Files
docs/infrastructure/networking/Docker Networking/Creating a Macvlan Sub Interface for Docker.md
Nicole Rappe daf24d7480
All checks were successful
GitOps Automatic Documentation Deployment / Sync Docs to https://kb.bunny-lab.io (push) Successful in 5s
GitOps Automatic Documentation Deployment / Sync Docs to https://docs.bunny-lab.io (push) Successful in 7s
Mass-File and Folder Renaming
2026-02-24 20:26:52 -07:00

1.2 KiB

tags
tags
Docker
Macvlan
Networking

Purpose: You may find that you only have one network adapter on a server / VM and need to have multiple virtual networks associated with it. For example, Home Assistant exists on the 192.168.3.0/24 network but it needs to also access devices on the 192.168.4.0/24 surveillance network. To facilitate this, we will make a MACVLAN Sub-Interface. This will make a virtual interface that is parented to the actual physical interface.

!!! info "Assumptions" It is assumed that you are running Rocky Linux (or CentOS / RedHat).

Create the Permanent Sub-Interface

You will begin with making a new interface, it will have the name macvlan0.

nmcli connection add type macvlan ifname surveillance dev ens18 mode bridge ipv4.method manual ipv4.addresses 192.168.4.100/24
nmcli connection up macvlan-surveillance
nmcli connection show

Bind a Docker Network to the Sub-Interface

Now you need to run the following command to allow docker to use this interface for the surveillance_network

docker network create -d macvlan --subnet=192.168.4.0/24 --gateway=192.168.4.1 -o parent=surveillance surveillance_network