gramshi Posted June 7, 2012 Posted June 7, 2012 (edited) esr10k, pre2, 12.2(33)SB11 pppoe - без вопросов. Стал переводить ipoe c 6500 (для единообразия да и ubrl стремный там). Изначально оттестировался на сети с 1й машинкой, когда заработало - перевел все (примерно 3000 сессий) и тут началось... Сессии залипают в состоянии unauth и вывести их из него я не нашел способа. Доступ - влан на свитч, opt82, traffic_segmentation. К каждому порту прибивается IP через opt82. Аутентификацию сделал на основе opt82. есть около 1000 вот таких интерфейсов: esr10k#sh run int g4/0/0.1500 Building configuration... Current configuration : 348 bytes ! interface GigabitEthernet4/0/0.1500 encapsulation dot1Q 1500 ip dhcp relay information trusted ip dhcp relay information policy-action keep ip unnumbered Loopback1 ip access-group govnotraf_dhcp in ip helper-address 192.168.31.234 ip flow ingress service-policy type control PM_test_dhcp ip subscriber l2-connected initiator dhcp end esr10k#sh ru | s PM_test_dhcp policy-map type control PM_test_dhcp class type control CM_redir_timeout event timed-policy-expiry 1 service disconnect ! class type control always event session-start 10 authorize aaa password XXXXX identifier circuit-id plus remote-id 20 service-policy type service name SVC_REDIR 30 service-policy type service name SVC_SRV 40 set-timer TIMER_unauth 5 ! class type control always event session-restart 10 authorize aaa password XXXXX identifier circuit-id plus remote-id 20 service-policy type service name SVC_REDIR 30 service-policy type service name SVC_SRV 40 set-timer TIMER_unauth 5 ! Некоторая часть сессий залипает в состоянии unauth и вывести их из него я не могу. 70 из 3000 - это 2%, и это 70 разъяренных клиентов :( В основном - у этих сессий отсутствует remote-id и circuit-id, соответственно им некак авторизоваться. В том, что опция82 приходит от свитчей доступа, я уверен, на 6500 подобного не случалось ни разу. После cle sss ses uid N сессия пропадает из списка, но потом вновь появляется с другим uid и последним событием session-restart. Вот пример такой сессии: 8866 IP unauthen 00:03:58 00e0.6715.832d esr10k#sh sss ses uid 8866 Unique Session ID: 8866 Identifier: 00e0.6715.832d SIP subscriber access type(s): IP Current SIP options: Req Fwding/Req Fwded Session Up-time: 00:04:09, Last Changed: 00:04:09 Policy information: Authentication status: unauthen Active services associated with session: name "SVC_SRV", applied before account logon name "SVC_REDIR", applied before account logon Rules, actions and conditions executed: subscriber rule-map PM_test_dhcp condition always event session-restart 10 authorize identifier circuit-id:remote-id 15 authorize identifier source-ip-address 20 service-policy type service name SVC_REDIR 30 service-policy type service name SVC_SRV 40 set-timer TIMER_unauth 5 Session inbound features: Traffic classes: Traffic class session ID: 1635 ACL Name: 197, Packets = 374, Bytes = 16046 Traffic class session ID: 26276 ACL Name: ACL_srv_out, Packets = 1, Bytes = 65 Default traffic is dropped Unmatched Packets = 0, Re-classified packets (redirected) = 189 Feature: Layer 4 Redirect Rule table is empty Session outbound features: Traffic classes: Traffic class session ID: 1635 ACL Name: 197, Packets = 377, Bytes = 13132 Traffic class session ID: 26276 ACL Name: ACL_srv_in, Packets = 1, Bytes = 529 Default traffic is dropped Unmatched Packets = 2, Re-classified packets (redirected) = 0 Configuration sources associated with this session: Service: SVC_SRV, Active Time = 00:04:12 Service: SVC_REDIR, Active Time = 00:04:12 Interface: GigabitEthernet4/0/0.1400, Active Time = 00:04:12 esr10k#sh ip dh bi | i 00e0.6715.832d 192.168.167.68 00e0.6715.832d Jun 07 2012 08:15 PM Relay Active GigabitEthernet4/0/0.1400 esr10k#sh ip dh bi 192.168.167.68 IP address Client-ID/ Lease expiration Type State Interface Hardware address/ User name 192.168.167.68 00e0.6715.832d Jun 07 2012 08:15 PM Relay Active GigabitEthernet4/0/0.1400 А так выглядит дхцп привязка на соседнем порту того же свитча: esr10k#sh ip dh bi 192.168.167.69 IP address Client-ID/ Lease expiration Type State Interface Hardware address/ User name 192.168.167.69 0014.22e4.4ecd Jun 07 2012 07:56 PM Relay Active GigabitEthernet4/0/0.1400 Remote id : 00061cbdb99ba268 Circuit id : 000405780004 Сбросить привязку не получается: esr10k#cle ip dh bi 192.168.167.68 % 192.168.167.68 is a manual binding. Use the command, no ip dhcp pool. Да только никакого пула нет, дхцп релеится на сервер. Думал поменять идентификатор авторизации, но 1)source-ip даже не collect`ится - в конструкции 10 collect ident source-ip 20 authorize aaa password XXXXX ident source-ip правило 20 не выполнялось ни разу 2)mac-address - его неоткуда брать. Последняя идея - добавить в session-restart после обычной авторизации авторизацию на отдельном радиусе по маку, а этот радиус научить искать по свитчам доступа, на каком порту такой мак, и перезапрашивать у основного радиуса с найденными параметрами. (Костыль костылем...) Рад буду любым предложениям. Edited June 8, 2012 by gramshi Вставить ник Quote
triam Posted June 8, 2012 Posted June 8, 2012 Нужно событие на истечение таймера unauth - Сбросить все сервисы. Вставить ник Quote
gramshi Posted June 8, 2012 Author Posted June 8, 2012 А разве service disconnect этого не сделает? Вставить ник Quote
Дегтярев Илья Posted June 8, 2012 Posted June 8, 2012 Выкинуть в топку "initiator dhcp". Поднимать сессию по появления неизвестного мака. в конфиг radius-server attribute 8 include-in-access-req 8 атрибут - framed-ip-address, username - мак. Вставить ник Quote
gramshi Posted June 8, 2012 Author Posted June 8, 2012 radius-server attribute 8 include-in-access-req добавил, в запросах к радиусу атрибут не появился ни для тестового интерфейса с initiator unclassified mac, ни для остальных. Вставить ник Quote
gramshi Posted June 8, 2012 Author Posted June 8, 2012 На удивление, заработала "костыльная" схема с вторым аутентификатором, самостоятельно определяющим номер порта на свитче по мак-адресу. Вставить ник Quote
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.