IP-туннели в Mikrotik с помощью OpenVPN

Продолжаем разбираться с Mikrotik. Про L2-тоннели на OpenVPN мы уже узнали, теперь попробуем построить L3-тоннель и поднять поверх него L2 в виде EOIP. Нужно это нечасто, задача специфическая – но раз надо, значит надо.

Что мы имеем? Сервер на RouterOS со статическим белым адресом. Клиента, использующего какой-нибудь свисток типа йоты/мтс/скайлинк, или подключение через другого провайдера, имеющий, в лучшем случае, белую динамику, но чаще всего – серый адрес за NAT. Нужно привести L2 от клиента к серверу поверх L3. Т.к. pptp подключение пропускается не всеми провайдерами (как это ни странно. Особенно этим грешат мобильные терминалы), будем использовать OpenVPN, который не использует GRE, а только TCP/UDP, и пролезает везде.

Для начала, настраиваем серверную часть. Создаем IP-pool, который будет выдаваться клиентам, учетные записи для пользователей – все как для L2-тоннеля. Отличие есть в конфигурации самого сервера:

[admin@MikroTik] > interface ovpn-server server print 
                     enabled: yes
                        port: 1194
                        mode: ip
                     netmask: 30
                 mac-address: FE:6F:98:26:35:02
                     max-mtu: 1500
           keepalive-timeout: 60
             default-profile: ovpn-profile
                 certificate: cert2
  require-client-certificate: no
                        auth: sha1,md5
                      cipher: blowfish128,aes128,aes192,aes256

И конфигурации ovpn-профиля – он может быть один на все соединения, т.к. vpn-bridge указывать не надо.

При соединении получаем соединение точка-точка, поверх которого можно строить EOIP-тоннель, или использовать для маршрутизации (например, как резервный канал) с помощью BGP или OSPF.
Адресация может быть практически любая – клиенту может выдаваться как /32 адрес, так и /24, например.

Leave a Reply