Примеры конфигураций маршрутизатора для настройки маршрутизации и управления ею
Эта страница содержит примеры конфигурации интерфейса и маршрутизации для маршрутизаторов серий Cisco IOS-XE и Juniper MX при работе с Azure ExpressRoute.
Внимание
Примеры на этой странице предназначены исключительно для справки. Для получения подходящей конфигурации, которая удовлетворяет вашим потребностям, необходимо провести совместную работу со специалистами по продажам или техническими специалистами поставщика и вашими сетевыми специалистами. Корпорация Майкрософт не предоставляет поддержку по вопросам, связанным с конфигурациями, перечисленными на этой странице. Для получения поддержки обратитесь к поставщику устройства.
Параметры MTU и TCP MSS в интерфейсах маршрутизатора
Значение MTU (максимальный передаваемый блок данных) для интерфейса ExpressRoute составляет 1500, что является типичным значением MTU по умолчанию для интерфейса Ethernet на маршрутизаторе. Если маршрутизатор не имеет другого MTU по умолчанию, нет необходимости указывать значение в интерфейсе маршрутизатора.
В отличие от VPN-шлюза Azure, максимальный размер сегмента TCP (MSS) для канала ExpressRoute не требуется указывать.
Приведенные в этой статье примеры конфигурации маршрутизатора применяются ко всем пирингам. Для получения дополнительных сведений о маршрутизации обратитесь к статьям Сеансы пиринга ExpressRoute и Требования ExpressRoute к маршрутизации.
Маршрутизаторы на основе Cisco IOS-XE
Примеры из этого раздела можно применить к любому маршрутизатору, работающему под управлением ОС семейства IOS-XE.
Настройка интерфейсов и подчиненных интерфейсов
Для каждого маршрутизатора, подключаемого к Корпорации Майкрософт, требуется один подмножест для каждого пиринга. Подчиненный интерфейс можно идентифицировать с помощью идентификатора виртуальной локальной сети или с помощью накопленной пары идентификаторов виртуальных сетей и IP-адреса.
Определение интерфейса Dot1Q
В этом примере приведено определение подчиненного интерфейса для подчиненного интерфейса с одним идентификатором виртуальной локальной сети. Идентификатор виртуальной локальной сети уникален в пределах одного пиринга. Последний октет адреса IPv4 всегда является нечетным числом.
interface GigabitEthernet<Interface_Number>.<Number>
encapsulation dot1Q <VLAN_ID>
ip address <IPv4_Address><Subnet_Mask>
Определение интерфейса QinQ
В этом примере приведено определение подчиненного интерфейса для подчиненного интерфейса с двумя идентификаторами виртуальной локальной сети. Идентификатор внешней виртуальной локальной сети (s-тег) остается постоянным для всех пирингов, если используется. Идентификатор внешней виртуальной локальной сети (c-тег) уникален для каждого пиринга. Последний октет адреса IPv4 всегда является нечетным числом.
interface GigabitEthernet<Interface_Number>.<Number>
encapsulation dot1Q <s-tag> second-dot1Q <c-tag>
ip address <IPv4_Address><Subnet_Mask>
Настройка сеансов eBGP
Для каждого пиринга необходимо настроить сеанс BGP с Майкрософт. Настройте сеанс BGP, используя следующий пример. Если ip-адрес IPv4, используемый для подинтерface, был a.b.c.d.d, ТО IP-адрес соседа BGP (Майкрософт) — a.b.c.d+1. Последний октет IPv4-адреса соседа BGP всегда является четным числом.
router bgp <Customer_ASN>
bgp log-neighbor-changes
neighbor <IP#2_used_by_Azure> remote-as 12076
!
address-family ipv4
neighbor <IP#2_used_by_Azure> activate
exit-address-family
!
Настройка префиксов, объявляемых в сеансе BGP
Настройте маршрутизатор на объявление выбранных префиксов в Майкрософт, используя следующий пример.
router bgp <Customer_ASN>
bgp log-neighbor-changes
neighbor <IP#2_used_by_Azure> remote-as 12076
!
address-family ipv4
network <Prefix_to_be_advertised> mask <Subnet_mask>
neighbor <IP#2_used_by_Azure> activate
exit-address-family
!
Карты маршрутизации
Для фильтрации префиксов, распространяемых в сети, используйте карты маршрутизации и списки префиксов. См. следующий пример и убедитесь, что настроены соответствующие списки префиксов.
router bgp <Customer_ASN>
bgp log-neighbor-changes
neighbor <IP#2_used_by_Azure> remote-as 12076
!
address-family ipv4
network <Prefix_to_be_advertised> mask <Subnet_mask>
neighbor <IP#2_used_by_Azure> activate
neighbor <IP#2_used_by_Azure> route-map <MS_Prefixes_Inbound> in
exit-address-family
!
route-map <MS_Prefixes_Inbound> permit 10
match ip address prefix-list <MS_Prefixes>
!
Настройка BFD
Вы настраиваете BFD в двух местах: один на уровне интерфейса и другой на уровне BGP. Пример для интерфейса QinQ.
interface GigabitEthernet<Interface_Number>.<Number>
bfd interval 300 min_rx 300 multiplier 3
encapsulation dot1Q <s-tag> second-dot1Q <c-tag>
ip address <IPv4_Address><Subnet_Mask>
router bgp <Customer_ASN>
bgp log-neighbor-changes
neighbor <IP#2_used_by_Azure> remote-as 12076
!
address-family ipv4
neighbor <IP#2_used_by_Azure> activate
neighbor <IP#2_used_by_Azure> fall-over bfd
exit-address-family
!
Маршрутизаторы серии Juniper MX
Примеры из этого раздела можно применять ко всем маршрутизаторам серии Juniper MX.
Настройка интерфейсов и подчиненных интерфейсов
Определение интерфейса Dot1Q
В этом примере приведено определение подчиненного интерфейса для подчиненного интерфейса с одним идентификатором виртуальной локальной сети. Идентификатор виртуальной локальной сети уникален в пределах одного пиринга. Последний октет адреса IPv4 всегда является нечетным числом.
interfaces {
vlan-tagging;
<Interface_Number> {
unit <Number> {
vlan-id <VLAN_ID>;
family inet {
address <IPv4_Address/Subnet_Mask>;
}
}
}
}
Определение интерфейса QinQ
В этом примере приведено определение подчиненного интерфейса для подчиненного интерфейса с двумя идентификаторами виртуальной локальной сети. Идентификатор внешней виртуальной локальной сети (s-тег) остается постоянным для всех пирингов, если используется. Идентификатор внешней виртуальной локальной сети (c-тег) уникален для каждого пиринга. Последний октет адреса IPv4 всегда является нечетным числом.
interfaces {
<Interface_Number> {
flexible-vlan-tagging;
unit <Number> {
vlan-tags outer <S-tag> inner <C-tag>;
family inet {
address <IPv4_Address/Subnet_Mask>;
}
}
}
}
Настройка сеансов eBGP
Для каждого пиринга необходимо настроить сеанс BGP с Майкрософт. Настройте сеанс BGP, используя следующий пример. Если ip-адрес IPv4, используемый для подинтерface, был a.b.c.d.d, ТО IP-адрес соседа BGP (Майкрософт) — a.b.c.d+1. Последний октет IPv4-адреса соседа BGP всегда является четным числом.
routing-options {
autonomous-system <Customer_ASN>;
}
}
protocols {
bgp {
group <Group_Name> {
peer-as 12076;
neighbor <IP#2_used_by_Azure>;
}
}
}
Настройка префиксов, объявляемых в сеансе BGP
Настройте маршрутизатор на объявление выбранных префиксов в Майкрософт, используя следующий пример.
policy-options {
policy-statement <Policy_Name> {
term 1 {
from protocol OSPF;
route-filter;
<Prefix_to_be_advertised/Subnet_Mask> exact;
then {
accept;
}
}
}
}
protocols {
bgp {
group <Group_Name> {
export <Policy_Name>;
peer-as 12076;
neighbor <IP#2_used_by_Azure>;
}
}
}
Политики маршрутизации
Для фильтрации префиксов, распространяемых в сети, можно использовать карты маршрутизации и списки префиксов. См. следующий пример и убедитесь, что настроены соответствующие списки префиксов.
policy-options {
prefix-list MS_Prefixes {
<IP_Prefix_1/Subnet_Mask>;
<IP_Prefix_2/Subnet_Mask>;
}
policy-statement <MS_Prefixes_Inbound> {
term 1 {
from {
prefix-list MS_Prefixes;
}
then {
accept;
}
}
}
}
protocols {
bgp {
group <Group_Name> {
export <Policy_Name>;
import <MS_Prefixes_Inbound>;
peer-as 12076;
neighbor <IP#2_used_by_Azure>;
}
}
}
Настройка BFD
Настройте BFD в разделе протокола BGP.
protocols {
bgp {
group <Group_Name> {
peer-as 12076;
neighbor <IP#2_used_by_Azure>;
bfd-liveness-detection {
minimum-interval 3000;
multiplier 3;
}
}
}
}
Настройка MACSec
Для конфигурации MACSec ключ связи подключения (CAK) и имя ключа связи подключения (CKN) должны соответствовать значениям, настроенным с помощью команд PowerShell.
security {
macsec {
connectivity-association <Connectivity_Association_Name> {
cipher-suite gcm-aes-xpn-128;
security-mode static-cak;
pre-shared-key {
ckn <Connectivity_Association_Key_Name>;
cak <Connectivity_Association_Key>; ## SECRET-DATA
}
}
interfaces {
<Interface_Number> {
connectivity-association <Connectivity_Association_Name>;
}
}
}
}
Дальнейшие действия
Дополнительные сведения об ExpressRoute см. в статье Вопросы и ответы по ExpressRoute.