systemd-networkd 클라이언트 식별자 BATMAN Mesh를 사용한 DHCP 서버 및 클라이언트 DUID 할당

systemd-networkd 클라이언트 식별자 BATMAN Mesh를 사용한 DHCP 서버 및 클라이언트 DUID 할당

커널 5.15와 시스템 버전 250.5+를 실행하는 Linux 시스템이 3대 있습니다.

SystemD에서 관리하는 DHCP 서버를 사용하여 BATMAN 그리드 마스터로 실행되는 상자 하나가 있고 나머지 두 개는 그리드 클라이언트입니다.

DHCP 서버가 Mac 주소를 기반으로 메시 클라이언트에 IP 주소를 할당하기를 원합니다. IAID/DUID를 기반으로 IP를 할당하는 것을 원하지 않습니다. 이렇게 하려면 문서에 다음을 사용하라고 나와 있습니다.client_id=mac, 난 끝냈어. 문제는 내 클라이언트에 여러 개의 IP 주소가 할당되어 있다는 것입니다. 일부는 Mac 주소를 기반으로 하고 일부는 분명히 DUID를 기반으로 합니다.

BATMAN을 사용하여 클라이언트 식별자 mac만 존중하도록 systemd-networkd에서 DHCP 서버를 어떻게 구성합니까? 감사해요.

마스터의 bat0.network 파일은 다음과 같습니다.

root@mesh-master:/etc/systemd/network# cat bat0.network
[Match]
Name=bat0

[Network]
Address=10.10.10.1/24
DHCPServer=true

[DHCPV4]
DUIDType=link-layer
ClientIdentifier=mac

[DHCPServer]
PoolOffset=10
PoolSize=8
EmitsDNS=yes
DNS=8.8.8.8
EmitNTP=yes
NTP=10.10.10.1

Networkctl 그리드 기본 상태:

root@mesh-master:~# networkctl status bat0
● 6: bat0
                     Link File: n/a
                  Network File: /etc/systemd/network/bat0.network
                          Type: ether
                         State: routable (configured)
                  Online state: online
                        Driver: B.A.T.M.A.N. advanced
              Hardware Address: 66:4e:8d:94:88:b7
                           MTU: 1500 (min: 68, max: 1500)
                         QDisc: noqueue
  IPv6 Address Generation Mode: eui64
          Queue Length (Tx/Rx): 1/1
                       Address: 10.10.10.1
                                169.254.12.198
                                fe80::644e:8dff:fe94:88b7
                                fe80::d061:ecd7:c3fd:aef1
             Activation Policy: up
           Required For Online: yes
             DHCP6 Client DUID: DUID-EN/Vendor:0000ab113a78856d82eaf5680000
           Offered DHCP leases: 10.10.10.13 (to a6:d2:9c:dc:0c:61)
                                10.10.10.14 (to IAID:0x9cdc0c61/DUID)
                                10.10.10.17 (to IAID:0x127060c/DUID)
                                10.10.10.15 (to IAID:0x127060c/DUID)
                                10.10.10.12 (to 5a:e6:01:27:06:0c)
                                10.10.10.16 (to IAID:0x127060c/DUID)

클라이언트 네트워크 파일(bat0.network):

root@mesh-client:~# cat /etc/systemd/network/bat0.network
[Match]
Name=bat0

[Network]
DHCP=ipv4

[DHCP]
ClientIdentifier=mac

그리드 클라이언트의 Networkctl 상태 bat0:

root@mesh-client:~# networkctl status bat0 -l
● 6: bat0
                     Link File: n/a
                  Network File: /etc/systemd/network/bat0.network
                          Type: ether
                         State: routable (configured)
                  Online state: online
                        Driver: B.A.T.M.A.N. advanced
              Hardware Address: a6:d2:9c:dc:0c:61
                           MTU: 1500 (min: 68, max: 1500)
                         QDisc: noqueue
  IPv6 Address Generation Mode: eui64
          Queue Length (Tx/Rx): 1/1
                       Address: 10.10.10.13 (DHCP4 via 10.10.10.1)
                                10.10.10.14
                                fe80::1273:a607:f897:6bd3
                                fe80::a4d2:9cff:fedc:c61
                       Gateway: 10.10.10.1
                                10.10.10.1
                           DNS: 8.8.8.8
                           NTP: 10.10.10.1
             Activation Policy: up
           Required For Online: yes
                     Time Zone: UTC
               DHCP4 Client ID: a6:d2:9c:dc:0c:61
             DHCP6 Client DUID: DUID-EN/Vendor:0000ab11482afb1e3d85f23a0000

Mar 30 16:06:07 iot-gate-imx8plus systemd-networkd[459]: bat0: Link UP
Mar 30 16:06:07 iot-gate-imx8plus systemd-networkd[459]: bat0: Gained carrier
Mar 30 16:06:09 iot-gate-imx8plus systemd-networkd[459]: bat0: Gained IPv6LL
Mar 30 16:06:15 iot-gate-imx8plus systemd-networkd[459]: bat0: DHCPv6 lease lost
Mar 30 16:06:16 iot-gate-imx8plus systemd-networkd[726]: bat0: netdev ready
Mar 30 16:06:16 iot-gate-imx8plus systemd-networkd[726]: bat0: Link UP
Mar 30 16:06:16 iot-gate-imx8plus systemd-networkd[726]: bat0: Gained carrier
Mar 30 16:06:16 iot-gate-imx8plus systemd-networkd[726]: bat0: Gained IPv6LL
Mar 30 16:06:16 iot-gate-imx8plus systemd-networkd[726]: bat0: netdev exists, using existing without changing its parameters
Mar 30 16:06:47 iot-gate-imx8plus systemd-networkd[726]: bat0: DHCPv4 address 10.10.10.13/24, gateway 10.10.10.1 acquired from 10.10.10.1

관련 정보