1. Схема сети.

В головном офисе установлен маршрутизатор GW1. Он же будет настроен в качестве VPN-сервера. В филиале установлен маршрутизатор GW2, который будет настроен как VPN-клиент.

Головной офис:

  • IP-адрес внешней сети головного офиса: 10.1.100.0/24
  • IP-адрес внешнего интерфейса маршрутизатора GW1: 10.1.100.1/24
  • IP-адрес внутренней сети головного офиса: 192.168.15.0/24
  • IP-адрес внутреннего интерфейса маршрутизатора GW1: 192.168.15.1/24

Филиал:

  • IP-адрес внешней сети головного офиса: 10.1.200.0/24
  • IP-адрес внешнего интерфейса маршрутизатора GW2: 10.1.200.1/24
  • IP-адрес внутренней сети головного офиса: 192.168.25.0/24
  • IP-адрес внутреннего интерфейса маршрутизатора GW2: 192.168.25.1/24

VPN-канал:

  • IP-адрес VPN-интерфейса маршрутизатора GW1: 172.16.30.1/32
  • IP-адрес VPN-интерфейса маршрутизатора GW2: 172.16.30.2/32

2. Настройка первого маршрутизатора.

2.1. Включить L2TP-сервер. Не смотря на то, что L2TP не несет в себе нормального шифрования, лучше оставить только аутентификацию «mschap2» как наиболее надежную.

/interface l2tp-server server set authentication=mschap2 enabled=yes

2.2. Создать новый аккаунт. Для дальнейшего удобства лучше задавать имена так, что бы сразу можно было определить к кому или чему они относятся. Т. е. имена типа user1, user2, user3 и т. д. не желательны в виду того, что в случае увеличения их количества будет тяжело сопоставить реальных пользователей аккаунтов и сами аккаунты.

/ppp secret add local-address=172.16.30.1 name=user1 password=user1-password profile=default-encryption remote-address=172.16.30.2 service=l2tp

2.3. Создать статическую запись L2TP сервера. Это действие не обязательно, т. к. если запись не создать вручную, то при каждом подключении она будет создаваться динамически. Но при этом наличие этой записи облегчает дальнейшую настройку и диагностику.

/interface l2tp-server add name="L2TP Server for filial1" user=user1

3. Настройка второго маршрутизатора.

3.1. Создать интерфейс для подключения к первому маршрутизатору. Здесь так же оставляем только аутентификацию «mschap2«.

/interface l2tp-client add allow=mschap2 connect-to=10.1.100.1 disabled=no name="L2TP HQ connection" password=user1-password user=user1

4. Настройка маршрутизации.

Если на предыдущих шагах все было сделано верно, то VPN-соединение между двумя офисами было установлено, но для того, что бы обе сети могли обмениваться информацией друг с другом они должны знать друг о друге, т.е. между ними должна быть настроена маршрутизация. Для этого надо выполнить следующие шаги:

4.1. На первом маршрутизаторе:

/ip route add comment="route to filial1 through VPN" dst-address=192.168.25.0/24 gateway=172.16.30.2 pref-src=192.168.15.1

4.2. На втором маршрутизаторе:

/ip route add comment="route to HQ through VPN" dst-address=192.168.15.0/24 gateway=172.16.30.1 pref-src=192.168.25.1

Параметр Pref. Source (pref-src) не является обязательным. Он становится нужен, если количество филиалов будет более одного. Без этого параметра не будут проходить ping с маршрутизатора одного филиала до хостов и внутреннего интерфейса маршрутизатора другого филиала. Не будут проходить ping именно с маршрутизаторов, т.е. между хостами двух филиалов связь будет.

5. Проверка.

Проверка состоит из двух частей:

  1. Надо убедиться, что между двумя маршрутизаторами MikroTik установлено VPN-соединение. Это описано ниже.
  2. Если VPN-соединение установлено успешно, то далее надо проверить есть ли связь между хостами в двух сетях. Для этого достаточно запустить ping с любого компьютера в сети на любой компьютер другой сети.

Выполнить команду:

/interface l2tp-server print — на сервере

/interface l2tp-client print — на клиенте

Если соединение установлено успешно, то статус подключения, так же, как и через графический интерфейс, должен отображаться с буквой «R«.

6. Типичные проблемы.

  • Если VPN-соединение между двумя маршрутизаторами MikroTik не устанавливается, то надо проверить:
  1. Не мешает ли файервол. Для уверенности лучше временно отключить все правила файерволов на обоих маршрутизаторах.
  2. Совпадают ли имя пользователя и пароль на обоих маршрутизаторах.
  3. На VPN-клиенте указан правильный адрес VPN-сервера к которому должно происходить подключение.
  • Если не проходит ping между двумя компьютерами в разных сетях, то надо проверить:
  1. Правильно сделаны настройки маршрутизации на обоих маршрутизаторах не зависимо от того из какой сети в какую будет идти пинг.
  2. На брэндмауэре компьютера, который будет пинговаться, сделаны необходимые разрешения для протокола ICMP. Для уверенности можно отключить встроенный брэндмауэр и выгрузить антивирус.