Протокол IPIP#

Обзор#

Протокол туннелирования IPIP работает на сетевом уровне модели OSI и инкапсулирует исходный IPv4- или MPLS-пакет в дополнительный IPv4-заголовок по схемам: IPv4-in-IPv4, MPLS-in-IPv4.

Структура пакета при инкапсуляции по протоколу IPIP:

Пример базовой конфигурацииПример базовой конфигурации

При настройке протокола важно обратить внимание на ряд особенностей:

  1. Большинство межсетевых экранов и систем защиты настроены на анализ трафика, который проходит через стандартные транспортные протоколы (TCP или UDP), так как они содержат понятные заголовки (порты, флаги, номера сессий и т.д.). SIT упаковывает данные прямо в IP-пакет, без использования TCP/UDP. Поэтому некоторые фаерволы могут не знать, как обрабатывать такой трафик и просто блокируют его. При инкапсуляции по протоколу SIT в поле IP-заголовка добавляется номер протокола — «41»;

  2. Не поддерживает multicast-вещание;

  3. Чувствителен к максимально допустимому размеру передаваемого пакета, поскольку инкапсуляция дополнительного IP-заголовка увеличивает общий размер пакета;

  4. Не шифрует обрабатываемый трафик. Для защиты канала связи используйте протоколы шифрования, например IPsec;

  5. Не способен фрагментировать пакеты, что вместе с неправильно установленным максимально допустимым размером передаваемого пакета может привести к отбрасыванию пакетов.

Более подробная информация содержится в документе RFC 2003.

Внимание

При загрузке модуля IPIP или при включении протокола IPIP на интерфейсе туннеля, ядро системы Факел по умолчанию создает интерфейс tun0 с атрибутами local = any и remote = any.

Когда на интерфейс поступают IPIP-пакеты, ядро системы направляет данные на интерфейс, чьи атрибуты local и remote соответствуют IP-адресам отправителя и получателя. Однако если этого не произойдет, то ядро перенаправит входящие IPIP-пакеты на интерфейс tun0, как на устройство по умолчанию.

Пример настройки#

Шаг

Настройка маршрутизатора «А»

Настройка маршрутизатора «Б»

Описание

1

set interfaces tunnel tun1 encapsulation ipip

set interfaces tunnel tun1 encapsulation ipip

Включает протокол инкапсуляции IPIP на интерфейсе туннеля

2

set interfaces tunnel tun1 source-address 192.0.2.10

set interfaces tunnel tun1 source-address 203.0.113.20

Задает IP-адреса источника на интерфейсе туннеля

3

set interfaces tunnel tun1 remote 203.0.113.20

set interfaces tunnel tun1 remote 192.0.2.10

Задает IP-адрес назначения на интерфейсе туннеля

4

set interfaces tunnel tun1 address 192.168.100.200/24

set interfaces tunnel tun1 address 10.16.200.200/24

Задает локальный IP-адрес на интерфейсе туннеля

Список команд#


Режим «Конфигурирование»#


interfaces tunnel <interface> encapsulation ipip#

Описание:
Включает протокол туннелирования IPIP на интерфейсе туннеля.

Синтаксис:

  • set interfaces tunnel <interface> encapsulation ipip

  • delete interfaces tunnel <interface> encapsulation ipip

  • show interfaces tunnel <interface> encapsulation

Аргументы:

  • <interface> — имя интерфейса туннеля.

Режим: «Конфигурирование».


interfaces tunnel <interface> address <address>#

Описание:
Задает интерфейсу туннеля локальный IP-адрес.

Синтаксис:

  • set interfaces tunnel <interface> address <address>

  • delete interfaces tunnel <interface> address <address>

  • show interfaces tunnel <interface> address

Аргументы:

  • <interface> — имя интерфейса туннеля;

  • <address> — локальный IP-адрес, который администратор вручную назначает интерфейсу туннеля.

Режим: «Конфигурирование».


interfaces tunnel <interface> source-address <address>#

Описание:
Задает интерфейсу туннеля IP-адрес источника.

Синтаксис:

  • set interfaces tunnel <interface> source-address <address>

  • delete interfaces tunnel <interface> source-address <address>

  • show interfaces tunnel <interface> source-address

Аргументы:

  • <interface> — имя интерфейса туннеля;

  • <address> — IP-адрес источника.

Режим: «Конфигурирование».


interfaces tunnel <interface> remote <address>#

Описание:
Задает интерфейсу туннеля IP-адрес назначения.

Синтаксис:

  • set interfaces tunnel <interface> remote <address>

  • delete interfaces tunnel <interface> remote <address>

  • show interfaces tunnel <interface> remote

Аргументы:

  • <interface> — имя интерфейса туннеля;

  • <address> — IP-адрес назначения другого интерфейса туннеля.

Режим: «Конфигурирование».


Примечание

Полный список команд для настройки интерфейса туннеля находится в разделе Интерфейс туннеля.