Чтобы обеспечить «переключение» на сервере, вы можете создать простой HTTP-модуль, который будет перехватывать каждый запрос, проверять запрошенный URL-адрес и затем пересылать их по мере необходимости. Все, что должен сделать ваш модуль, это обработать событие OnBeginRequest и затем переслать запрос. Таким образом, вы можете иметь неограниченное количество поддоменов.
Также может потребоваться добавить пустой заголовок хоста, чтобы любые запросы на субдомены, не перечисленные в списке, перенаправлялись на соответствующий веб-сайт по умолчанию
Если вы не знакомы с ними, модули очень просты в создании и работе с ними.
Вот ссылка на очень похожую реализацию Брендана Томпкинса:
http://codebetter.com/blogs/brendan.tompkins/archive/2006/06/27/146875.aspx
Вы также можете выполнить некоторую перезапись URL в модуле, если вам нужно определенное поведение URL-адреса.