Какой типичный запрос к вашей таблице?
Попробуйте использовать hashmap, это может быть быстрее для больших таблиц.
Как вы храните имена и IP? UTF, строка, символ *? IP как uint32 или строка?
Для структуры только для чтения с большим количеством запросов на чтение вы можете использовать несколько потоков.
обн: используйте std::unordered_multimap
из #include <tr1/unordered_map>