Протокол IP : Универсальная инкапсуляция маршрутизации (GRE)

Состояния туннельного интерфейса GRE и что влияет на них

20 октября 2016 - Машинный перевод
Другие версии: PDF-версия:pdf | Английский (22 августа 2015) | Отзыв

Введение

Этот документ описывает другие условия, которые могут влиять на состояние интерфейса Туннеля универсальной инкапсуляции маршрутизации (GRE).

Внесенный Вэнь Чжаном и Атри Basu, специалисты службы технической поддержки Cisco.

Общие сведения

Функциональность туннелей GRE не зависит от состояния. Это значит, что конечная точка каждого туннеля не хранит никаких данных о состоянии или доступности другой удаленной конечной точки этого туннеля. Последствие этого - то, что по умолчанию локальный маршрутизатор оконечной точки туннеля не имеет способности принести протокол линии связи Туннельного интерфейса GRE вниз, если удаленный конец туннеля недостижим. Возможность помечать интерфейс, как отключенный, когда удаленный конец соединения недоступен, используется для удаления маршрутов (а именно, статических маршрутов) в таблице маршрутизации, которая используется интерфейсом исходящей связи. В частности, если линейный протокол интерфейса отключается, то любые статические маршруты, которые указывают на этот интерфейс, удаляются из таблицы маршрутизации. Это обеспечивает установку альтернативного (плавание) статический маршрут или для Маршрутизации на основе политик (PBR) для выбора альтернативного следующего перехода или интерфейса. Также существуют другие приложения, которые инициируют, когда интерфейс изменяет состояние; например, 'резервный интерфейс <b-интерфейс>'.

Три других состояния туннеля

Существует три возможных состояния, в которых Туннельный интерфейс GRE может быть:

  1. Up/up - Это подразумевает, что туннель полностью функционален и является проходящим трафиком. Это - и adminstratively и его протокол, подключен также.
  2. Adminstratively вниз/вниз - Это подразумевает, что был административно закрыт интерфейс.
  3. /вниз - Это подразумевает, что, даже при том, что туннель подключен административно, что-то заставляет протокол линии связи на интерфейсе не работать.

Когда туннельный интерфейс сначала создан, и никакая другая конфигурация не применена к нему, интерфейс не закрыт по умолчанию:

Router#show run interface tunnel 1
Building configuration...

Current configuration : 40 bytes
!
interface Tunnel1
 no ip address
end

В этом состоянии интерфейс всегда/вниз:

Router(config-if)#do show ip interface brief 
Interface                 IP-Address     OK? Method Status               Protocol
GigabitEthernet0/0        172.16.52.1    YES NVRAM administratively down down   
GigabitEthernet0/1        14.36.128.49   YES NVRAM down                 down   
GigabitEthernet0/2        unassigned     YES NVRAM down                 down   
GigabitEthernet0/3        unassigned     YES NVRAM down                 down   
Loopback1                 192.168.2.1    YES NVRAM up                   up     
Tunnel1                   unassigned     YES unset up                   down

Это вызвано тем, что интерфейс административно включен, но так как он не имеет точки начала туннеля или назначения туннеля, line protocol is down.

Для создания этого интерфейсного up/up допустимая точка начала туннеля и назначение туннеля должны быть настроены:

Router#show run interface tunnel 1
Building configuration...

Current configuration : 113 bytes
!
interface Tunnel1
 ip address 1.1.1.1 255.255.255.0
 tunnel source Loopback1
 tunnel destination 10.0.0.1
end

Router#show ip interface brief
Interface                 IP-Address     OK? Method Status               Protocol
GigabitEthernet0/0        172.16.52.1    YES NVRAM up                   up     
GigabitEthernet0/1        14.36.128.49   YES NVRAM down                 down   
GigabitEthernet0/2        unassigned     YES NVRAM down                 down   
GigabitEthernet0/3        unassigned     YES NVRAM down                 down   
Loopback0                 unassigned     YES unset up                   up     
Loopback1                 192.168.2.1    YES manual up                   up     
Tunnel1                   1.1.1.1        YES manual up                   up     

Предыдущая последовательность показывает что:

  • Допустимая точка начала туннеля состоит из любого интерфейса, который находится самостоятельно в состоянии вверх/вверх и настроил IP-адрес на нем. Например, если бы точка начала туннеля была изменена на Loopback0, то туннельный интерфейс выключился бы даже при том, что Loopback0 находится в состоянии вверх/вверх:

    Router(config-if)#int tun 1
    Router(config-if)#tunnel source loopback 0
    Router(config-if)#
    *Sep 6 19:51:31.043: %LINEPROTO-5-UPDOWN: Line protocol on Interface
    Tunnel1, changed state to down
  • Допустимое назначение туннеля является тем, которое маршрутизуемо. Однако это не должно быть достижимо, который может быть замечен по этому эхо - тесту (ping test):

    Router#show ip route 10.0.0.1
    % Network not in table
    Router#show ip route | inc 0.0.0.0
    Gateway of last resort is 172.16.52.100 to network 0.0.0.0
    S*   0.0.0.0/0 [1/0] via 172.16.52.100
    Router#ping 10.0.0.1
    Type escape sequence to abort.
    Sending 5, 100-byte ICMP Echos to 10.0.0.1, timeout is 2 seconds:
    .....
    Success rate is 0 percent (0/5)

До сих пор туннель был настроен как точка-точка (P2P) Туннель GRE, который является по умолчанию. Если этот туннель должен был быть изменен на многоточечный GRE (mGRE) туннель, то все, что требуется для туннеля быть в работоспособном состоянии, является допустимой точкой начала туннеля (туннель mGRE может иметь много назначений туннеля, так, чтобы не мог использоваться для управления состоянием туннельного интерфейса):

Router#show run interface tunnel 1
Building configuration...

Current configuration : 129 bytes
!
interface Tunnel1
 ip address 1.1.1.1 255.255.255.0
 no ip redirects
 tunnel source Loopback1
 tunnel mode gre multipoint
end

Router#show ip interface brief | include Tunnel
Tunnel1                   1.1.1.1        YES manual up                   up   

В любой точке, если туннельный интерфейс является завершением работы adminstratively, туннель сразу входит в административно выключенное / нерабочее состояние:

Router#show run interface tunnel 1
Building configuration...

Current configuration : 50 bytes
!
interface Tunnel1
 no ip address
 shutdown
end

Router#show ip interface brief | include Tunnel
Tunnel1                   unassigned     YES unset administratively down down   

Состояние туннеля GRE P2P

Обычно, Туннельный интерфейс GRE P2P подходит, как только он настроен с допустимым адресом точки начала туннеля или интерфейсом, который подключен и конечный IP - адрес туннеля, который маршрутизуем как показано в предыдущем разделе.

Протокол линии связи, Выключенный локально на маршрутизаторе

Под обычными состояниями существует только три причины для Туннеля GRE, чтобы быть в состоянии включения/отключения:  

  • Существует никакой маршрут, который включает маршрут по умолчанию к адресу назначения туннеля.
  • Отключен интерфейс, привязанный к источнику туннеля.
  • Маршрут к адресу назначения туннеля через сам туннель, который приводит к рекурсии.

Эти три правила (отсутствующий маршрут, интерфейс вниз и неверно маршрутизованное назначение туннеля) являются локальными проблемами к маршрутизатору в оконечных точках туннеля и не касаются проблем в промежуточной сети или других функциях, отнесенных в Туннель GRE, который мог бы быть настроен. Этот документ описывает сценарии, где другие факторы могли бы влиять на состояние Туннеля GRE.

Сообщения поддержки активности туннеля с общей инкапсуляцией маршрутов (GRE)

Базовые правила не покрывают случай, в котором туннельные пакеты GRE успешно переданы, но потеряны, прежде чем они достигнут другого конца туннеля. Из-за этого пакеты данных, проходящие через туннель GRE, попадают в "черные дыры", даже если альтернативный маршрут, использующий PBR, или плавающий статический маршрут через другой интерфейс потенциально доступен. Пакеты Keepalive на Туннельном интерфейсе GRE используются для решения этой проблемы таким же образом, пакеты Keepalive используются на физических интерфейсах.

С релизом 12.2 программного обеспечения Cisco IOS (8) T, возможно настроить пакеты Keepalive на Туннельном интерфейсе GRE P2P. Это изменение, в свою очередь, позволяет динамически отключать интерфейс, если сообщения поддержки активности отсутствуют в течение некоторого периода времени . Чтобы лучше понять, как пакеты Keepalive Туннеля GRE работают см. Пакеты Keepalive Туннеля GRE.

Примечание: Пакеты Keepalive туннеля GRE только допустимы и имеют эффект на Туннели GRE P2P; они не допустимы и не имеют никакого эффекта на туннели mGRE.

Многоточечный GRE (mGRE) туннельные интерфейсы

Для туннельных интерфейсов MGRE с тех пор нет никакого неподвижного назначения туннеля, некоторые предыдущие проверки для туннелей P2P не применимы. Вот причины, которыми протокол линии связи туннеля mGRE может быть в нерабочем состоянии:

  • Интерфейс точки начала туннеля находится в нерабочем состоянии.
  • Если Интерфейсная опция Госконтроля активирована для Динамической многоточечной VPN (DMVPN), и ни один из Серверов следующего перехода (NHSs) не отвечает, то протокол линии связи помещен в нерабочее состояние. Для получения дополнительной информации на Интерфейсном Госконтроле Функция, посмотрите Туннельное Руководство по конфигурации Контроля исправности и Восстановления DMVPN.

Зависимости от состояния избыточности

Когда IP-адрес точки начала туннеля настроен как IP-адрес резервирования (например, Виртуальный IP Протокол маршрутизатора Горячего резервирования (VIP HSRP) адрес), тогда состояние туннельного интерфейса отслеживает состояние избыточности.

Это добавило дополнительную проверку, которая поддерживает такие туннельные интерфейсы в нерабочем состоянии протокола линии связи, пока состояние избыточности не изменяется на АКТИВНЫЙ. В данном примере конфигурация ipc zone default неверна настроенного заставляет резервирование быть в состоянии СОГЛАСОВАНИЯ и поддерживает такие туннельные интерфейсы в нерабочем состоянии:

Router#show redundancy state
my state = 3 -NEGOTIATION
peer state = 1 -DISABLED
Mode = Simplex
Unit ID = 0

Maintenance Mode = Disabled
Manual Swact = disabled (system is simplex (no peer unit))
Communications = Down Reason: Simplex mode

client count = 16
client_notification_TMR = 60000 milliseconds
RF debug mask = 0x0
Router#show interface tunnel100
Tunnel100 is up, line protocol is down
Hardware is Tunnel
Internet address is 172.16.1.100/24
MTU 17912 bytes, BW 100 Kbit/sec, DLY 50000 usec,
reliability 255/255, txload 1/255, rxload 1/255
Encapsulation TUNNEL, loopback not set
Keepalive not set
Tunnel source 10.122.162.254 (GigabitEthernet0/1)
Tunnel Subblocks:
src-track:
Tunnel100 source tracking subblock associated with GigabitEthernet0/1
Set of tunnels with source GigabitEthernet0/1, 2 members (includes
iterators), on interface <OK>
Tunnel protocol/transport multi-GRE/IP
<SNIP>

Устранение неполадок

В дополнение к проверке причин ранее выделил, туннельная оценка состояния линии для туннеля вниз обосновывают, может быть замечен с туннелем туннельного интерфейса показа x команда hidden как показано здесь:

Router#show tunnel interface tunnel 100
Tunnel100
Mode:multi-GRE/IP, Destination UNKNOWN, Source GigabitEthernet0/1
Application ID 1: unspecified
Tunnel Subblocks:
src-track:
Tunnel100 source tracking subblock associated with GigabitEthernet0/1
Set of tunnels with source GigabitEthernet0/1, 2 members (includes
iterators), on interface <OK>
Linestate - current down
Internal linestate - current down, evaluated down - interface not up
Tunnel Source Flags: Local
Transport IPv4 Header DF bit cleared
OCE: IP tunnel decap
Provider: interface Tu100, prot 47
Performs protocol check [47]
Performs Address save check
Protocol Handler: GRE: key 0x64, opt 0x2000
ptype: ipv4 [ipv4 dispatcher: drop]
ptype: ipv6 [ipv6 dispatcher: drop]
ptype: mpls [mpls dispatcher: drop]
ptype: otv [mpls dispatcher: drop]
ptype: generic [mpls dispatcher: drop]

 Примечание: Существует открытое усовершенствование, чтобы заставить туннель вниз обосновать более явный, чтобы указать, что это происходит из-за состояния избыточности, не являющегося активным. Это отслежено идентификатором ошибки Cisco CSCuq31060.

Дополнительные сведения



Document ID: 118361