Esta resposta sugeriu o uso de Netprofiles para um problema semelhante:
Features * Save your network settings as profiles. * Automatically activate wireless profiles when specified wireless connections are detected. (XP only) * Change IP Address, Subnet Mask, Default Gateway, Primary and Secondary DNS Servers, WINS Server, and DHCP settings with the click of a button. * Specifiy different mapped drives for each profile. * Change your default printer based on which profile you're currently using. * Automatically change your profile via program shortcuts created with Net Profiles. * Change the default homepage for Internet Explorer, Firefox, and Opera. * Proxy settings for Internet Explorer, Firefox, and Opera. * Run a user-defined list of programs when a profile is activated. * Maintain seperate desktop wallper for each profile. * Change screen resolutions and color quality when profiles are activated. * Can be easily translated into other languages using the enclosed XML language file.
Nesse caso, você pode executar um script que alterne em um arquivo HOSTS (C: \ Windows \ system32 \ drivers \ etc \ hosts) que inclua os sites que você deseja ignorar como aliases localhost Por exemplo:
# restrict access to certain sites without a firewall
127.0.0.1 my-ignored-site-1.com
127.0.0.1 my-ignored-site-2.com
127.0.0.1 my-ignored-site-3.com
Provavelmente, a maneira mais fácil de fazer isso é criar dois (ou mais) arquivos HOSTS de backup, digamos, HOSTS.normal e HOSTS.restricted, e colocar essas entradas em HOSTS.restricted. Em seguida, seu script pode copiar HOSTS com o arquivo HOSTS.restricted quando o Netprofiles detecta uma rede restrita, e outro script copia HOSTS com o HOSTS.normal quando o Netprofiles detecta uma rede normal.