Testar a rede interrompe o software

Tenho um programa de rede C ++ no Windows que gostaria de testar para desconectar a rede em vários momentos. Quais são minhas opções?

Atualmente sou:

Desconectando realmente o fio da rede da parte traseira do meu computador usando ipconfig / releaseUsando o cports programa para fechar completamente o soquete

Nenhum desses métodos é ideal para mim e eu gostaria de simular problemas de rede com mais facilidad

Gostaria que, às vezes, se conectasse a falhar, às vezes o soquete lesse para falhar e às vezes o soquete gravasse para falhar. Seria ótimo se houvesse algum utilitário que eu pudesse usar para emular esses tipos de problema

Também seria bom poder criar alguns testes de unidade automatizados enquanto esta má rede emulada estiver ativ

questionAnswers(4)

yourAnswerToTheQuestion