Чем больше я думаю, тем интереснее кажется задачка.

Готового решения не предложу, а мысли пока такие.
Если возможности канала между офисами позволяют, можно вообще потребовать от мобильных клиентов всегда коннектиться по VPN. Тогда сама проблема вырождается в ноль.
Если нет… Завести общую DNS зону с передачей между серверами.
Дальше, если есть возможность выполнять скрипты по событию назначения клиенту адреса, то менять в зоне привязку клиента. Либо A <IP>, если подключен через VPN, либо CNAME на локальное имя, ресолвящееся в конкретный адрес в одной или другой сети.
Если нет… ну тут можно хитрить и изворачиваться до посинения. Но смысл решения остаётся тот же. Определить наличие клиента в определённой сети и прописать его в зоне.