Deaktivieren des Annehmens von RA: Unterschied zwischen den Versionen
Zur Navigation springen
Zur Suche springen
Die Seite wurde neu angelegt: „=Windows= *netsh interface ipv6 set interface "Schnittstellenname" routerdiscovery=disable =Linux= ;Deaktivieren *sudo sysctl -w net.ipv6.conf.interface.accept…“ |
Keine Bearbeitungszusammenfassung |
||
| Zeile 1: | Zeile 1: | ||
=Deaktivieren des Annehmens von Router Advertisements (RA)= | |||
=Windows= | =Windows= | ||
*netsh interface ipv6 set interface " | 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= | =Linux= | ||
;Deaktivieren | ==sysctl (Kernel)== | ||
*sudo sysctl -w net.ipv6.conf. | 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 | ;Deaktivieren auch nach einem Neustart | ||
*echo net.ipv6.conf. | *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 | |||
<pre> | |||
[Match] | |||
Name=eth0 | |||
[Network] | |||
Address=2001:db8:1::10/64 | |||
Gateway=2001:db8:1::1 | |||
IPv6AcceptRA=no | |||
</pre> | |||
;Übernehmen | |||
*sudo networkctl reload | |||
*sudo networkctl reconfigure eth0 | |||
==Debian ifupdown (/etc/network/interfaces)== | |||
<pre> | |||
iface eth0 inet6 static | |||
address 2001:db8:1::10/64 | |||
gateway 2001:db8:1::1 | |||
accept_ra 0 | |||
</pre> | |||
;Übernehmen | |||
*sudo ifdown eth0 && sudo ifup eth0 | |||
==Netplan (Ubuntu)== | |||
;z.B. /etc/netplan/01-netcfg.yaml | |||
<pre> | |||
network: | |||
version: 2 | |||
ethernets: | |||
eth0: | |||
accept-ra: false | |||
addresses: | |||
- 2001:db8:1::10/64 | |||
routes: | |||
- to: default | |||
via: 2001:db8:1::1 | |||
</pre> | |||
;Ü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. | |||
Aktuelle Version vom 7. Oktober 2026, 06:30 Uhr
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.