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 (последний фрагмент первоначального фрейма), то фрейм будет отброшен.
Таблица — Флаги в IP in IP, команды настройки
Команда | Описание |
---|---|
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
Аналогичная настройка производится на втором устройстве.