Este documento descreve as mensagens de desconexão RADIUS (DMs).
Uma mensagem de alteração de autorização (CoA) é usada para alterar atributos e os filtros de dados associados a uma sessão de usuário. O sistema suporta mensagens de CoA do servidor de Autenticação, Autorização e Contabilização (AAA - Authentication, Authorization, and Accounting) para alterar filtros de dados associados a uma sessão de assinante.
A mensagem de solicitação de CoA deve conter atributos para identificar a sessão do usuário; atributos e filtros de dados precisam ser aplicados à sessão do usuário. O atributo filter-id (id do atributo 11) contém os nomes dos filtros. Se o ASR 5000 executar com êxito a solicitação de CoA, um ACK de CoA será enviado de volta ao servidor RADIUS e os novos atributos e filtros de dados serão aplicados à sessão do usuário. Caso contrário, um NAK de CoA é enviado com a razão apropriada como um atributo de código de erro sem fazer nenhuma alteração na sessão do usuário.
A mensagem DM é usada para desconectar sessões de usuário no ASR 5000 de um servidor RADIUS. A mensagem de solicitação DM deve conter os atributos necessários para identificar a sessão do usuário. Se o sistema desconectar com êxito a sessão do usuário, o DM ACK será enviado de volta ao servidor RADIUS. Caso contrário, o DM-NAK é enviado com os motivos de erro adequados.
Como mencionado anteriormente, é possível que o NAS não possa honrar mensagens de solicitação de desconexão ou solicitação de CoA por algum motivo. O Atributo de Causa de Erro fornece mais detalhes sobre a causa do problema. Ele PODE ser incluído nas mensagens Disconnect-ACK, Disconnect-NAK e CoA-NAK.
O campo Valor tem quatro octetos, que contêm um inteiro que especifica a causa do erro.
Os valores de Error-Code (expressos em decimal) incluem:
# Value
--- -----
201 Residual Session Context Removed>
202 Invalid EAP Packet (Ignored)
401 Unsupported Attribute
402 Missing Attribute
403 NAS Identification Mismatch
404 Invalid Request
405 Unsupported Service
406 Unsupported Extension
501 Administratively Prohibited
502 Request Not Routable (Proxy)
503 Session Context Not Found
504 Session Context Not Removable
505 Other Proxy Processing Error
506 Resources Unavailable
507 Request Initiated
Para identificação do ASR 5000, um destes métodos pode ser usado:
Para identificação da sessão do usuário, um destes métodos é usado:
A configuração de um DM RADIUS é muito fácil. Todas as linhas precisam ser configuradas no contexto de destino (aquela com a configuração RADIUS).
radius change-authorized-nas-ip ip_address chave [ criptografada ] valor [porta porta ]
[ eventtimestamp-window janela ] [ no-nas-identification-check ]
[ no-reverse-path-forward-check][ mpls-label input in_label_value | saída valor_rótulo_saída1
[ valor_rótulo_saída2 ]
radius change-authorize-nas-ip 192.168.88.40 encrypted key <key value>
no-reverse-path-forward-check
no-nas-identification-check
É possível que o soquete não esteja pronto para a porta UDP 3799. (De acordo com o RFC 3756, o pacote RADIUS Disconnect-Request é enviado para a porta UDP 3799).
Esse comportamento pode ser simplificado. O processo que manipula todas as solicitações de CoA é a instância de amgr 385, que é a da placa SMC/MIO ativa. Este comando CLI precisa ser executado no contexto de destino.
#cli test-commands password <xx> #show radius info radius group all instance 385
Essa saída se parece com:
# show radius info radius group all instance 385 AAAMGR instance 385:
cb-list-en: 3 AAA Group: <>
---------------------------------------------
socket number: 19
socket state: ready
local ip address: 10.176.81.215
local udp port: 50954
flow id: 0
use med interface: no
VRF context ID: 66
Neste exemplo, não há porta 3799 e este é o motivo do comportamento relatado. Se você vir o mesmo no seu caso, a solução é remover e adicionar novamente a configuração de CoA para recriar o soquete de escuta. Além disso, você pode tentar matar a instância 385 do amgr se a primeira solução não ajudar.
Após as ações descritas, você verá esta saída:
# show radius info radius group all instance 385 AAAMGR instance 385:
cb-list-en: 3 AAA Group: <>
--------------------------------------------->
socket number: 19>
socket state: ready
local ip address: 10.176.81.215
local udp port: 50954
flow id: 0
use med interface: no
VRF context ID: 66
socket number: 21 <---------------------
socket state: ready
local ip address: 10.176.81.215
local udp port: 3799 <--------------------
flow id: 0
use med interface: no
e o soquete deve estar visível no shell de depuração no contexto/VR apropriado:
bash-2.05b# netstat -lun | grep 3799
udp 0 0 10.176.81.215:3799 0.0.0.0:*
A porta UDP 3379 tem um soquete pronto, mas você ainda não vê as mensagens DM. Isso é provavelmente causado por uma configuração incorreta de radius change-authorized-nas-ip. Os valores de atributo que vieram na mensagem de solicitação de DM não correspondem àqueles que foram enviados em uma solicitação de Contabilidade para RADIUS.
Thursday August 06 2015
<<<<OUTBOUND
Code: 4 (Accounting-Request)
Attribute Type: 44 (Acct-Session-Id)
Length: 18
Value: 42 43 37 31 44 46 32 36 BC71DF26
30 36 30 33 41 32 42 46 0603A2BF
Attribute Type: 31 (Calling-Station-Id)
Length: 14
Value: 39 39 38 39 33 31 37 32 99893172
30 39 31 31 0911
Attribute Type: 4 (NAS-IP-Address)
Length: 6
Value: C0 A8 58 E1 ..X.
(192.168.88.225)
Attribute Type: 8 (Framed-IP-Address)
Length: 6
Value: 0A 55 12 21 .U.!
(10.85.18.33)
Radius Protocol
Code: Disconnect-Request (40)
Packet identifier: 0x2 (2)
Length: 71
Authenticator: 4930a228f13da294550239f5187b08b9
Attribute Value Pairs
AVP: l=6 t=NAS-IP-Address(4): 192.168.88.225
NAS-IP-Address: 192.168.88.225 (192.168.88.225)
AVP: l=6 t=Framed-IP-Address(8): 10.85.18.33
Framed-IP-Address: 10.85.18.33 (10.85.18.33)
AVP: l=14 t=Calling-Station-Id(31): 998931720911
Calling-Station-Id: 998931720911
AVP: l=18 t=Acct-Session-Id(44): BC71DF260603A2BF
Acct-Session-Id: BC71DF260603A200
Neste exemplo, o valor de Acct-Session-Id que chega ao ASR 5000 é diferente daquele enviado para o RADIUS e este é o motivo do problema. Esse problema pode ser corrigido por alterações apropriadas no lado do RADIUS.
O Acct-Session-Id para a sessão ativa pode ser verificado com o comando show subscribers gsn-only aaa-configuration ative imsi <>.
[local]# show subscribers ggsn-only aaa-configuration active imsi 434051801170727
Username: 998931720911@mihc1 Status: Online/Active
Access Type: ggsn-pdp-type-ipv4 Network Type: IP
Access Tech: WCDMA UTRAN Access Network Peer ID: n/a
callid: 057638b8 imsi: 434051801170727
3GPP2 Carrier ID: n/a
3GPP2 ESN: n/a
RADIUS Auth Server: 192.168.88.40 RADIUS Acct Server: n/a
NAS IP Address: 192.168.88.225
Acct-session-id: BC71DF260603A2BF
Nesse ponto, sabe-se que esse tipo de mensagem de erro significa que o problema vem do servidor RADIUS. No entanto, ainda não é claro o que está errado. Aqui, a limitação do ASR 5000 não oferece suporte a Called-station-Id no Radius DM. Portanto, se for visto lá, ele responde com o erro destacado.
INBOUND>>>>>
RADIUS COA Rx PDU, from 192.168.1.254:38073 to 192.168.1.2:1800
Code: 40 (Disconnect-Request)
Id: 106
Length: 61
Authenticator: 8D F1 50 2E DD 79 49 39 79 A0 B5 FC 59 3E C4 51
Attribute Type: 32 (NAS-Identifier)
Length: 9
Value: 73 74 61 72 65 6E 74 starent
Attribute Type: 1 (User-Name)
Length: 10
Value: 74 65 73 74 75 73 65 72 testuser
Attribute Type: 30 (Called-Station-ID)
Length: 9
Value: 65 63 73 2D 61 70 6E ecs-apn
Attribute Type: 31 (Calling-Station-Id)
Length: 13
Value: 36 34 32 31 31 32 33 34 64211234
35 36 37 567
<<<<OUTBOUND 06:57:42:683 Eventid:70902(6)
RADIUS COA Tx PDU, from 192.168.1.2:1800 to 192.168.1.254:38073
Code: 42 (Disconnect-Nak)
Id: 106
Length: 26
Authenticator: 34 2E DE B4 77 22 4A FE A5 16 93 91 0D B2 E6 3B
Attribute Type: 101 (Error-Cause)
Length: 6
Value: 00 00 01 91 ....
(Unsupported-Attribute)
Isso acontece nesta configuração:
radius change-authorize-nas-ip 192.168.1.2 encrypted key
+A27wvxlgy06ia30pcqswmdajxd11ckg4ns88i6l92dghsqw7v77f1 port 1800
event-timestamp-window 0 no-reverse-path-forward-check no-nas-identification-check
aaa group default
radius attribute nas-ip-address address 192.168.1.2
radius server 192.168.1.128 encrypted key
+A3ec01d8zs92ed1gz2mytddjjrf11af3u0watpyr3gd0rs8mthlzc port 1812
radius accounting server 192.168.1.128 encrypted key
+A24x0pj4mjgnqh0sclbnen1lm6f1d6drn2nw3yf31tmfldk9fr38e port 1813
#exit
Para um contexto PDP ativo, a Solicitação de Desconexão é NAKed:
INBOUND>>>>> 04:27:13:898 Eventid:70901(6)
RADIUS COA Rx PDU, from 192.168.1.254:42082 to 192.168.1.2:1800 (52) PDU-dict=starent-vsa1
Code: 40 (Disconnect-Request)
Id: 115
Length: 52
Authenticator: BF 95 05 0B 87 B4 42 59 5F C6 CC 78 D7 17 77 7F
Attribute Type: 32 (NAS-Identifier)
Length: 9
Value: 73 74 61 72 65 6E 74 starent
Attribute Type: 1 (User-Name)
Length: 10
Value: 74 65 73 74 75 73 65 72 testuser
Attribute Type: 31 (Calling-Station-Id)
  Value: 36 34 32 31 31 32 33 34 64211234; Length: 13
35 36 37 567
Monday October 19 2015
<<<<OUTBOUND 04:27:13:898 Eventid:70902(6)
RADIUS COA Tx PDU, from 192.168.1.2:1800 to 192.168.1.254:42082 (26) PDU-dict=starent-vsa1
Code: 42 (Disconnect-Nak)
Id: 115
Length: 26
Authenticator: 75 D1 04 3E 31 19 9C 92 B2 2E 5D 5F 98 B9 34 99
Attribute Type: 101 (Error-Cause)
Length: 6
Value: 00 00 01 93 ....
(NAS-Identification-Mismatch)
No entanto, quando essa linha estiver incluída no grupo AAA padrão:
radius attribute nas-identifier starent
começa a funcionar:
Monday October 19 2015
INBOUND>>>>> 05:19:01:798 Eventid:70901(6)
RADIUS COA Rx PDU, from 192.168.1.254:55426 to 192.168.1.2:1800 (52) PDU-dict=starent-vsa1
Code: 40 (Disconnect-Request)
Id: 171
Length: 52
Authenticator: 3A 67 43 25 DC 18 5C E3 23 08 04 C0 9C 31 68 68
NAS-Identifier = starent
User-Name = testuser
Calling-Station-Id = 64211234567
Monday October 19 2015
<<<<OUTBOUND 05:19:01:799 Eventid:70902(6)
RADIUS COA Tx PDU, from 192.168.1.2:1800 to 192.168.1.254:55426 (26) PDU-dict=starent-vsa1
Code: 41 (Disconnect-Ack)
Id: 171
Length: 26
Authenticator: 45 07 79 C5 E0 92 53 28 8F AD A3 E3 C4 B4 52 10
Acct-Termination-Cause = Admin_Reset
Ou funcionará também sem a configuração do identificador nas no grupo AAA, mas com o identificador NAS AVP removido da solicitação de desconexão:
INBOUND>>>>> 05:14:41:374 Eventid:70901(6)
RADIUS COA Rx PDU, from 192.168.1.254:54757 to 192.168.1.2:1800 (43) PDU-dict=starent-vsa1
Code: 40 (Disconnect-Request)
Id: 78
Length: 43
Authenticator: 84 5D FE 5E 90 0D C8 16 84 7A 11 67 FF 82 40 DB
User-Name = testuser
Calling-Station-Id = 64211234567
Monday October 19 2015
<<<<OUTBOUND 05:14:41:375 Eventid:70902(6
RADIUS COA Tx PDU, from 192.168.1.2:1800 to 192.168.1.254:54757 (26) PDU-dict=starent-vsa1
Code: 41 (Disconnect-Ack)
Id: 78
Length: 26
Authenticator: 34 84 5B 8E AF 02 1C F2 58 26 1B 0C 20 37 93 33
Acct-Termination-Cause = Admin_Reset
O bug da Cisco ID CSCuw78786 foi enviado. Isso foi testado nas versões 17.2.0 e 15.
Revisão | Data de publicação | Comentários |
---|---|---|
1.0 |
17-Dec-2015 |
Versão inicial |