Если вам по силам написать сам чат, то реализовать разделение по кномнатам можно навскидку несколькими способами:
1) предположить, что на каждом роутере сеть C-класса и делить людей по первым трем цифрам IP-адреса
2) каким-либо образом узнать структуру сети и использовать эту информацию для деления
3) руками проверять информацию по каждому клиенту, например, с помощью tracepath (tracert) и делалть вывод на основе последних узлов