VPN - это инкапсуляция трафика (вот какие умные слова я знаю!), почти прозрачное для вышележащих протоколов (там бывают проблемы с MTU - вот они вышележащим протоколам видны). Соответственно, нет никакой принципиальной невозможности повторной инкапсуляции; правда, не все программы организации VPN-туннеля это могут. А если настраивать это ручками - то надо хорошо понимать, как должен направляться трафик - чтобы после инкапсуляции не получилось повторного направления пакета на ту же самую инкапсуляцию.
А можно настроить систему так, что мы просто соединяемся по VPN с двумя разными точками. Например, мне дают доступ в две корпоративные сети с "серыми" IP-адресами типа 192.168.*.*, и я подключаюсь сразу к обеим.
Я советую почитать про SSh, на Хабре была статья. Там описывается проброс SSh-туннеля через несколько серверов.
Вы спрашиваете:
Первый VPN не знает куда ты подключаешься, а второй не знает откуда ты подключаешься и содержимое данных. Все верно?
Нет, неверно. Первый VPN не знает, куда ты подключаешься, и содержимое данных. Второй VPN не знает, откуда ты подключаешься; но содержимое данных он знает (если только оконечный сервер не использует что-то типа HTTPS) - ведь он должен отправить их серверу.
Ну и разумеется, если VPN-провайдеры сговорятся, то они легко сопоставят Ваши коннекты. По идее - хорошо бы иметь VPN-провайдеров в разных юрисдикциях, но и это не даёт гарантии.
Собственный VPN-сервер - это хорошо. Но владелец хостингалегко может это дело похаать, особенно если используются стандартные общеизвестные методы. А нестандартные - ненадёжны, их могут хакнуть анализом трафика (впрочем, стандартные - тоже могут хакнуть анализом трафика).
Тут весь вопрос в том, какие силы будут брошены на расследование. Пока помогает "принцип Неуловимого Джо".