Logo

EcoRouter

EcoNAT

EcoQOE

EcoBypass

English

  • Release Notes
  • Настройка туннелирования EcoRouter Documentation / Настройка туннелирования

    Туннелирование — механизм передачи пакета одного протокола внутри другого протокола, позволяющий безопасно передавать данные между двумя сетями.

    Туннели являются логическими соединениями типа точка — точка, определяющиеся точкой-источником туннеля и точкой-назначением туннеля.

    GRE

    GRE (Generic Routing Encapsulation) — протокольный механизм, использующий IP (UDP) как транспортный протокол. GRE может быть использован для переноса различных протоколов внутри себя.  

    Для отправки в GRE туннель IP-пакет при прохождении через интерфейс туннеля получает сверху дополнительный заголовок GRE, в котором в качестве адреса источника и адреса назначения будут указаны ip адреса начальной и конечной точки туннеля. После прибытия пакета на интерфейс с адресом назначения туннеля служебный заголовок GRE будет отброшен и далее пакет будет обрабатываться в соответствии со своим «родным» IP заголовком.

    MTU в протоколах туннелирования

    Типичная размерность MTU для L3 интерфейса 1500 байт. В связи с добавлением служебного заголовка появляются новые требования к допустимому значению MTU при передаче пакета. Заголовок GRE имеет размерность 4 байта, 20 байт транспортный IP заголовок, заголовок IP пакета 20 байт, таким образом возникает необходимость задавать размер допустимого MTU на интерфейсах туннеля меньше стандартного значения.

    Флаги в GRE

    Реализация EcoRouterOS при инкапсулировании во внешнем заголовке устанавливает DF бит равным 1 (не фрагментировать). Если приходящий фрейм в заголовке IP содержит MF бит равным 1 (была фрагментация) или fragment offset бит равный 1 (последний фрагмент первоначального фрейма), то фрейм будет отброшен. При GRE инкапсуляции приходящие фреймы, содержащие в заголовке GRE флаги checksum, routing, key, seq number, strict source route или recursion, отличные от нуля, будут отброшены.

     

    Команды настройки

    КомандаОписание
    interface tunnel.<номер>
    Создание интерфейса туннеля, где номер произвольное число
    ip mtu <значение>
    Задание значения mtu для интерфейса
    ip tunnel <source IP> <destination IP> mode <gre | ipip>
    Задание IP-адресов начала и конца туннеля и типа туннеля

    Пример базовой настройки туннеля GRE

    Настроим туннель GRE между устройствами ECO-1 и ECO-2. Ниже приведена настройка для устройства ECO-1.

    Шаг 1. Настройка интерфейсов и портов.

    ecorouter>en 
    ecorouter#conf t
    ecorouter(config)#interface e1 
    ecorouter(config-if)ip add 11.0.0.1/16
    ecorouter(config)#interface e2
    ecorouter(config-if)ip add 192.168.0.1/24
    ecorouter(config)#port te0
    ecorouter(config-port)#service-instance te0 
    ecorouter(config-service-instance)#encapsulation untagged 
    ecorouter(config-service-instance)#
    connect ip interface e1
    ecorouter(config)#port te1
    ecorouter(config-port)#service-instance te1
    ecorouter(config-service-instance)#encapsulation untagged 
    ecorouter(config-service-instance)#connect ip interface e2

    Шаг 2. Создаем интерфейс туннеля c именем tunnel.0 

    ecorouter(config)#interface tunnel.0

    Шаг 3. Назначение ip адреса

    ecorouter(config-if)#ip add 172.16.0.1/16

    Шаг 4. Выставление параметра MTU

    ecorouter(config-if)#ip mtu 1400 

    Шаг 5. Задание режима работы туннеля GRE и адресов начала и конца туннеля

    ecorouter(config-if)#ip tunnel 11.0.0.1 12.0.0.2 mode gre

    Шаг 6. Настройка маршрутизации трафика в туннель

    ecorouter(config)#ip route 12.0.0.0/8 11.0.0.2
    ecorouter(config)#ip route 192.168.200.0/24 172.16.0.2

    Аналогичная настройка производится на втором устройстве.

    Команды просмотра

    Для просмотра состояния туннеля используется команда show interface tunnel.<номер туннеля>.

    Для созданной выше конфигурации команда будет отображать следующий результат:

     

    ecorouter#sh int tunnel.0 
    Interface tunnel.0 is up, line protocol is up
     Ethernet address: 0000.ab27.8404
     MTU: 1400
     Tunnel source: 11.0.0.1
     Tunnel destination: 12.0.0.2
     Tunnel mode: GRE
     ICMP redirection is on
     <UP,BROADCAST,RUNNING,NOARP,MULTICAST>
     inet 172.16.0.1/16 broadcast 172.16.255.255/16
     total input packets 0, bytes 0
     total output packets 0, bytes 0

    IP in IP

    IP in IP - механизм туннелирования, который помещает один IP пакет в другой IP пакет. 

    Процесс туннелирования заключается в добавлении ещё одного IP заголовка к стандартному IP пакету. В верхнем заголовке будут содержаться IP адреса начала и окончания туннеля. После доставки на маршрутизатор, на котором находится окончание туннеля, верхний заголовок снимается, пакет передается с обычным, внутренним IP заголовком дальше.

    MTU в IP in IP

    Типичная размерность MTU для L3 интерфейса 1500 байт. В связи с добавлением служебного заголовка появляются новые требования к допустимому значению MTU при передаче пакета. Заголовок IP in IP имеет размерность 20 байт, заголовок IP пакета 20 байт, таким образом возникает необходимость задавать размер допустимого MTU на интерфейсах туннеля меньше стандартного значения для Ethernet. 

    Флаги в IP in IP

    Реализация EcoRouterOS при инкапсулировании во внешнем заголовке устанавливает DF бит равным 1 (не фрагментирвать)

    Если приходящий фрейм в заголовке IP содержит MF бит равным 1 (была фрагментация) или fragment offset бит равный 1 (последний фрагмент первоначального фрема), то фрейм будет отброшен.


    Команды настройки

    КомандаОписание
    interface tunnel.<номер>Создание интерфейса туннеля, где номер произвольное число
    ip mtu <значение>Задание значения mtu для интерфейса
    ip tunnel <source IP> <destination IP> mode <gre | ipip>Задание ip-адресов начала и конца туннеля и типа туннеля

    Пример базовой настройки туннеля IP in IP

    Настроим туннель IP-in-IP между устройствами ECO-1 и ECO-2. Ниже приведена настройка для устройства ECO-1

    Шаг 1. Настройка интерфейсов и портов.

    ecorouter>en 
    ecorouter#conf t
    ecorouter(config)#interface e1 
    ecorouter(config-if)ip add 11.0.0.1/16
    ecorouter(config)#interface e2
    ecorouter(config-if)ip add 192.168.0.1/24
    ecorouter(config)#port te0
    ecorouter(config-port)#service-instance te0 
    ecorouter(config-service-instance)#encapsulation untagged 
    ecorouter(config-service-instance)#connect ip interface e1
    ecorouter(config)#port te1
    ecorouter(config-port)#service-instance te1
    ecorouter(config-service-instance)#encapsulation untagged 
    ecorouter(config-service-instance)#connect ip interface e2
     

    Шаг 2. Создаем интерфейс туннеля c именем tunnel.0

     
    ecorouter(config)#interface tunnel.0

    Шаг 3. Назначение ip адреса

    ecorouter(config-if)#ip add 172.16.0.1/16

    Шаг 4. Выставление параметра MTU

    ecorouter(config-if)#ip mtu 1400 

    Шаг 5. Задание режима работы туннеля IP-in-IP и адресов начала и конца туннеля

    ecorouter(config-if)#ip tunnel 11.0.0.1 12.0.0.2 mode ipip

    Шаг 6. Настройка маршрутизации трафика в туннель

    ecorouter(config)#ip route 12.0.0.0/8 11.0.0.2
    ecorouter(config)#ip route 192.168.200.0/24 172.16.0.2

    Аналогичная настройка производится на втором устройстве.





    Subordinate Topics

    Name Short Description
    Настройка туннеля IPsec