systemd-networkd가 IPv6 RA *경로*를 허용하지만 *주소*를 자동으로 할당하지 않도록 할 수 있습니까?

systemd-networkd가 IPv6 RA *경로*를 허용하지만 *주소*를 자동으로 할당하지 않도록 할 수 있습니까?

네트워크가 있고 radvd서버가 kea-dhcp6실행 중입니다. 클라이언트가 실행 중이고 systemd-networkd(현재 Debian 안정) 다음을 수행합니다.

[Network]
IPv6AcceptRA=true
DHCP=yes

원하는 동작은 DHCPv6의 주소와 RA의 경로로 클라이언트를 구성하는 것입니다. 현재 이 구성을 사용하면 클라이언트는 DHCP에서 올바른 IP 주소, 자동 생성/자동 할당 global dynamic mngtmpaddr noprefixroute주소 및 올바른 경로를 얻습니다.

default proto static metric 1024
        nexthop via fe80::20d:b9ff:fe54:2d18 dev eno1 weight 1 pref medium

지루한 이유로 시스템이 DHCPv6 할당 주소를 소스 주소로 선호하기를 원합니다. 내가 아는 한, 이 주소를 "집" 주소로 설정하거나 이 주소를 사용 가능한 유일한 주소로 설정하면 이를 달성할 수 있습니다. 현재 DHCP 획득 주소에 플래그를 설정하는 것이 systemd-networkd불가능하다는 사실을 발견했기 home때문에 후자를 수행하는 방법을 알아내려고 노력 중입니다.

문제는 이것을 설정하면 IPv6AcceptRA=false주소가 제거되지만 기본 LL 주소 라우팅도 제거되어 다른 많은 것들이 중단된다는 것입니다.

RA가 LL 경로를 할당했지만 함께 제공되는 자동 구성 주소를 갖지 않는 방법이 있습니까?

답변1

가장 좋은 솔루션은 전체 네트워크에 대해 주소 자동 구성을 비활성화할지 아니면 하나의 장치에 대해서만 주소 자동 구성을 비활성화할지에 따라 다릅니다.

radvd전체 네트워크의 경우 공지에서 "자율성" 플래그를 설정하지 않도록 알 수 있습니다 . 이렇게 하면 네트워크의 모든 시스템이 자동으로 자체 주소를 생성하는 것을 방지할 수 있습니다. 이 옵션을 사용할 수 있습니다 AdvAutonomous.

커널 수준 클라이언트에서 이를 설정하려면 커널에 자체 주소를 생성하지 않도록 지시해야 합니다. 가장 쉬운 방법은 /etc/sysctl.d/10-ipv6-autoconf.conf다음을 사용하여 만드는 것입니다.

net.ipv6.conf.all.autoconf = 0
net.ipv6.conf.default.autoconf = 0

이 파일은 다시 시작할 때마다 처리됩니다. runnint를 통해 수동으로 새 설정을 활성화할 수 있습니다 sudo sysctl --system.

다음을 사용하려면 systemd-networkd작동해야 하지만 직접 시도하지는 않았습니다.

[Network]
IPv6AcceptRA=true
DHCP=yes

[IPv6AcceptRA]
UseAutonomousPrefix=false

관련 정보