Maksym Prokopov personal blog
Idea is a something worth sharing

Чудесная настройка OpenVPN

04.02.2012

Reading time: 2 min.

Два дня я вынашивал мысли о failover vpn, и даже пользовался экзотической схемой с получением внешнего IP через PPTP от одного хорошего провайдера но тот ограничивал скорость на уровне 1Mbit по туннелю, и пришлось думать иную схему.

И вот чудо, чудо!  Получилось организовать настоящий failover bridged VPN!

Итак, дано:

  1. Мой офис,  у которого два канала, один оптика, другой бекапный ADSL.
  2. Я с ноутбуком, который может быть где угодно, когда угодно и в любом состоянии.
  3. Свой сервер на colocation в гермозоне с подключением в интернет на 1Gbit, UA-IX и все такое, как положено.

Требуется:

Иметь доступ ко внутренней сети офиса при любых обстоятельствах (читай — отвалился канал), и пользоваться ее благами как то Timemachine бекап, терминальные серверы, файлошары.

Решение:

Если краткто, то это OpenVPN в режиме tap на сервере с честным IP (в моем случае это был даже windows 2008 сервер), Mikrotik 750G в режиме клиента OVPN в режиме ethernet, Viscosity (Tunnelblick) на моем Mac в режиме tap.

Как это работает?

Сервер с честным IP будем считать самой надежной точкой в сети и будем подключаться к нему, конфигурируем его с директивой server-bridge X.X.X.240 255.255.255.0 X.X.X.241 X.X.X.243 (эти адреса мы будем выдавать клиентам). Генерим дополнительно два сертификата, один для меня, другой для офиса.

Настраиваем mikrotik, добавляем openvpn client, загружаем сертификаты и убеждаемся в работоспособности туннеля. Собираем локальные интерфейсы в бридж, добавляем в этот же бридж ovpn client интерфейс.

Настраиваем viscosity на маке как клиент openvpn к серверу с честным ip без особых хитростей.

 

Тестируем, как только два подключения (одно из офисного роутера, другое от меня) к openvpn поднимутся, пинги пойдут.

В качестве упражнения выдернем шнурок основного канала из роутера, через минуту соединение снова поднимается и пинги идут, но уже потолще, подлиннее 🙂