Deshabilite el cliente DHCPv6 en Windows

Deshabilite el cliente DHCPv6 en Windows

No entiendo muy bien el vínculo entre 4 parámetros relacionados con la configuración automática con y sin estado de IPv6 utilizada en el netsh int ipv6 set interfacecontexto de comando en Windows:

  • advertise
  • routerdescovery
  • managedaddress
  • otherstateful

Por lo que pude encontrar hasta ahora, entiendo que:

  • advertiseMse utiliza para indicar que el sistema operativo que contiene el indicador y Oconfigurado como managedaddressy otherstatefulpara esa interfaz en particular debe emitir/responder RA ; esto es relevante para un servidor.
  • routerdescoveryse usa para indicar que el sistema operativo debe solicitar/procesar RA en esa interfaz y usarlo para configurarse en función de los indicadores que tiene RA; if routerdescoveryestá habilitado managedaddressy otherstatefulson anulados por las banderas de RA; esto es relevante para un cliente

Mi pregunta es ¿qué pasa cuando advertisey routerdescoveryestán discapacitados?

Se podría pensar que en este caso, managedaddressy otherstatefuldetermina si el cliente DHCPv6 está habilitado o no en esa interfaz. Sin embargo, no parece ser así. Si los 4 parámetros están deshabilitados ( advertise, y ) routerdescovery, el cliente de Windows seguirá intentando comunicarse con un servidor DHCPv6.managedaddressotherstateful

Respuesta1

Después de muchos experimentos y muchos documentos y artículos ambiguos, he deducido eso managedaddressy otherstatefulson relevantes solo en conjunto con advertise(es decir, cuando habilita RA en su servidor Windows) y ayudan a configurar los indicadores My Oen los paquetes RA.

Si routerdescoveryestá habilitado y advertisedeshabilitado, ya no puede configurar managedaddresslos otherstatefulparámetros a través de netsh, pero tan pronto como llega un RA a la interfaz, estos dos parámetros se configuran automáticamente para que reflejen las banderas My Odel paquete RA llegado.

Independientemente de la configuración que se utilice, los mensajes de solicitud DHCPv6 siempre se envían en interfaces habilitadas para IPv6, incluso cuando se reciben paquetes RA con Mel indicador NO configurado. No pude encontrar una manera de desactivar DHCPv6 en Windows (supongo que Vista y superior; probé en 8.1). Si hay un servidor DHCPv6 en la red, obtendrá una dirección IPv6.

Afortunadamente, la mayoría de las redes utilizan una configuración automática sin estado (cada nodo se configura a sí mismo según el prefijo anunciado en el RA) en lugar de una configuración automática con estado en la que se negocia una dirección IPv6 con un servidor DHCPv6. Debido a que la mayoría de las redes no tienen estado, muchas personas pensaron que deshabilitarlas routerdiscoveryles impediría obtener direcciones IPv6 adicionales. Pero esto no es válido si hay un servidor DHCPv6 en la red.

Respuesta2

Sé que esta es una pregunta antigua, pero quería agregarla en caso de que fuera útil. El comando que uso para deshabilitar DHCPv6 y la detección de enrutadores para IPv6 en todas las interfaces de red de un sistema es el siguiente:

Set-NetIPInterface `
  -AddressFamily IPv6 `
  -InterfaceIndex $(Get-NetIpInterface -AddressFamily IPv6 | Select-Object -ExpandProperty InterfaceIndex) `
  -RouterDiscovery disabled `
  -Dhcp Disabled

Además de eso, también configuré un sistema para que prefiera IPv4 a IPv6. Es necesario reiniciar para que este cambio surta efecto.

New-ItemProperty "HKLM:\SYSTEM\CurrentControlSet\Services\Tcpip6\Parameters" -Name "DisabledComponents" -Value 0x20 -PropertyType "DWORD"
#If DisabledComponents exists, use the set cmdlet
Set-ItemProperty "HKLM:\SYSTEM\CurrentControlSet\Services\Tcpip6\Parameters\" -Name "DisabledComponents" -Value 0x20
#You need to reboot the computer in order for the changes to take effect
Restart-Computer

información relacionada