Поднимаем GRE-туннель между ESR-200 и Mikrotik CHR - АлтунинВВ.Блог - всё об IT-технологиях!
Вторник, 25 августа 2020 17:54

Поднимаем GRE-туннель между ESR-200 и Mikrotik CHR

Россия

Сегодня мы рассмотрим создание GRE-туннеля между ESR-200 и Mikrotik в GNS3.

В рамках этой статьи я не буду рассматривать, что такое GRE и зачем он нужен.

Тем кто не в курсе, что это такое, рекомендую вот эту статью и, видео что внутри, в них все очень подробно и доступно рассмотрено.

Обратите внимание – версия ESR-200-FSTEC не поддерживает IPSEC, поэтому для таких устройств я не рекомендую использовать GRE в открытых сетях, например, для связи сетей через Internet.

VPN поддерживается в Сервисных маршрутизаторах ESR.

В версиях Серисных криптомаршрутизаторов ESR-ST осуществлена поддержка алгоритмов шифрования по ГОСТ 28147-89, ГОСТ Р 34.12-2015.

Для примера возьмем две подсети:

172.16.200.0/28 и 172.16.200.16/28

Мы хотим соединить эти подсети GRE-туннелем, как показано на схеме выше.

Подключим к ESR-200 через порт gi1/0/1 к тестовой ЛВС.

Подключим в порт gi1/0/2 ноутбук, он у нас будет выполнять роль еще одной подсети, так как имеет смысл поднимать GRE только между двумя подсетями.

Назначим ноутбуку адрес:

172.16.200.17/28

ESR-200 назначим адрес:

172.16.200.252/28 на gi1/0/1

172.16.200.30/28 на gi1/0/2

Пропишем маршруты по умолчанию:

На ноутбуке шлюзом будет

172.16.200.30/28

На PC1 шлюзом будет

172.16.200.14/28

Для Mikrotik в GNS3 назначим адрес

172.16.100.253/28

Настроим ESR-200:

hostname esr101

clock timezone gmt +11

security zone LAN
  description "LAN"
exit
security zone GRE1
  description "GRE1"
exit
security zone LAN2
  description " LAN2"
exit

object-group service SSH
  description "SSH"
  port-range 22
exit
object-group service TRACEROUTE
  port-range 33434-33529
  port-range 15121
exit

object-group network MYLAN
  description "MYLAN"
  ip prefix 172.16.1.0/24
exit


interface gigabitethernet 1/0/1
  description "LAN"
  security-zone LAN
  ip address 172.16.1.101/24
  ip address 172.16.200.252/28
exit
interface gigabitethernet 1/0/2
  description "LAN2"
  security-zone LAN2
  ip address 172.16.200.30/28
exit
interface gigabitethernet 1/0/4
  shutdown
exit
interface gigabitethernet 1/0/5
  shutdown
exit
interface gigabitethernet 1/0/6
  shutdown
exit
interface gigabitethernet 1/0/7
  shutdown
exit
interface gigabitethernet 1/0/8
  shutdown
exit
security zone-pair LAN self
  rule 1
    description "ICMP"
    action permit
    match protocol icmp
    match source-address any
    match destination-address any
    enable
  exit
  rule 2
    description "SSH"
    action permit
    match protocol tcp
    match source-address MYLAN
    match destination-address any
    match source-port any
    match destination-port SSH
    enable
  exit
exit
security zone-pair LAN LAN2
  rule 1
    description "ICMP"
    action permit
    match protocol icmp
    match source-address any
    match destination-address any
    enable
  exit
  rule 100
    description "TRACEROUTE"
    action permit
    match protocol udp
    match source-address any
    match destination-address any
    match source-port any
    match destination-port TRACEROUTE
    enable
  exit
exit
security zone-pair LAN2 self
  rule 1
    description "ICMP"
    action permit
    match protocol icmp
    match source-address any
    match destination-address any
    enable
  exit
exit
security zone-pair LAN2 LAN
  rule 1
    description "ICMP"
    action permit
    match protocol icmp
    match source-address any
    match destination-address any
    enable
  exit
  rule 100
    description "TRACEROUTE"
    action permit
    match protocol udp
    match source-address any
    match destination-address any
    match source-port any
    match destination-port TRACEROUTE
    enable
  exit
exit

ip route 0.0.0.0/0 172.16.200.253

ip ssh server

Настроим Mikrotik  в GNS3:

/interface ethernet

set [ find default-name=ether1 ] disable-running-check=no

set [ find default-name=ether2 ] disable-running-check=no

/system identity set name=GW1

/ip address

add address=172.16.200.14/28 interface=ether2 network=172.16.200.0

add address=172.16.200.253/28 interface=ether1 network=172.16.200.240

/ip route add dst-address=172.16.200.16/28 gateway=172.16.200.252

Добавим в GNS3:

  • Ethernet switch
  • VPCS

В результате у нас получиться такой проект GNS3:

2020-08-24_15-05-04.png

Настроим PC1 

ip 172.16.200.1/28 172.16.200.14

С ESR-200 Проверим доступность mikrotik

PING 172.16.200.253 (172.16.200.253) 56(84) bytes of data.
!!!!!
--- 172.16.200.253 ping statistics ---
5 packets transmitted, 5 received, 0% packet loss, time 4006ms
rtt min/avg/max/mdev = 2.475/3.128/5.443/1.160 ms

Проверим доступность PC1:

ping 172.16.200.1
PING 172.16.200.1 (172.16.200.1) 56(84) bytes of data.
!!!!!
--- 172.16.200.1 ping statistics ---
5 packets transmitted, 5 received, 0% packet loss, time 4005ms
rtt min/avg/max/mdev = 2.625/3.450/5.409/0.999 ms

Проверим доступность ноутбука:

Пинг:

Обмен пакетами с 172.16.200.1 по с 32 байтами данных:
Ответ от 172.16.200.1: число байт=32 время=3мс TTL=64
Ответ от 172.16.200.1: число байт=32 время=2мс TTL=64
Ответ от 172.16.200.1: число байт=32 время=3мс TTL=64
Ответ от 172.16.200.1: число байт=32 время=2мс TTL=64

Трассировка:

PC1> trace 172.16.200.17
1   172.16.200.14   0.355 ms  0.388 ms  0.419 ms
2   172.16.200.252   2.858 ms  2.607 ms  2.455 ms
3   172.16.200.17   2.426 ms 2.346 ms 2.422 ms

Проверим доступность PC1:

Пинг:

Обмен пакетами с 172.16.200.1 по с 32 байтами данных:
Ответ от 172.16.200.1: число байт=32 время<2мс TTL=64
Ответ от 172.16.200.1: число байт=32 время<3мс TTL=64
Ответ от 172.16.200.1: число байт=32 время<3мс TTL=64
Ответ от 172.16.200.1: число байт=32 время<3мс TTL=64

Трассировка:

1    <1 мс    <1 мс    <1 мс  172.16.200.30
2    4 мс    4 мс    4 мс  172.16.200.253
3    5 мс    6 мс    6 мс  172.16.200.1

Связь есть.

Настроим GRE туннель:

На ESR-200 пропишем:

security zone GRE1
description GRE1
exit
tunnel gre 1
security-zone GRE1
local address 172.16.200.252
remote address 172.16.200.253
ip address 172.16.99.1/30
enable
exit
security zone-pair GRE1 LAN2
  rule 1
    description "ICMP"
    action permit
    match protocol icmp
    match source-address any
    match destination-address any
    enable
  exit
  rule 100
    description "TRACEROUTE"
    action permit
    match protocol udp
    match source-address any
    match destination-address any
    match source-port any
    match destination-port TRACEROUTE
    enable
  exit
exit
security zone-pair LAN2 GRE1  
rule 1
    description "ICMP"
    action permit
    match protocol icmp
    match source-address any
    match destination-address any
    enable
  exit
  rule 100
    description "TRACEROUTE"
    action permit
    match protocol udp
    match source-address any
    match destination-address any
    match source-port any
    match destination-port TRACEROUTE
    enable
  exit
exit
do com
do con

 На mikrotik пропишем:

interface gre add name=gre1 remote-address=172.16.200.252 local-address=172.16.200.253
/ip address add address=172.16.99.2/30 interface=gre1

Одним из важных пунктов настройки GRE является маршрутизация. Нам необходимо завернуть нужные подсети в GRE туннель.

На ESR-200 проверим трассировку до 172.16.200.1

esr:esr101# traceroute 172.16.200.1
traceroute to 172.16.200.1 (172.16.200.1), 30 hops max, 60 byte packets
 1  172.16.200.253 (172.16.200.253)  3.153 ms  3.118 ms  3.139 ms
 2  172.16.200.1 (172.16.200.1)  4.286 ms  4.355 ms  4.329 ms

Добавим маршрут:

ip route 172.16.200.0/28 172.16.99.2
do com
do con

Поверим трассировку еще раз:

esr:esr101(config)# do traceroute 172.16.200.1
traceroute to 172.16.200.1 (172.16.200.1), 30 hops max, 60 byte packets
 1  * * *
 2  * * *
 3  * * *
 4  * * *
 5  * * *
 6  * 172.16.200.1 (172.16.200.1)  11.661 ms  11.743 ms

Вроде успешно, попробуем еще раз:

esr:esr101(config)# do traceroute 172.16.200.1
traceroute to 172.16.200.1 (172.16.200.1), 30 hops max, 60 byte packets
 1  172.16.99.2 (172.16.99.2)  3.076 ms  3.235 ms  3.354 ms
 2  172.16.200.1 (172.16.200.1)  6.796 ms  7.149 ms  7.752 ms

Работает, теперь трафик на эту подсеть будет заворачиваться в GRE туннель.

Настроим микротик:

/ip route> print
Flags: X - disabled, A - active, D - dynamic,
C - connect, S - static, r - rip, b - bgp, o - ospf, m - mme,
B - blackhole, U - unreachable, P - prohibit
 #      DST-ADDRESS        PREF-SRC        GATEWAY            DISTANCE
 0 ADC  172.16.99.0/30     172.16.99.2     gre1                      0
 1 ADC  172.16.200.0/28    172.16.200.14   ether2                    0
 2 A S  172.16.200.16/28                   172.16.200.252            1
 3 ADC  172.16.200.240/28  172.16.200.253  ether1                    0

Найдем 172.16.200.16/28 и удалим старый маршрут:

/ip route remove 2

Добавим маршрут через GRE-туннель:

/ip route add dst-address=172.16.200.16/28 gateway=172.16.99.1

Проверим с PC1

1  172.16.200.14   0.273 ms  0.273 ms  0.204 ms
2  172.16.99.1   2.872 ms  2.470 ms  2.357 ms
3  172.16.200.17   2.936 ms  2.536 ms  2.636 ms

На ноутбуке трафик тоже заворачивается в GRE-туннель.

Проверим статус туннеля на ESR-200

show tunnels status gre 1
Tunnel 'gre 1' status information:
 Description:          --
 Administrative state: Up
 Operational state:    Up
 Supports broadcast:   No
 Supports multicast:   No
 MTU:                  1500

Проверим на микротике

/interface gre print

Flags: X - disabled, R - running

 0  R name="gre1" mtu=auto actual-mtu=1476 local-address=172.16.200.253

      remote-address=172.16.200.252 keepalive=10s,10 dscp=inherit

      clamp-tcp-mss=yes dont-fragment=no allow-fast-path=yes

Туннель поднят и работает! 

Заключение

Сегодня мы рассмотрели настройку GRE-туннеля между ESR-200 и Mikrotik, запущенным в GNS3.

Настроили сеть на ESR-200 и на Mikrotik, и проверили связь между двумя сетями.

Подняли GRE-туннель между двумя сетями и проверили, что трафик действительно заворачивается в туннель.

Прочитано 142 раз Последнее изменение Среда, 26 августа 2020 11:35