systemd-networkd: 호스트 MAC을 기반으로 VLAN 장치 MAC 설정

systemd-networkd: 호스트 MAC을 기반으로 VLAN 장치 MAC 설정

저는 스위치 IC에 직접 연결된 CPU에 MAC이 있는 Linux를 실행하는 ARM CPU를 사용하여 플랫폼을 개발 중입니다. systemd-networkd를 사용하여 VLAN 모드를 설정하려고 하는데 성공적으로 완료했습니다. 그러나 생성된 VLAN 포트의 MAC 주소는 무작위이므로 이상적이지 않습니다. 관련 .link 파일에서 MACAddressPolicy=persist를 사용하면 영구 MAC 주소가 있지만, 부팅할 때마다 MAC 주소가 무작위로 제공됩니다.

그러나 CPU에는 두 개의 MAC 주소가 할당됩니다. 내가 하고 싶은 것은 할당된 첫 번째 MAC 주소(eth0 장치로 설정)를 찾아 해당 MAC를 eth0.1에 할당한 다음 해당 MAC +1을 eth0.2에 할당하는 것입니다. systemd를 통해 이를 수행할 수 있는 방법이 있습니까? 네트워크 또는 udev로 이를 수행하는 쉬운 방법은 무엇입니까? 또한 수천 개의 완성된 장치에 설치할 수 있고 각 장치의 .network 파일을 수정하는 대신 systemd-netorkd가 모든 것을 자동으로 처리하도록 할 수 있는 설정이 필요합니다.

관련 정보