Требуется организовать взаимодействие p2p в программе между сервером и множеством клиентов. Есть библиотека devP2P, которая позволяет организовать подобное взаимодействие, но не требует организации vpn на узле.
Среди основных возможностей (которые также требуются):- Кроссплатформенность (Linux, Windows, RaspberryPi).
- Организация взаимодействия (передачу данных) p2p между узлами в виртуальной сети (маршрутизация, видимость и т.д.).
- Поддержка шифрования.
- Открытость (бесплатность).
Не требуются:
Перенаправление трафика для каких-то специфичных сервисов (вроде "удалённый рабочий стол" и др.)
На данный момент не видел аналогичных решений. Судя по документации данная библиотека позволяет сделать в софте что-то вроде:
server:
createVPN();
listen();
client:
connectToVPN(serverip);