- Форум
- /
- IT и телекоммуникации
- /
- Конфигурация сетевого оборудования
- /
- L2TPv3: Настройка L2 Tunnel over IP на оборудовании Cisco Systems
L2TPv3: Настройка L2 Tunnel over IP на оборудовании Cisco Systems
Rendering Error in layout Widget/Social: Call to a member function exists() on null. Please enable debug mode for more information.
9 года 3 мес. назад - 9 года 3 мес. назад #45
от TOLLIFi
IT и Телеком: IP-телефония, интернет-технологии, программирование, web-сервисы.
COM_KUNENA_MESSAGE_CREATED_NEW
Тема посвящена описанию и настройке полноценного канала второго уровня (L2) поверх IP-сетей (L3) на оборудовании Cisco Systems. Данные возможности предоставляет протокол L2TPv3 (Layer 2 Tunneling Protocol (Version 3)), созданный на основе протокола Cisco UTI (Universal Transport Interface) и совместимый с UTI и L2TPv2. Так же Вы можете ознакомиться с предыдущими статьями на тему VPN:
Настройка и особенности Cisco IPSec VPN на X.509-сертификатах PKI в топологии Hub & Spoke
В прикрепленных файлах документация с подробным описанием, схемами и примерами файлов конфигурации протокола L2TPv3 (L2TPv3: Layer 2 Tunnel Protocol Version 3).
За основу была взята схема сети, организованная по предыдущим темам (см. рис.):
--- ОПИСАНИЕ ПРОТОКОЛА L2TPv3 >>>
L2TPv3 поддерживает следующие L2-протоколы, данные (payloads) к-ых могут прозрачно передаваться через псевдо-туннель L2TPv3:
- Frame Relay
- Ethernet
- 802.1q (VLAN)
- HDLC
- PPP
--- ПОШАГОВОЕ ОПИСАНИЕ ИЗМЕНЕНИЙ В ТЕКУЩЕЙ СЕТЕВОЙ ИНФРАСТРУКТУРЕ >>>
Далее приведено краткое описание последовательности действий, которые необходимо проделать в нашей текущей сетевой инфраструктуре (см. предыдущие темы):
1. Туннель L2 организовываем между HUB-маршрутизаторами центральных офисов 1 (существующий) и 2 (новый/резервный):
- Central Office 1: HUB1, HUB2 - существующий основной центральный офис;
- Central Office 2: HUB3 - новый/резервный центральный офис.
Параметры IP Loopback0 для HUB1,2,3-маршрутизаторов: 192.168.255.254,253,252 соответственно.
2. В целях демонстрации работы L2-туннеля по протоколу L2TPv3 создадим в нашей существующей сети, которую мы уже неплохо модернизировали в предыдущих темах
, тестовую подсеть в VLAN200:
- VLAN200: x.x.x.x/y - L2TPv3-NETWORK-v200.
3. Превращаем порт локальной сети (GigabitEthernet0/0) в подинтерфейсы Dot1q:
- Gi0/0.1: Encapsulation dot1q 1 native - наша прежняя локальная сеть (10.0.254.0/24, 10.0.253.0/24);
- Gi0/0.200: Encapsulation dot1q 200 - произвольная тестовая сеть L2TPv3 (x.x.x.x/y).
4. Поскольку L2TPv3 не поддерживает Poin-to-Multipoint-топологию (P2MP), создаем P2P L2-туннель от подинтерфейсов Gi0/0.200 с одной парой маршрутизаторов (HUB1 <-> HUB3). При этом подразумевается наличие маршрутизации между Loopback0-интерфейсами HUB-марщрутизаторов с помощью: IPVPN, GRE Tunnel и пр.способами (см.предыдущие статьи на тему VPN).
Важное замечание! Создавая L2-туннель от Dot1q-подинтерфейса, IP-адрес на этот подинтерфейс уже нельзя будет присвоить, т.е. в качестве IP Default Gateway этот подинтерфейс уже не сможет выступать (то же касается и обходного варианта: если создать отд. BVI-интерфейс с IP-адресом и организовать мост с Dot1q-подинтерфейсом, добавив в него команду bridge-group N, где N - номер BVI-интерфейса). Поэтому в сети должен существовать другой Default Gateway в этом VLAN. Применитьльно к нашему случаю, именно по этой причине был создан подинтерфейс Gi0/0.200, который останется без IP-адреса. Но есть еще один более извращенный рабочий обходной вариант, но необходимо наличие Switch-портов на маршрутизаторе + доп.кабельное соединение: помимо Dot1q-подинтерфейса (Gi0/0.200: encapsulation dot1q 200), создаем SVI-интерфейс в том же самом VLAN (Interface Vlan 200) с необходимым нам IP-адресом. Создаем транковый Switch-порт (mode trunk), прокидываем VLAN200 и включаемся отдельным кабелем!
--- ПРИМЕР КОНФИГУРАЦИИ L2-ТУННЕЛЯ ПО ПРОТОКОЛУ L2TPv3 >>>
1. HUB1:2. HUB3:
Проверяем работоспособность L2TPv3:
Некоторые пояснения по командам конфигурации:
- vlan database - вход в режим конфигурации VLAN;
- vtp transparent - настройка "прозрачного" режима работы VTP (варианты: server, client, transparent). Создание VLAN в марш-ре в режиме transparent, не будет распространятся на весь VTP-домен (подробнее см.документацию);
- vlan 200 name TUNNEL-L2TPv3-v200 - создаем VLAN 200 c именем TUNNEL-L2TPv3-v200;
- ip cef - активация быстрой коммутации IP-пакетов CEF (Cisco Express Forwarding) (альтернативная команда: ip cef distributed);
- l2tp-class L2TP-CLASS1 - (необязательный) общий класс L2TP, в котором указываются параметры управления каналом (таймеры, аутентификация, авто.согласование и др.) (может применяться одновременно в неск-ких pseudowire-классах/каналах). На терминирующих L2-туннель маршрутизаторах д.б. настроены классы с одинаковыми параметрами управления каналом. Если не определен никакой L2TP-класс, то к pseudowire-каналу (псевдо-канал) применяется L2TP-класс по-умолчанию (default class), если в созданном классе L2TP какой-либо параметр не определен, то применяется значение по-умолчанию;
- hidden - скрывать пары "атрибут-значение" (attribute-value pairs (AVPs)) при обмене служебными сообщениями (шифруется паролем);
- authentication - включить аутентификацию L2TP-канала;
- hello 30 - послать keepalive-сообщения каждые 30 сек.;
- password L2TpPaSsWoRd - пароль для аутенификации L2TP и сокрытия AVPs в служебных сообщениях;
- pseudowire-class PW-CLASS1 - шаблон конфигурации псевдо-канала L2 для настроек сессионных параметров (протоколы, MTU, QoS, фрагментация, L2TP-класс и пр.);
- encapsulation l2tpv3 - метод инкапсуляции данных (варианты: l2tpv2, l2tpv3, mpls);
- sequencing both - (необязательный) маркировать исходящий и отслеживать правильную последовательность для входящих пакетных данных. В случае нарушения последовательности для входящего трафика, пакеты будут отбрасываться (обычно применяется при отсутствии L2-протоколов, способных самостоятельно следить за последовательностью пакетных данных);
- protocol l2tpv3 L2TP-CLASS1 - протокол сигнализации/управления псевдо-каналом L2 + соответствующий класс L2TP (возможные варианты: l2tpv3, l2tpv2, none). None - указывает на необходимость вручную указать параметры псевдо-канала, l2tp - автоматическое согласование параметров (session ID, session cookies);
- ip local interface Loopback0 - интерфейс-источник, чей IP-адрес исп. в качестве адреса источника в отправленных туннельных пакетах (настоятельно рекомендуется указывать в качестве параметра Loopback-интерфейс);
- ip pmtu - включить автоматическое обнаружение необходимого параметра MTU в туннельном канале (инициируются след. процессы: ICMP Unreachable-сообщения, указывающие на ошибки фрагментации; проверка MTU для IP-пакетов (если поступил IP-пакет с установленным DF-битом и превышающий MTU, этот пакет будет отброшен)). Параметр необходим для фрагментации пакетов перед тем, как они будут отправленны в L2-туннель (рекомендуется исп. совместно с параметром 'ip dfbit set', что позволяет PMTU быстрее согласовать параметры);
- ip dfbit set - установить флаг DF-бит для туннелированных IP-пакетов (повышает производительность марш-ра-приемника, за счет отсутствия необходимости пересчета последовательности фрагментов IP-пакетов, но может стать причиной потери пакетов);
- ip tos reflect - скопировать значения ToS для туннелированных IP-пакетов из внутреннего IP-заголовка (возможные значения: reflect, <значение от 0 до 255>);
- encapsulation dot1Q 200 - применить Dot1q-инкапсуляцию (VLAN200) для соответствующего трафика;
- xconnect 192.168.255.254 200 pw-class PW-CLASS1 sequencing both - инициировать Xconnect-сервис (L2TP-туннель) с Peer IP 192.168.255.254 и VCID 200 (32-bit virtual circuit identifier) (параметр VCID должен совпадать на обоих терминирующих туннель маршрутизаторах, при этом комбинация Peer IP и VCID д.б. уникальна в пределах маршрутизатора), применив сессионные параметры псевдо-канала PW-CLASS1 (варианты: pw-class, encapsulation). Encapsulation может использовать, если туннель устанавливается в ручном режиме (тогда далее указываются доп.параметры соединения). Sequencing - необязательный параметр, аналогичный 'sequencing both' (см. выше);
- snmp-server enable traps l2tun session - инициировать SNMP-traps по изменению состояния L2TP-сессии;
- snmp-server enable traps l2tun pseudowire status - инициировать SNMP-traps по изменению состояния псевдо-канала.
В прикрепленных файлах документация с подробным описанием, схемами и примерами файлов конфигурации протокола L2TPv3 (L2TPv3: Layer 2 Tunnel Protocol Version 3).
За основу была взята схема сети, организованная по предыдущим темам (см. рис.):
--- ОПИСАНИЕ ПРОТОКОЛА L2TPv3 >>>
ВНИМАНИЕ: Спойлер!
[ Нажмите, чтобы развернуть ]
[ Нажмите, чтобы скрыть ]
L2TPv3 поддерживает следующие L2-протоколы, данные (payloads) к-ых могут прозрачно передаваться через псевдо-туннель L2TPv3:
- Frame Relay
- Ethernet
- 802.1q (VLAN)
- HDLC
- PPP
--- ПОШАГОВОЕ ОПИСАНИЕ ИЗМЕНЕНИЙ В ТЕКУЩЕЙ СЕТЕВОЙ ИНФРАСТРУКТУРЕ >>>
ВНИМАНИЕ: Спойлер!
[ Нажмите, чтобы развернуть ]
[ Нажмите, чтобы скрыть ]
Далее приведено краткое описание последовательности действий, которые необходимо проделать в нашей текущей сетевой инфраструктуре (см. предыдущие темы):
1. Туннель L2 организовываем между HUB-маршрутизаторами центральных офисов 1 (существующий) и 2 (новый/резервный):
- Central Office 1: HUB1, HUB2 - существующий основной центральный офис;
- Central Office 2: HUB3 - новый/резервный центральный офис.
Параметры IP Loopback0 для HUB1,2,3-маршрутизаторов: 192.168.255.254,253,252 соответственно.
2. В целях демонстрации работы L2-туннеля по протоколу L2TPv3 создадим в нашей существующей сети, которую мы уже неплохо модернизировали в предыдущих темах

- VLAN200: x.x.x.x/y - L2TPv3-NETWORK-v200.
3. Превращаем порт локальной сети (GigabitEthernet0/0) в подинтерфейсы Dot1q:
- Gi0/0.1: Encapsulation dot1q 1 native - наша прежняя локальная сеть (10.0.254.0/24, 10.0.253.0/24);
- Gi0/0.200: Encapsulation dot1q 200 - произвольная тестовая сеть L2TPv3 (x.x.x.x/y).
4. Поскольку L2TPv3 не поддерживает Poin-to-Multipoint-топологию (P2MP), создаем P2P L2-туннель от подинтерфейсов Gi0/0.200 с одной парой маршрутизаторов (HUB1 <-> HUB3). При этом подразумевается наличие маршрутизации между Loopback0-интерфейсами HUB-марщрутизаторов с помощью: IPVPN, GRE Tunnel и пр.способами (см.предыдущие статьи на тему VPN).
Важное замечание! Создавая L2-туннель от Dot1q-подинтерфейса, IP-адрес на этот подинтерфейс уже нельзя будет присвоить, т.е. в качестве IP Default Gateway этот подинтерфейс уже не сможет выступать (то же касается и обходного варианта: если создать отд. BVI-интерфейс с IP-адресом и организовать мост с Dot1q-подинтерфейсом, добавив в него команду bridge-group N, где N - номер BVI-интерфейса). Поэтому в сети должен существовать другой Default Gateway в этом VLAN. Применитьльно к нашему случаю, именно по этой причине был создан подинтерфейс Gi0/0.200, который останется без IP-адреса. Но есть еще один более извращенный рабочий обходной вариант, но необходимо наличие Switch-портов на маршрутизаторе + доп.кабельное соединение: помимо Dot1q-подинтерфейса (Gi0/0.200: encapsulation dot1q 200), создаем SVI-интерфейс в том же самом VLAN (Interface Vlan 200) с необходимым нам IP-адресом. Создаем транковый Switch-порт (mode trunk), прокидываем VLAN200 и включаемся отдельным кабелем!
--- ПРИМЕР КОНФИГУРАЦИИ L2-ТУННЕЛЯ ПО ПРОТОКОЛУ L2TPv3 >>>
ВНИМАНИЕ: Спойлер!
[ Нажмите, чтобы развернуть ]
[ Нажмите, чтобы скрыть ]
1. HUB1:
!
!<-- внимание! команды вводятся в привилегированном режиме, не в режиме конфигурации (config)#
vlan database
vtp transparent
vlan 200 name TUNNEL-L2TPv3-v200
exit
!-->
!
configure terminal
!
ip cef
!
l2tp-class L2TP-CLASS1
hidden
authentication
hello 30
password L2TpPaSsWoRd
!
pseudowire-class PW-CLASS1
encapsulation l2tpv3
sequencing both
protocol l2tpv3 L2TP-CLASS1
ip local interface Loopback0
ip pmtu
ip dfbit set
ip tos reflect
!
interface Loopback0
ip address 192.168.255.254 255.255.255.255
!
interface GigabitEthernet0/0
no ip address
!
interface GigabitEthernet0/0.200
description *** L2TP Tunnel to HUB3 ***
encapsulation dot1Q 200
xconnect 192.168.255.252 200 pw-class PW-CLASS1 sequencing both
!
snmp-server enable traps l2tun session
snmp-server enable traps l2tun pseudowire status
!
!
!<-- внимание! команды вводятся в привилегированном режиме, не в режиме конфигурации (config)#
vlan database
vtp transparent
vlan 200 name TUNNEL-L2TPv3-v200
exit
!-->
!
configure terminal
!
ip cef
!
l2tp-class L2TP-CLASS1
hidden
authentication
hello 30
password L2TpPaSsWoRd
!
pseudowire-class PW-CLASS1
encapsulation l2tpv3
sequencing both
protocol l2tpv3 L2TP-CLASS1
ip local interface Loopback0
ip pmtu
ip dfbit set
ip tos reflect
!
interface Loopback0
ip address 192.168.255.252 255.255.255.255
!
interface GigabitEthernet0/0
no ip address
!
interface GigabitEthernet0/0.200
description *** L2TP Tunnel to HUB1 ***
encapsulation dot1Q 200
xconnect 192.168.255.254 200 pw-class PW-CLASS1 sequencing both
!
snmp-server enable traps l2tun session
snmp-server enable traps l2tun pseudowire status
!
Проверяем работоспособность L2TPv3:
HUB1#show l2tp
L2TP Tunnel and Session Information Total tunnels 1 sessions 1
LocTunID RemTunID Remote Name State Remote Address Sessn L2TP Class/
Count VPDN Group
20836 3297620011 HUB3 est 192.168.255.252 1 L2TP-CLASS1
LocID RemID TunID Username, Intf/ State Last Chg Uniq ID
Vcid, Circuit
31228 2185876079 20836 200, Gi0/0.200:200 est 20:29:51 29
HUB1#show l2tp tunnel packets
L2TP Tunnel Information Total tunnels 1 sessions 1
LocTunID Pkts-In Pkts-Out Bytes-In Bytes-Out
20836 76355 13926 6967927 1612500
Некоторые пояснения по командам конфигурации:
- vlan database - вход в режим конфигурации VLAN;
- vtp transparent - настройка "прозрачного" режима работы VTP (варианты: server, client, transparent). Создание VLAN в марш-ре в режиме transparent, не будет распространятся на весь VTP-домен (подробнее см.документацию);
- vlan 200 name TUNNEL-L2TPv3-v200 - создаем VLAN 200 c именем TUNNEL-L2TPv3-v200;
- ip cef - активация быстрой коммутации IP-пакетов CEF (Cisco Express Forwarding) (альтернативная команда: ip cef distributed);
- l2tp-class L2TP-CLASS1 - (необязательный) общий класс L2TP, в котором указываются параметры управления каналом (таймеры, аутентификация, авто.согласование и др.) (может применяться одновременно в неск-ких pseudowire-классах/каналах). На терминирующих L2-туннель маршрутизаторах д.б. настроены классы с одинаковыми параметрами управления каналом. Если не определен никакой L2TP-класс, то к pseudowire-каналу (псевдо-канал) применяется L2TP-класс по-умолчанию (default class), если в созданном классе L2TP какой-либо параметр не определен, то применяется значение по-умолчанию;
- hidden - скрывать пары "атрибут-значение" (attribute-value pairs (AVPs)) при обмене служебными сообщениями (шифруется паролем);
- authentication - включить аутентификацию L2TP-канала;
- hello 30 - послать keepalive-сообщения каждые 30 сек.;
- password L2TpPaSsWoRd - пароль для аутенификации L2TP и сокрытия AVPs в служебных сообщениях;
- pseudowire-class PW-CLASS1 - шаблон конфигурации псевдо-канала L2 для настроек сессионных параметров (протоколы, MTU, QoS, фрагментация, L2TP-класс и пр.);
- encapsulation l2tpv3 - метод инкапсуляции данных (варианты: l2tpv2, l2tpv3, mpls);
- sequencing both - (необязательный) маркировать исходящий и отслеживать правильную последовательность для входящих пакетных данных. В случае нарушения последовательности для входящего трафика, пакеты будут отбрасываться (обычно применяется при отсутствии L2-протоколов, способных самостоятельно следить за последовательностью пакетных данных);
- protocol l2tpv3 L2TP-CLASS1 - протокол сигнализации/управления псевдо-каналом L2 + соответствующий класс L2TP (возможные варианты: l2tpv3, l2tpv2, none). None - указывает на необходимость вручную указать параметры псевдо-канала, l2tp - автоматическое согласование параметров (session ID, session cookies);
- ip local interface Loopback0 - интерфейс-источник, чей IP-адрес исп. в качестве адреса источника в отправленных туннельных пакетах (настоятельно рекомендуется указывать в качестве параметра Loopback-интерфейс);
- ip pmtu - включить автоматическое обнаружение необходимого параметра MTU в туннельном канале (инициируются след. процессы: ICMP Unreachable-сообщения, указывающие на ошибки фрагментации; проверка MTU для IP-пакетов (если поступил IP-пакет с установленным DF-битом и превышающий MTU, этот пакет будет отброшен)). Параметр необходим для фрагментации пакетов перед тем, как они будут отправленны в L2-туннель (рекомендуется исп. совместно с параметром 'ip dfbit set', что позволяет PMTU быстрее согласовать параметры);
- ip dfbit set - установить флаг DF-бит для туннелированных IP-пакетов (повышает производительность марш-ра-приемника, за счет отсутствия необходимости пересчета последовательности фрагментов IP-пакетов, но может стать причиной потери пакетов);
- ip tos reflect - скопировать значения ToS для туннелированных IP-пакетов из внутреннего IP-заголовка (возможные значения: reflect, <значение от 0 до 255>);
- encapsulation dot1Q 200 - применить Dot1q-инкапсуляцию (VLAN200) для соответствующего трафика;
- xconnect 192.168.255.254 200 pw-class PW-CLASS1 sequencing both - инициировать Xconnect-сервис (L2TP-туннель) с Peer IP 192.168.255.254 и VCID 200 (32-bit virtual circuit identifier) (параметр VCID должен совпадать на обоих терминирующих туннель маршрутизаторах, при этом комбинация Peer IP и VCID д.б. уникальна в пределах маршрутизатора), применив сессионные параметры псевдо-канала PW-CLASS1 (варианты: pw-class, encapsulation). Encapsulation может использовать, если туннель устанавливается в ручном режиме (тогда далее указываются доп.параметры соединения). Sequencing - необязательный параметр, аналогичный 'sequencing both' (см. выше);
- snmp-server enable traps l2tun session - инициировать SNMP-traps по изменению состояния L2TP-сессии;
- snmp-server enable traps l2tun pseudowire status - инициировать SNMP-traps по изменению состояния псевдо-канала.
Это вложение скрыто для гостей.
Пожалуйста, зарегистрируйтесь или войдите, чтобы увидеть его.
Пожалуйста, зарегистрируйтесь или войдите, чтобы увидеть его.
IT и Телеком: IP-телефония, интернет-технологии, программирование, web-сервисы.
Last edit: 9 года 3 мес. назад by TOLLIFi.
Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.
- Вы здесь:
-
Главная
-
Форум
-
IT и телекоммуникации
-
Конфигурация сетевого оборудования
- L2TPv3: Настройка L2 Tunnel over IP на оборудовании Cisco Systems