@ECHO OFF CLS Rem gerando DUID baseado no MAC da maquina e desabilitando privacidade Rem isso permite que o DHCPV6 utilize o mesmo MAC ja utilizado no DHCP V4 REm getmac Baseado na ideia do Darcio Arantes Rem Rem vai pegar o endereco da primeira interface, caso queira uma especifica passar o filtro rem como primeiro parametro na linha de comando REM Mostra todos macs como referencia getmac /NH /FO CSV /V REM FINDSTR : https://technet.microsoft.com/en-us/library/bb490907.aspx REM tenta deixar somente as interfaces de rede local, mas ignora vpn, em algumas maquinas tem interface "Ethernet" (aparentemente os WIN8) SET MAC= if not "%1"=="" ( for /f "tokens=3 delims=," %%A IN ('getmac /NH /FO CSV /V ^| findstr -i %1 ') DO SET MAC=%%A ) if "%MAC%"=="" ( for /f "tokens=3 delims=," %%A IN ('getmac /NH /FO CSV /V ^| findstr -i local ^| findstr /v /i vpn ') DO SET MAC=%%A ) if "%MAC%"=="" ( for /f "tokens=3 delims=," %%A IN ('getmac /NH /FO CSV /V ^| findstr -i ethernet ^| findstr /v /i vpn ') DO SET MAC=%%A ) if "%MAC%"=="" ( echo "NAO foi possivel detectar MAC address da placa de rede" exit ) rem TODO aqui deveria gerar essa parte inicial, mas ficou utilizando um rem o modelo padrao para nao ter que ficar fazendo as contas no cmd do rem windows set duidprefix=00010001182F8629 set duid_gerado=%duidprefix%%MAC:~1,2%%MAC:~4,2%%MAC:~7,2%%MAC:~10,2%%MAC:~13,2%%MAC:~16,2% for /f "tokens=3 delims= " %%A IN ('reg query HKLM\SYSTEM\CurrentControlSet\Services\Tcpip6\Parameters /v Dhcpv6DUID') DO SET duid=%%A echo DUID Gerado %duid_gerado% echo DUID Existente %duid% echo DUID_GERADO: %duid_gerado:~15,12% DUID_CONFIGURADO: %duid:~15,12% if %duid_gerado:~15,12%==%duid:~15,12% ( echo IGUAIS ) ELSE ( echo diferentes reg delete HKLM\SYSTEM\CurrentControlSet\Services\Tcpip6\Parameters /f /v Dhcpv6DUID reg add HKLM\SYSTEM\CurrentControlSet\Services\Tcpip6\Parameters /v Dhcpv6DUID /t REG_BINARY /d %duid_gerado% reg query HKLM\SYSTEM\CurrentControlSet\Services\Tcpip6\Parameters /v Dhcpv6DUID ) netsh int ipv6 install REM Desabilita privacidade netsh interface ipv6 set global randomizeidentifiers=disabled REM Desabilita Teredo e tuneis ipv6 netsh int ipv6 isatap set state disabled netsh int ipv6 6to4 set state disabled REM desabilita teredo (duas formas para versoes diferentes do windows) netsh int ipv6 set teredo disable netsh interface teredo set state disable