Deaktivieren des Annehmens von RA

Aus Xinux Wiki
Zur Navigation springen Zur Suche springen

Deaktivieren des Annehmens von Router Advertisements (RA)

Windows

Alle Befehle in einer Konsole mit Administratorrechten ausführen. Die Einstellungen sind standardmäßig persistent.

netsh

Deaktivieren
  • netsh interface ipv6 set interface "Ethernet" routerdiscovery=disabled
Wieder aktivieren
  • netsh interface ipv6 set interface "Ethernet" routerdiscovery=enabled
Kontrolle (Zeile "Routererkennung" / "Router Discovery")
  • netsh interface ipv6 show interface "Ethernet"

PowerShell

Schnittstellen und aktuellen Zustand anzeigen
  • Get-NetIPInterface -AddressFamily IPv6 | Format-Table InterfaceAlias,InterfaceIndex,RouterDiscovery
Deaktivieren
  • Set-NetIPInterface -InterfaceAlias "Ethernet" -AddressFamily IPv6 -RouterDiscovery Disabled
Deaktivieren auf allen Schnittstellen
  • Get-NetIPInterface -AddressFamily IPv6 | Set-NetIPInterface -RouterDiscovery Disabled
Wieder aktivieren
  • Set-NetIPInterface -InterfaceAlias "Ethernet" -AddressFamily IPv6 -RouterDiscovery Enabled
Bereits gelernte Default-Route entfernen
  • Remove-NetRoute -InterfaceAlias "Ethernet" -AddressFamily IPv6 -DestinationPrefix "::/0" -Confirm:$false
Kontrolle der Default-Route
  • Get-NetRoute -AddressFamily IPv6 -DestinationPrefix "::/0"

Linux

sysctl (Kernel)

Gilt nur, wenn die Schnittstelle nicht von NetworkManager, systemd-networkd oder netplan verwaltet wird (siehe unten).

Deaktivieren (sofort, nicht persistent)
  • sudo sysctl -w net.ipv6.conf.eth0.accept_ra=0
Deaktivieren für alle später hinzukommenden Schnittstellen
  • sudo sysctl -w net.ipv6.conf.default.accept_ra=0
Deaktivieren auch nach einem Neustart
  • echo "net.ipv6.conf.eth0.accept_ra = 0" | sudo tee /etc/sysctl.d/90-no-ra.conf
  • echo "net.ipv6.conf.default.accept_ra = 0" | sudo tee -a /etc/sysctl.d/90-no-ra.conf
  • sudo sysctl --system
Achtung
  • echo ... > /etc/sysctl.conf überschreibt die komplette Datei! Besser eine eigene Datei unter /etc/sysctl.d/ anlegen.
Kontrolle
  • sysctl net.ipv6.conf.eth0.accept_ra
Bereits gelernte Routen entfernen
  • sudo ip -6 route flush proto ra
Bedeutung der Werte von accept_ra
  • 0 = RA ignorieren
  • 1 = RA annehmen, aber nur wenn forwarding=0 (normaler Host)
  • 2 = RA annehmen, auch wenn forwarding=1 (Router)
Nur SLAAC-Adressen abschalten, Default-Route per RA aber behalten
  • sudo sysctl -w net.ipv6.conf.eth0.autoconf=0

NetworkManager (Rocky, RHEL, Fedora)

NetworkManager verarbeitet RA selbst im Userspace und setzt accept_ra im Kernel auf 0. Ein sysctl-Eintrag hat hier also keine Wirkung, entscheidend ist ipv6.method.

Statische Konfiguration, RA wird ignoriert
  • nmcli connection modify ens18 ipv6.method manual ipv6.addresses 2001:db8:1::10/64 ipv6.gateway 2001:db8:1::1
  • nmcli connection up ens18
Automatische Adresse behalten, aber keine Routen aus RA übernehmen
  • nmcli connection modify ens18 ipv6.ignore-auto-routes yes
  • nmcli connection up ens18
IPv6 auf der Verbindung komplett abschalten
  • nmcli connection modify ens18 ipv6.method disabled
  • nmcli connection up ens18
Kontrolle
  • nmcli -f ipv6.method,ipv6.addresses,ipv6.gateway,ipv6.ignore-auto-routes connection show ens18

systemd-networkd

In der .network-Datei, z.B. /etc/systemd/network/10-eth0.network
[Match]
Name=eth0

[Network]
Address=2001:db8:1::10/64
Gateway=2001:db8:1::1
IPv6AcceptRA=no
Übernehmen
  • sudo networkctl reload
  • sudo networkctl reconfigure eth0

Debian ifupdown (/etc/network/interfaces)

iface eth0 inet6 static
    address 2001:db8:1::10/64
    gateway 2001:db8:1::1
    accept_ra 0
Übernehmen
  • sudo ifdown eth0 && sudo ifup eth0

Netplan (Ubuntu)

z.B. /etc/netplan/01-netcfg.yaml
network:
  version: 2
  ethernets:
    eth0:
      accept-ra: false
      addresses:
        - 2001:db8:1::10/64
      routes:
        - to: default
          via: 2001:db8:1::1
Übernehmen
  • sudo netplan apply

FreeBSD / OPNsense

Deaktivieren (sofort)
  • ifconfig em0 inet6 -accept_rtadv
Deaktivieren auch nach einem Neustart (/etc/rc.conf)
  • ifconfig_em0_ipv6="inet6 2001:db8:1::10/64 -accept_rtadv"
OPNsense
  • Schnittstellen -> [Interface] -> IPv6-Konfigurationstyp auf "Statisches IPv6" stellen

Hinweis

  • Das Abschalten verhindert nur das Lernen neuer Informationen. Bereits per SLAAC vergebene Adressen bleiben bis zum Ablauf ihrer Lifetime bzw. bis zum Neustart der Schnittstelle bestehen.
  • Hintergrund für Sicherheitskurse: Gefälschte RA (z.B. mit fake_router6 aus dem THC-IPv6-Toolkit) sind ein klassischer MITM-Angriff. Auf Switch-Ebene schützt RA-Guard.