OpenVPN: частный случай p2p соединения
Рассмотрим весьма частный случай применения OpenVPN.
Конфигурация сети:
- Диспетчер, он же центральный хаб “звезды”, он же VPN-сервер в стандартной схеме “клиент-сервер”.
- Client1, по отношению к диспетчеру — клиент.
- Client2, по отношению к диспетчеру — клиент.
- Предполагается, что впоследствии появятся ещё Client3, …, ClientN, и все они по отношению к диспетчеру будут суть клиенты.
Считается, что VPN между диспетчером и каждым из клиентов уже настроен, то есть классическая “звезда” уже работает.
Требуется обеспечить симметричный p2p VPN-линк между Client1 и Client2. Другими словами, превратить “звезду” в полносвязку.
Когда я приступил к решению данной задачи, то обнаружил, что в интернете практически отсутствуют описания применения OpenVPN в симметричных схемах. Везде тщательно и со вкусом рассматриваются схемы “клиент-сервер”, при которых одна определённая сторона ждёт входящих соединений, а другая
инициирует исходящие.
Так как Client1 и Client2 — это равноправные сервера, делать кого-то формальным сервером не было ни желания, ни особого смысла. С учётом же возможности пояления Client3, …, ClientN заводить N формальных серверов — это неизбежно запутаться во всех них.
Читать дальше...