Вы просматриваете старую версию данной страницы. Смотрите текущую версию.

Сравнить с текущим просмотр истории страницы

« Предыдущий Версия 2 Следующий »

При наличии проблем у клиентов с PPPoE, на OLT можно настроить логгирование уровня Debug по агенту PPPoE-IA для анализа и поиска причин.

PPPoE Intermediate Agent применяется для предоставления BRAS дополнительных данных о полученном PADI-запросе. К таким данным можно отнести информацию о терминале, на котором запущен PPPoE Intermediate Agent, а также информацию об ONT, с которого получен PADI-запрос. Модификация PADI пакетов производится путем перехвата и последующей обработки на CPU терминала.

 1. В первую очередь, нужно включить обработку PPPoE трафика командой enable:

LTP-8X# configure terminal
LTP-8X(config)# profile pppoe-ia pppoe-ia-00
LTP-8X(config-pppoe-ia)("pppoe-ia-00")# enable
LTP-8X(config-pppoe-ia)("pppoe-ia-00")# do commit
LTP-8X(config-pppoe-ia)("pppoe-ia-00")# do save

Из дефолта, обработка PPPoE трафика выключена.

После применения настроек, можно мониторить активные PPPoE-сессии на gpon-port'ах:

LTP-8X# show interface gpon-port 0 pppoe sessions
PPPoE sessions (1):
     ##       Serial                    GPON-port    Ont ID     Port      Client MAC                 Session ID  Duration      Unblock
     1          ELTX91000020  0                        6               490       EC:B1:E0:23:4B:E6    0x0019        0:03:18          0:00:00

2. Затем, настроить логгирование уровня Debug по агенту PPPoE-IA:

LTP-8X# configure terminal
LTP-8X(config)# logging system loglevel debug 
LTP-8X(config)# logging file loglevel debug 
LTP-8X(config)# logging module pmchal-pppoeia loglevel debug
LTP-8X(config)# do commit
LTP-8X(config)# do save

3. После выполнения настроек логгирования, можно вести анализ PPPoE трафика по лог файлам (buffer, ltp, ltp.1...).

Напомним структуру PPPoE-пакета:

            +-----------+-----------+-------------+--------------------+-----------
            |   DMAC    |   SMAC    | Type/Length |    Payload Data    |   FCS    |
            |  6 bytes  |  6 bytes  |   2 bytes   |  Variable length   | 4 bytes  |
            +-----------+-----------+-------------+--------------------+-----------
                                                  |                    |
                                        |                                |
                               |                                            |
                     |                                                         |
            |                                                                     |
            +----------+----------+--------+------------+----------+---------------
            |   Ver    |   Type   |  Code  | Session ID |  Length  | Payload Data1|
            |  4 bits  |  4 bits  | 1 byte |  2 bytes   | 2 bytes  |              |
            +----------+----------+--------+------------+----------+---------------

Теперь, рассмотрим перехваченные пакеты PADI (PPPoE Active Discovery Initiation) и PADR (PPPoE Active Discovery Request) в логах. Их посылает pppoe-клиент, которым является WAN на ONT. Либо устройство за ONT, если ONT настроена в режиме Bridge.

Aug 26 13:09:31 LTP-8X pmchal: debug: [PPPOEIA]
Aug 26 13:09:31 LTP-8X pmchal: debug: [PPPOEIA] RX: rx(60): c=0,p=490 p->s PADI ff ff ff ff ff ff ec b1 e0 23 4b e6 81 00 00 0a 88 63 11 09 00 00 00 0f 01 01 00 00 01 03 ...
Aug 26 13:09:31 LTP-8X pmchal: debug: [PPPOEIA] addvstag: wrong frame format - can not find EndOfList tag, len=39
Aug 26 13:09:31 LTP-8X pmchal: debug: [PPPOEIA] addvstag: cid+rid='^A'
Aug 26 13:09:31 LTP-8X pmchal: debug: [PPPOEIA] VLTAG: msgVlanTagsNum=1, vlanOuterOrig=(1,8100,044c), vlanOuter=(1,8100,0005), vlanInner=(1,8100,000a)
Aug 26 13:09:31 LTP-8X pmchal: debug: [PPPOEIA] VLTAG: model 1

Aug 26 13:09:31 LTP-8X pmchal: debug: [PPPOEIA]
Aug 26 13:09:31 LTP-8X pmchal: debug: [PPPOEIA] RX: rx(68): c=0,p=490 p->s PADR 48 5b 39 02 55 84 ec b1 e0 23 4b e6 81 00 00 0a 88 63 11 19 00 00 00 2c 01 01 00 05 45 4c ...
Aug 26 13:09:31 LTP-8X pmchal: debug: [PPPOEIA] SESTB: addses: id=0: chan=0, port=490, client=ec:b1:e0:23:4b:e6, server=48:5b:39:02:55:84, sess=0000, start=1724652571, hostUniq=00 07 ec b1 e0 23 4b e6 00
Aug 26 13:09:31 LTP-8X pmchal: debug: [PPPOEIA] addvstag: wrong frame format - can not find EndOfList tag, len=68
Aug 26 13:09:31 LTP-8X pmchal: debug: [PPPOEIA] addvstag: cid+rid='^A'
Aug 26 13:09:31 LTP-8X pmchal: debug: [PPPOEIA] VLTAG: msgVlanTagsNum=1, vlanOuterOrig=(1,8100,044c), vlanOuter=(1,8100,0005), vlanInner=(1,8100,000a)
Aug 26 13:09:31 LTP-8X pmchal: debug: [PPPOEIA] VLTAG: model 1
Aug 26 13:09:31 LTP-8X pmchal: debug: [PPPOEIA] RX: tx(88): 48 5b 39 02 55 84 ec b1 e0 23 4b e6 81 00 00 05 81 00 01 ea 88 63 11 19 00 00 00 3c 01 01 ...

Dst.mac - ff ff ff ff ff ff (48 5b 39 02 55 84) 
Src.mac - ec b1 e0 23 4b e6

Отправленный пакет PADI, инициирует начало установления PPPoE-сессии. В ответ на полученный PADI, сервер должен отправить PADO (PPPoE Active Discovery Offer). На него в ответ клиент посылает PADR. И затем, цикл установленния PPPoE-сесии завершается отправкой сервером пакета PADS (PPPoE Active Discovery Session-confirmation).
Если, в ответ на PADI(PADR) сообщение от PPPoE-сервера не приходит PADO(PADS), то следует разбираться с сетью выше OLT. 

Разрывы сессии

Если происходят разрывы PPPoE-сессии, и при этом ONT не отключается, то следует смотреть пакеты PADT ((PPPoE) Active Discovery Termination).

Этот пакет обрывает соединение с POP. Он может быть послан либо со стороны пользователя, либо со стороны сервера.

Aug 26 13:09:20 LTP-8X pmchal: debug: [PPPOEIA]
Aug 26 13:09:20 LTP-8X pmchal: debug: [PPPOEIA] RX: rx(68): c=0,p=000 s->p PADT ec b1 e0 23 4b e6 48 5b 39 02 55 84 81 00 00 05 81 00 01 ea 88 63 11 a7 00 2c 00 11 02 03 ...
Aug 26 13:09:20 LTP-8X pmchal: debug: [PPPOEIA] SESTB: delses: NOTE: Session does not exist: chan=0, port=0, client=ec:b1:e0:23:4b:e6, server=48:5b:39:02:55:84, sess=002c, start=0, hostUniq=00 00

В примере выше, инициатором разрыва сессии, выступает сервер, так как Dst.mac= ec b1 e0 23 4b e6 мак клиента, а Src.mac=48 5b 39 02 55 84 мак сервера.

В примере ниже, инициатором разрыва сессии, выступает клиент, так как первым идёт мак сервера, Dst.mac=48 5b 39 02 55 84, a Src.mac=ec b1 e0 23 4b e6 мак клиента.

Aug 26 12:44:12 LTP-8X pmchal: debug: [PPPOEIA]
Aug 26 12:44:12 LTP-8X pmchal: debug: [PPPOEIA] RX: rx(60): c=0,p=490 p->s PADT 48 5b 39 02 55 84 ec b1 e0 23 4b e6 81 00 00 0a 88 63 11 a7 00 2b 00 00 00 00 05 00 08 00 ...
Aug 26 12:44:12 LTP-8X pmchal: debug: [PPPOEIA] SESTB: delses: NOTE: Session does not exist: chan=0, port=490, client=ec:b1:e0:23:4b:e6, server=48:5b:39:02:55:84, sess=002b, start=0, hostUniq=00 00
Aug 26 12:44:12 LTP-8X pmchal: debug: [PPPOEIA] addvstag: wrong frame format - can not find EndOfList tag, len=24
Aug 26 12:44:12 LTP-8X pmchal: debug: [PPPOEIA] addvstag: cid+rid='^A'
Aug 26 12:44:12 LTP-8X pmchal: debug: [PPPOEIA] VLTAG: msgVlanTagsNum=1, vlanOuterOrig=(1,8100,044c), vlanOuter=(1,8100,0005), vlanInner=(1,8100,000a)
Aug 26 12:44:12 LTP-8X pmchal: debug: [PPPOEIA] VLTAG: model 1
Aug 26 12:44:12 LTP-8X pmchal: debug: [PPPOEIA] RX: tx(72): 48 5b 39 02 55 84 ec b1 e0 23 4b e6 81 00 00 05 81 00 01 ea 88 63 11 a7 00 2b 00 10 01 05 ...

После анализа проблем с PPPoE, верните прежний уровень логгирования system, file, pmchal-pppoeia.

LTP-8X# configure terminal
LTP-8X(config)# logging system loglevel notice 
LTP-8X(config)# logging file loglevel notice 
LTP-8X(config)# logging module pmchal-pppoeia loglevel notice
LTP-8X(config)# do commit
LTP-8X(config)# do save
  • Нет меток