Подскажите как организовать шейпинг pppoe сессии на cisco5350, которая является сервером доступа для ADSL клиентов. В данный момент скорость режется на дсламе Zyxel.
Для авторизаци клиентов стоит виндовый радиус IAS, в настройках логина на радиусе добавил атрибут Cisco-AV-pair с параметрами:
lcp:interface-config#1=rate-limit input 1024 128000 256000 transmit exceed-action drop
lcp:interface-config#1=rate-limit output 512 128000 256000 transmit exceed-action dropНо регистрация логина в сети с данными настройками не проходит, возможно что-то ещё надо на циске указать... В чём косяк?
Заранее спасибо за ответы.
>[оверквотинг удален]
>
>Для авторизаци клиентов стоит виндовый радиус IAS, в настройках логина на радиусе
>добавил атрибут Cisco-AV-pair с параметрами:
>lcp:interface-config#1=rate-limit input 1024 128000 256000 transmit exceed-action drop
>lcp:interface-config#1=rate-limit output 512 128000 256000 transmit exceed-action drop
>
>Но регистрация логина в сети с данными настройками не проходит, возможно что-то
>ещё надо на циске указать... В чём косяк?
>
>Заранее спасибо за ответы.В конфиге есть virtual-profile aaa? Так:
lcp:interface-config#1=rate-limit input 1024 128000 256000 transmit exceed-action drop
lcp:interface-config#2=rate-limit output 512 128000 256000 transmit exceed-action dropили так:
lcp:interface-config=rate-limit input 1024 128000 256000 transmit exceed-action drop
lcp:interface-config=rate-limit output 512 128000 256000 transmit exceed-action dropтоже не работает? Что debug radius показывает?
В нагрузку: http://www.cisco.com/en/US/docs/ios/12_0/dial/configuration/...
>[оверквотинг удален]
>lcp:interface-config#2=rate-limit output 512 128000 256000 transmit exceed-action drop
>
>или так:
>
>lcp:interface-config=rate-limit input 1024 128000 256000 transmit exceed-action drop
>lcp:interface-config=rate-limit output 512 128000 256000 transmit exceed-action drop
>
>тоже не работает? Что debug radius показывает?
>
>В нагрузку: http://www.cisco.com/en/US/docs/ios/12_0/dial/configuration/...В конфиге virtual-profile aaa нет... Куда его добавлять-то надо? Вот сам конфиг:
!
aaa new-model
!
!
aaa group server radius radius1
server x.x.x.x auth-port 1645 acct-port 1646
server x.x.x.x auth-port 1645 acct-port 1646
!
aaa group server radius radius2
server x.x.x.x auth-port 1645 acct-port 1646
!
aaa authentication ppp billing group radius1
aaa authorization network billing group radius1
aaa accounting update periodic 60
aaa accounting network billing start-stop group radius2
aaa session-id commonip subnet-zero
ip cef
no ip domain lookup
ip name-server x.x.x.x
!
vpdn enable
!
vpdn-group adsl
accept-dialin
protocol pppoe
virtual-template 101
!
async-bootp dns-server x.x.x.x
isdn switch-type primary-5ess
!
!
no voice hpi capture buffer
no voice hpi capture destination
!interface FastEthernet0/0
ip address x.x.x.x 255.255.255.0
duplex full
speed 100
!
interface FastEthernet0/1
ip address x.x.x.x 255.255.255.0 secondary
ip address x.x.x.x 255.255.255.0
duplex full
speed 100
pppoe enable
!interface Virtual-Template101
ip unnumbered FastEthernet0/1
timeout absolute 300 0
peer default ip address pool TEST
ppp authentication chap billing
ppp authorization billing
ppp accounting billing
!
interface Group-Async0
ip unnumbered FastEthernet0/0
encapsulation ppp
no ip route-cache
no ip mroute-cache
dialer in-band
dialer idle-timeout 28800
async dynamic address
async dynamic routing
async mode interactive
peer default ip address pool setup_pool
ppp authentication pap billing
ppp accounting billing
group-range 1/00 2/59
!
ip local pool setup_pool x.x.x.129 x.x.x.190
ip local pool TEST x.x.x.65 x.x.x.190
ip classless!
radius-server host x.x.x.x auth-port 1645 acct-port 1646
radius-server host x.x.x.x auth-port 1645 acct-port 1646
!
voice-port 3/0:D
!
voice-port 3/1:D
!
voice-port 3/2:D
!
voice-port 3/3:D
line con 0
line aux 0
line vty 0 4
exec-timeout 0 0
line 1/00 1/59
modem InOut
transport input all
autoselect during-login
autoselect ppp
line 2/00 2/59
modem InOut
transport input all
autoselect during-login
autoselect ppp
!
scheduler allocate 10000 400
!
end
>[оверквотинг удален]
>>или так:
>>
>>lcp:interface-config=rate-limit input 1024 128000 256000 transmit exceed-action drop
>>lcp:interface-config=rate-limit output 512 128000 256000 transmit exceed-action drop
>>
>>тоже не работает? Что debug radius показывает?
>>
>>В нагрузку: http://www.cisco.com/en/US/docs/ios/12_0/dial/configuration/...
>
>В конфиге virtual-profile aaa нет... Куда его добавлять-то надо?К чему привели вышеприведенные рекомендации? Добавить нужно сразу в global configuration mode. virtual-profile if-needed тоже не помешает. Возможно, еще нужно добавить aaa authorization network default group radius1
>[оверквотинг удален]
>>>
>>>тоже не работает? Что debug radius показывает?
>>>
>>>В нагрузку: http://www.cisco.com/en/US/docs/ios/12_0/dial/configuration/...
>>
>>В конфиге virtual-profile aaa нет... Куда его добавлять-то надо?
>
>К чему привели вышеприведенные рекомендации? Добавить нужно сразу в global configuration mode.
>virtual-profile if-needed тоже не помешает. Возможно, еще нужно добавить aaa
>authorization network default group radius1В радиусе строку lcp:.... писал всеми тремя способами, ошибка та же. "Ошибка 734. Протокол управления ppp-связью был прерван."
На циске virtual-profile aaa не добавляется, можно только if-needed или к virtual-interface привязать.
По ссылке пробежал бегло, я так понял что там примеры когда для каждого пользователя отдельно надо прописывать аттрибуты, но мне надо чтобы все атрибуты для каждого пользователя брались с радиуса...Да и кстати на счёт дебага, поставил на дебаг следующие параметры:
dialup1#sh debug
General OS:
AAA Authentication debugging is on
AAA Authorization debugging is on
AAA Accounting debugging is on
Dial on demand:
Dial on demand events debugging is onRadius protocol debugging is on
Radius packet protocol debugging is onА в логах эта зараза всё равно ничего не пишет... хотя пользователи АДСЛ коннектятся постоянно.
>[оверквотинг удален]
> AAA Authorization debugging is on
> AAA Accounting debugging is on
>Dial on demand:
> Dial on demand events debugging is on
>
>Radius protocol debugging is on
>Radius packet protocol debugging is on
>
>А в логах эта зараза всё равно ничего не пишет... хотя пользователи
>АДСЛ коннектятся постоянно.term mon не забыл?
>[оверквотинг удален]
>>Dial on demand:
>> Dial on demand events debugging is on
>>
>>Radius protocol debugging is on
>>Radius packet protocol debugging is on
>>
>>А в логах эта зараза всё равно ничего не пишет... хотя пользователи
>>АДСЛ коннектятся постоянно.
>
>term mon не забыл?Вобщем добился чтобы не вылетала ошибка при авторизации, немного не правильно писал атрибут в радиусе. В данный момент добавляю следующие атрибуты:
lcp:interface-config=rate-limit input 1024000 128000 256000 transmit exceed-action drop
lcp:interface-config=rate-limit щгеput 512000 128000 256000 transmit exceed-action dropклиент коннектится, но скорость всё равно не режется...
Есть ещё особенность при коннекте, на циске для всех клиентов pppoe создаются интерфейсы virtual-access с номерами Vi1.1; Vi1.2; Vi1.3 и т.д. А для тех у кого указаны атрибуты rate-limit создаются отдельные Vi3; Vi4; Vi5...
если посмотреть sh int virtual-access 1:
dialup1#sh interfaces virtual-access 1
Virtual-Access1 is up, line protocol is up
Hardware is Virtual Access interface
MTU 1492 bytes, BW 100000 Kbit, DLY 100000 usec,
reliability 255/255, txload 12/255, rxload 2/255
Encapsulation PPP, LCP Closed
Base PPPoE vaccess
Vaccess status 0x40, loopback not set
DTR is pulsed for 5 seconds on resetЕсли смотреть с атрибутами то:
dialup1#sh interfaces virtual-access 4
Virtual-Access4 is up, line protocol is up
Hardware is Virtual Access interface
Interface is unnumbered. Using address of FastEthernet0/1 (х.х.х.х)
MTU 1492 bytes, BW 100000 Kbit, DLY 100000 usec,
reliability 255/255, txload 1/255, rxload 1/255
Encapsulation PPP, LCP Open
Open: IPCP
PPPoE vaccess, cloned from AAA, AAA, Virtual-Template101
Vaccess status 0x44, loopback not set
DTR is pulsed for 5 seconds on reset
Вот что пишется в логи:
RADIUS(00000087): Using existing nas_port 0
RADIUS(00000087): Config NAS IP: 0.0.0.0
RADIUS(00000087): sending
RADIUS/ENCODE: Best Local IP-Address x.x.x.6 for Radius-Server x.x.x.9
RADIUS(00000087): Send Accounting-Request to x.x.x.9:1646 id 21646/72, len 164
RADIUS: authenticator A3 6F B7 7D 3A 1B 94 C5 - AC 49 00 EC BB D4 22 AB
RADIUS: Acct-Session-Id [44] 10 "0000009A"
RADIUS: Framed-Protocol [7] 6 PPP [1]
RADIUS: Framed-IP-Address [8] 6 x.x.x.128
RADIUS: Acct-Authentic [45] 6 RADIUS [1]
RADIUS: Acct-Session-Time [46] 6 367
RADIUS: Acct-Input-Octets [42] 6 3869
RADIUS: Acct-Output-Octets [43] 6 1672
RADIUS: Acct-Input-Packets [47] 6 77
RADIUS: Acct-Output-Packets [48] 6 40
RADIUS: Acc RADIUS: AAA Unsupported [152] 7
RADIUS: 30 2F 30 2F 31 [0/0/1]
RADIUS(0000009D): Storing nasport 0 in rad_db
RADIUS(0000009D): Config NAS IP: 0.0.0.0
RADIUS/ENCODE(0000009D): acct_session_id: 188
RADIUS(0000009D): sending
RADIUS/ENCODE: Best Local IP-Address x.x.x.6 for Radius-Server x.x.x.4
RADIUS(0000009D): Send Access-Request to x.x.x.4:1645 id 21646/97, len 81
RADIUS: authenticator 51 4E 1D 8B A6 4F D9 42 - 4A 5C 48 79 F2 32 FC C3
RADIUS: Framed-Protocol [7] 6 PPP [1]
RADIUS: User-Name [1] 12 "test-speed"
RADIUS: CHAP-Password [3] 19 *
RADIUS: NAS-Port-Type [61] 6 Virtual [5]
RADIUS: NAS-Port [5] 6 0
RADIUS: Service-Type [6] 6 Framed [2]
RADIUS: NAS-IP-Address [4] 6 x.x.x.6
RADIUS: Received from id 21646/97 x.x.x.4:1645, Access-Accept, len 296
RADIUS: authenticator 2B 26 EC 80 2F 82 71 03 - 1E DE 8E 9F 82 17 CE A2
RADIUS: Filter-Id [11] 6
RADIUS: 61 64 73 6C [adsl]
RADIUS: Framed-Protocol [7] 6 PPP [1]
RADIUS: Service-Type [6] 6 Framed [2]
RADIUS: Session-Timeout [27] 6 18000
RADIUS: Class [25] 32
RADIUS: 4C 21 05 B8 00 00 01 37 00 01 C0 A8 2F 04 01 CA [L!?????7????/???]
RADIUS: 26 41 91 00 A9 F0 00 00 00 00 00 03 35 4F [&A??????????5O]
RADIUS: Vendor, Cisco [26] 110
RADIUS: Cisco AVpair [1] 104 "lcp:interface-config=rate-limit input 1024000 128000 256000 conform-actiontransmit exceed-action drop"
RADIUS: Vendor, Cisco [26] 110
RADIUS: Cisco AVpair [1] 104 "lcp:interface-config=rate-limit output 512000 128000 256000 conform-actiontransmit exceed-action drop"
RADIUS(0000009D): Received from id 21646/97
RADIUS(0000009D): Using existing nas_port 0
RADIUS(0000009D): Config NAS IP: 0.0.0.0
RADIUS(0000009D): sending
RADIUS/ENCODE: Best Local IP-Address x.x.x.6 for Radius-Server x.x.x.9
RADIUS(0000009D): Send Accounting-Request to x.x.x.9:1646 id 21646/98, len 122
RADIUS: authenticator FA 85 0F 7C A2 6A 80 83 - E3 AD 52 6F 07 3F 94 3C
RADIUS: Acct-Session-Id [44] 10 "000000BC"
RADIUS: Framed-Protocol [7] 6 PPP [1]
RADIUS: Acct-Authentic [45] 6 RADIUS [1]
RADIUS: User-Name [1] 12 "test-speed"
RADIUS: Acct-Status-Type [40] 6 Start [1]
RADIUS: NAS-Port-Type [61] 6 Virtual [5]
RADIUS: NAS-Port [5] 6 0
RADIUS: Class [25] 32
RADIUS: 4C 21 05 B8 00 00 01 37 00 01 C0 A8 2F 04 01 CA [L!?????7????/???]
RADIUS: 26 41 91 00 A9 F0 00 00 00 00 00 03 35 4F [&A??????????5O]
RADIUS: Service-Type [6] 6 Framed [2]
RADIUS: NAS-IP-Address [4] 6 x.x.x.6
RADIUS: Acct-Delay-Time [41] 6 0
RADIUS: Received from id 21646/98 x.x.x.9:1646, Accounting-response, len 20
RADIUS: authenticator D1 00 6D 9E 49 B8 F8 C0 - 51 5D 46 3F C7 39 DF 1Bстрочку с атрибутами циска получает, но вот почему-то они не работают.
>[оверквотинг удален]
>>Dial on demand:
>> Dial on demand events debugging is on
>>
>>Radius protocol debugging is on
>>Radius packet protocol debugging is on
>>
>>А в логах эта зараза всё равно ничего не пишет... хотя пользователи
>>АДСЛ коннектятся постоянно.
>
>term mon не забыл?Плюс ещё попробовал на интерфейсе virtual-template добавил параметр rate-limit чтобы зарезать скорость всем, при таком раскладе режет отлично, но всем...
Всё, проблема решена.Заработало всё при таком раскладе:
на радиусе пишем атрибуты
lcp:interface-config#1=rate-limit output 1024000 128000 256000 conform-action transmit exceed-action drop
lcp:interface-config#2=rate-limit intput 512000 128000 256000 conform-action transmit exceed-action dropНа циске заработало всё каким-то волшебным способом после ребута )))
Единственный незакрытый вопрос остался это по Virtual-access интерфейсам. Всем тем кто без шейпинга работает выдаёт интерфейсы в одном Vi1 (Vi1.1; Vi1.2 ... Vi1.100)
А всем тем кого шейпит выдаёт Vi4; Vi5; Vi6 и т.д...