чтобы потом можно было подключаться к этому VPN и выходить в интернет под разными IP.
ВПН отвечает за канал связи между ВПН клиентом и ВПН сервером. Куда дальше идет трафик - это уже не его дело. Этим занимается стандартная процедура маршрутизации с помощью настроек таблицы маршрутизации, так же могут вклиниваться в процесс правила фаервола.
Вы можете на ВПН сервере в фаерволе прописать правило для пакетов в интернет, полученных через ВПН, форвардить на определенный интерфейс. Это правило можете менять вручную скриптом или еще по каким-то условиям.
Другой вариант - можно настроить 32 ВПНа (по 1 на каждый внешний адрес), каждый ВПН будет иметь свою подсеть, в фаерволе точно так же прописываются 32 правила для форвардинга пакетов полученных от соответствующего ВПНа на его интерфейс. В этом случае выбор адреса происходит на стороне клиента (подключаетесь к нужному ВПНу).
Вместо 32 ВПНов, можно использовать 32 разных клиента в одном ВПНе с фиксированными адресами. Суть в том, что бы в правиле фаервола вы могли бы их отличать.
Все это теоретические рассуждения. Конкретная реализация будет сильно зависеть от выбранной ОС для ВПН сервера, выбранного типа ВПН, чего-то еще.