URL: https://www.opennet.ru/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID6
Нить номер: 1554
[ Назад ]

Исходное сообщение
"Шейпинг абонентов"

Отправлено shavkat , 24-Ноя-14 19:40 
Добрый день,

есть задача,
есть абоенты в маске /27 которые проходят через cisco 7206, задействаны два интерфейса один который стотрит в сторону Интернета+пигинг партнеры, другой в сторону клиентов.
суть задачи в том, что нужно зашейпить абонентов так чтоб они шейпились в сторону интернета с ограниченной скорости а в сторону пиринг партнеров не шейпились.

на service policy не получается.

кто нить сталкивался с такой задачей? есть варианты? помогите пожалуйста.


Содержание

Сообщения в этом обсуждении
"Шейпинг абонентов"
Отправлено Merridius , 24-Ноя-14 23:44 
> Добрый день,
> есть задача,
> есть абоенты в маске /27 которые проходят через cisco 7206, задействаны два
> интерфейса один который стотрит в сторону Интернета+пигинг партнеры, другой в сторону
> клиентов.
> суть задачи в том, что нужно зашейпить абонентов так чтоб они шейпились
> в сторону интернета с ограниченной скорости а в сторону пиринг партнеров
> не шейпились.
> на service policy не получается.
> кто нить сталкивался с такой задачей? есть варианты? помогите пожалуйста.

Задача тривиальная.
Покажите что наконфигурили, а мы подскажем что не так.


"Шейпинг абонентов"
Отправлено shavkat , 25-Ноя-14 10:47 
>[оверквотинг удален]
>> есть абоенты в маске /27 которые проходят через cisco 7206, задействаны два
>> интерфейса один который стотрит в сторону Интернета+пигинг партнеры, другой в сторону
>> клиентов.
>> суть задачи в том, что нужно зашейпить абонентов так чтоб они шейпились
>> в сторону интернета с ограниченной скорости а в сторону пиринг партнеров
>> не шейпились.
>> на service policy не получается.
>> кто нить сталкивался с такой задачей? есть варианты? помогите пожалуйста.
> Задача тривиальная.
> Покажите что наконфигурили, а мы подскажем что не так.

если честно даже нет идей как конфигить,


"Шейпинг абонентов"
Отправлено shavkat , 25-Ноя-14 10:49 
>[оверквотинг удален]
>>> интерфейса один который стотрит в сторону Интернета+пигинг партнеры, другой в сторону
>>> клиентов.
>>> суть задачи в том, что нужно зашейпить абонентов так чтоб они шейпились
>>> в сторону интернета с ограниченной скорости а в сторону пиринг партнеров
>>> не шейпились.
>>> на service policy не получается.
>>> кто нить сталкивался с такой задачей? есть варианты? помогите пожалуйста.
>> Задача тривиальная.
>> Покажите что наконфигурили, а мы подскажем что не так.
> если честно даже нет идей как конфигить,

Говорят есть такое решение как QPPB но не разу не сталкивался с данной фичой.


"Шейпинг абонентов"
Отправлено Merridius , 25-Ноя-14 22:52 
>[оверквотинг удален]
>>>> суть задачи в том, что нужно зашейпить абонентов так чтоб они шейпились
>>>> в сторону интернета с ограниченной скорости а в сторону пиринг партнеров
>>>> не шейпились.
>>>> на service policy не получается.
>>>> кто нить сталкивался с такой задачей? есть варианты? помогите пожалуйста.
>>> Задача тривиальная.
>>> Покажите что наконфигурили, а мы подскажем что не так.
>> если честно даже нет идей как конфигить,
> Говорят есть такое решение как QPPB но не разу не сталкивался с
> данной фичой.

Это вроде передача qos параметров через BGP, вам думаю не надо.



"Шейпинг абонентов"
Отправлено ShyLion , 25-Ноя-14 16:05 
> Добрый день,
> есть задача,
> есть абоенты в маске /27 которые проходят через cisco 7206, задействаны два
> интерфейса один который стотрит в сторону Интернета+пигинг партнеры, другой в сторону
> клиентов.
> суть задачи в том, что нужно зашейпить абонентов так чтоб они шейпились
> в сторону интернета с ограниченной скорости а в сторону пиринг партнеров
> не шейпились.
> на service policy не получается.
> кто нить сталкивался с такой задачей? есть варианты? помогите пожалуйста.

Гугли Cisco ISG
Приготовь кубометр кофе.


"Шейпинг абонентов"
Отправлено shavkat , 28-Ноя-14 14:08 
>[оверквотинг удален]
>> есть абоенты в маске /27 которые проходят через cisco 7206, задействаны два
>> интерфейса один который стотрит в сторону Интернета+пигинг партнеры, другой в сторону
>> клиентов.
>> суть задачи в том, что нужно зашейпить абонентов так чтоб они шейпились
>> в сторону интернета с ограниченной скорости а в сторону пиринг партнеров
>> не шейпились.
>> на service policy не получается.
>> кто нить сталкивался с такой задачей? есть варианты? помогите пожалуйста.
> Гугли Cisco ISG
> Приготовь кубометр кофе.

Согласен, но в основном ISG работает с методами авторизации на пример PPPoE IpOE, а у меня тут выдается статикой айпишники, где абонент пишет это у себя.


"Шейпинг абонентов"
Отправлено ShyLion , 28-Ноя-14 15:40 
>[оверквотинг удален]
>>> суть задачи в том, что нужно зашейпить абонентов так чтоб они шейпились
>>> в сторону интернета с ограниченной скорости а в сторону пиринг партнеров
>>> не шейпились.
>>> на service policy не получается.
>>> кто нить сталкивался с такой задачей? есть варианты? помогите пожалуйста.
>> Гугли Cisco ISG
>> Приготовь кубометр кофе.
> Согласен, но в основном ISG работает с методами авторизации на пример PPPoE
> IpOE, а у меня тут выдается статикой айпишники, где абонент пишет
> это у себя.

"у меня тут выдается статикой айпишники" это  IPoE и есть. Сеанс не обязательно DHCP запросом может инициироваться:


interface TenGigabitEthernet0/1/0.298
description IPoE test
encapsulation dot1Q 298
ip unnumbered Loopback2
ip nat outside
service-policy type control IPoE
ip subscriber routed
  initiator unclassified ip-address
!
ip route a.b.c.101 255.255.255.255 TenGigabitEthernet0/1/0.2002001 a.b.c.101 name "client 101"

В control policy довольно гибкая логика на старт сеанса, на ошибки авторизации, с таймерами и всякими свистелками. Политики доступа, перенаправления траффика, скорость - все можно сливать с радиуса.


"Шейпинг абонентов"
Отправлено anonymous , 27-Ноя-14 00:56 
ISG не нужен.
Внутри одного policy-map два class-map match-all, которые матчат по extended access-list разные направления трафика.

"Шейпинг абонентов"
Отправлено ShyLion , 27-Ноя-14 06:29 
> ISG не нужен.
> Внутри одного policy-map два class-map match-all, которые матчат по extended access-list
> разные направления трафика.

И все абоненты будут в одном бакете. Не уверен что требуется именно это.


"Шейпинг абонентов"
Отправлено anonymous , 27-Ноя-14 12:28 
http://web.opalsoft.net/qos/default.php?p=cds-22-a1

"Шейпинг абонентов"
Отправлено ShyLion , 27-Ноя-14 15:29 
> http://web.opalsoft.net/qos/default.php?p=cds-22-a1

И что?
Если повесить один полиси на всех абонентов сразу, полиситься будет весь объем траффика от/к абонентов как единое целое.


"Шейпинг абонентов"
Отправлено anonymous , 27-Ноя-14 15:42 
policy-map USERS
class IP1.1.1.1
  policy rate 10 mbps violate-action
class IP1.1.1.2
  policy rate 20 mbps voilate-action
class class-default
  policy rate 1 gbps (ну или просто равно пропускной способности до пирингового партнёра)
.....
class-map match-all IP1.1.1.1
match acc ipv4 IP1.1.1.1
.....
ipv4 access-list IP1.1.1.1
deny ipv4 PARTNER_SUBNET host 1.1.1.1
deny ipv4 host 1.1.1.1 PARTNER_SUBNET
permit ipv4 host 1.1.1.1 any
permit ipv4 any host 1.1.1.1

"Шейпинг абонентов"
Отправлено ShyLion , 28-Ноя-14 07:29 
> policy-map USERS
>  class IP1.1.1.1
>   policy rate 10 mbps violate-action
>  class IP1.1.1.2
>   policy rate 20 mbps voilate-action

Да это и ежу понятно, только громоздко очень.


"Шейпинг абонентов"
Отправлено shavkat , 29-Ноя-14 07:12 
>[оверквотинг удален]
> до пирингового партнёра)
> .....
> class-map match-all IP1.1.1.1
>  match acc ipv4 IP1.1.1.1
> .....
> ipv4 access-list IP1.1.1.1
> deny ipv4 PARTNER_SUBNET host 1.1.1.1
> deny ipv4 host 1.1.1.1 PARTNER_SUBNET
> permit ipv4 host 1.1.1.1 any
> permit ipv4 any host 1.1.1.1

почему то не получается применить на инпут интерфейс )

COREROUTER(config-if)#service-policy in FIX
Traffic Shaping feature not supported in input policy.



"Шейпинг абонентов"
Отправлено Andrey , 29-Ноя-14 13:40 
>[оверквотинг удален]
>>  match acc ipv4 IP1.1.1.1
>> .....
>> ipv4 access-list IP1.1.1.1
>> deny ipv4 PARTNER_SUBNET host 1.1.1.1
>> deny ipv4 host 1.1.1.1 PARTNER_SUBNET
>> permit ipv4 host 1.1.1.1 any
>> permit ipv4 any host 1.1.1.1
> почему то не получается применить на инпут интерфейс )
> COREROUTER(config-if)#service-policy in FIX
> Traffic Shaping feature not supported in input policy.

Логично. Шейпинг только на out трафик ставится. На in трафик ставить шейпинг бесполезно, т.к. есть такое понятие, как DDoS. Вы не можете контролировать объем трафика, который выливается в ваш интерфейс со стороны оператора.


"Шейпинг абонентов"
Отправлено anonymous , 01-Дек-14 12:47 
> почему то не получается применить на инпут интерфейс )
> COREROUTER(config-if)#service-policy in FIX
> Traffic Shaping feature not supported in input policy.

#sh ver | inc IOS
Cisco IOS Software, 7301 Software (C7301-ADVIPSERVICESK9-M), Version 12.2(33)SRD8, RELEASE SOFTWARE (fc2)

#sh run policy-map | sect SHARED  
policy-map X-SHARED
  class IPN.N.N.178
    police cir 100000000 bc 1875000 be 1875000
     conform-action transmit
     exceed-action drop
     violate-action drop
  class IPN.N.N.180
    police cir 30000000 bc 5625000 be 11250000
     conform-action transmit
     exceed-action drop
     violate-action drop
  class IPN.N.N.181
    police 10000000 bc 312500 be 312500
     conform-action transmit
     exceed-action drop
     violate-action drop
  class IPN.N.N.179
    police 2000000 bc 62500 be 62500
     conform-action transmit
     exceed-action drop
     violate-action drop


interface GigabitEthernet0/2.1765
description X-SHARED
encapsulation dot1Q 1765
ip address N.N.N.177 255.255.255.248
ip flow ingress
no cdp enable
service-policy input X-SHARED
service-policy output X-SHARED


"Шейпинг абонентов"
Отправлено shavkat , 02-Дек-14 08:30 
>[оверквотинг удален]
>      exceed-action drop
>      violate-action drop
> interface GigabitEthernet0/2.1765
>  description X-SHARED
>  encapsulation dot1Q 1765
>  ip address N.N.N.177 255.255.255.248
>  ip flow ingress
>  no cdp enable
>  service-policy input X-SHARED
>  service-policy output X-SHARED

отлично понял, теперь вопрос следующий, как мне поставить для некоторых абонентов временные интервалы? например, у абонента днем с 7:00 по 18:00 скорость должна быть 1024/1024 а остальное время 256/256.

спасибо за советы.


"Шейпинг абонентов"
Отправлено Merridius , 02-Дек-14 11:04 
>[оверквотинг удален]
>>  encapsulation dot1Q 1765
>>  ip address N.N.N.177 255.255.255.248
>>  ip flow ingress
>>  no cdp enable
>>  service-policy input X-SHARED
>>  service-policy output X-SHARED
> отлично понял, теперь вопрос следующий, как мне поставить для некоторых абонентов временные
> интервалы? например, у абонента днем с 7:00 по 18:00 скорость должна
> быть 1024/1024 а остальное время 256/256.
> спасибо за советы.

Можно использовать time based ACL для матчинга в класс-мапе.
Или по крону выполнять команды снятия добавления.


"Шейпинг абонентов"
Отправлено anonymous , 02-Дек-14 11:22 
Ого, насчёт time-based acl я не подумал, действительно.

"Шейпинг абонентов"
Отправлено anonymous , 02-Дек-14 11:20 
Только ISG.
Иос 12.2.33SRE/SRD или 15.2S и вперёд.

"Шейпинг абонентов"
Отправлено shavkat , 02-Дек-14 11:23 
> Только ISG.
> Иос 12.2.33SRE/SRD или 15.2S и вперёд.

не вопрос, но я же вам с самого начало писал что у меня нету методики авторизации. я выдаю клиентам статикой где айпишники прописываются на стороне клиента.


"Шейпинг абонентов"
Отправлено anonymous , 02-Дек-14 11:32 
Вам уже ответили на этот вопрос
https://www.opennet.ru/openforum/vsluhforumID6/1554.html#13

"Шейпинг абонентов"
Отправлено shavkat , 02-Дек-14 11:40 
> Вам уже ответили на этот вопрос
> https://www.opennet.ru/openforum/vsluhforumID6/1554.html#13

спасибо,
а можно полноценная конфигурация данного конфига?

interface TenGigabitEthernet0/1/0.298
description IPoE test
encapsulation dot1Q 298
ip unnumbered Loopback2
ip nat outside
service-policy type control IPoE
ip subscriber routed
  initiator unclassified ip-address
!
ip route a.b.c.101 255.255.255.255 TenGigabitEthernet0/1/0.2002001 a.b.c.101 name "client 101"

кстати у меня IOS
#sh ver | inc IOS
Cisco IOS Software, 7200 Software (C7200P-ADVENTERPRISEK9-M), Version 12.2(33)SRD8, RELEASE SOFTWARE (fc2)


"Шейпинг абонентов"
Отправлено anonymous , 02-Дек-14 12:06 
https://www.google.ru/search?q="initiator+unclassified+...

"Шейпинг абонентов"
Отправлено ShyLion , 02-Дек-14 15:30 
>> Вам уже ответили на этот вопрос
>> https://www.opennet.ru/openforum/vsluhforumID6/1554.html#13


version 15.3
service timestamps debug datetime localtime
service timestamps log datetime localtime
service password-encryption
service unsupported-transceiver
no platform punt-keepalive disable-kernel-core
!
!
vrf definition Mgmt-intf
!
address-family ipv4
exit-address-family
!
address-family ipv6
exit-address-family
!
aaa new-model
!
!
aaa group server radius ipoe
server-private RADIUS_IP auth-port 18120 acct-port 18130 key 7 01000307490E12
ip vrf forwarding Mgmt-intf
ip radius source-interface GigabitEthernet0
!
aaa authentication ppp IPOE group ipoe
aaa authorization network IPOE group ipoe
aaa authorization subscriber-service default local
aaa authorization subscriber-service IPOE local group ipoe
aaa accounting delay-start all
aaa accounting delay-start extended-delay 2
aaa accounting update periodic 5
aaa accounting include auth-profile framed-ip-address
aaa accounting include auth-profile framed-ipv6-prefix
aaa accounting include auth-profile delegated-ipv6-prefix
aaa accounting network default start-stop group ipoe
aaa accounting network IPOE start-stop group ipoe
!
!
aaa server radius dynamic-author
client RADIUS_IP vrf Mgmt-intf server-key 7 120A0014000E18
port 1645
auth-type any
ignore session-key
!
aaa session-id common
aaa policy interface-config allow-subinterface
!
!
redirect server-group NoMoney
server ip A.B.C.3 port 80
!
redirect server-group NoMoneyDNS
server ip A.B.C.10 port 53
!
!
!
!
!
class-map type traffic match-any CM_ANY
match access-group input name CM_T_ANY
match access-group output name CM_T_ANY
!
class-map type traffic match-any CM_T_NoMoney_REDIRECT_DNS
match access-group input name CM_T_NoMoney_REDIRECT_DNS
!
class-map type traffic match-any CM_T_NoMoney_REDIRECT_WWW
match access-group input name CM_T_NoMoney_REDIRECT_WWW
!
class-map type traffic match-any CM_T_NoMoney_PASS
match access-group input name CM_T_NoMoney_PASS
match access-group output name CM_T_NoMoney_PASS
!
class-map type control match-all CM_C_IPoE_REJECT_REAUTH
match timer IPoE_REJECT_REAUTH
match authen-status unauthenticated
!
class-map type control match-all CM_C_IPoE_RTIMEOUT_REAUTH
match timer IPoE_RTIMEOUT_REAUTH
match authen-status unauthenticated
!
policy-map type service NoMoney10
10 class type traffic CM_T_NoMoney_PASS
!
class type traffic default in-out
  drop
!
!
policy-map type service NoMoney500
500 class type traffic CM_T_NoMoney_REDIRECT_WWW
  redirect to group NoMoney
!
class type traffic default in-out
  drop
!
!
policy-map type service NoMoney510
510 class type traffic CM_T_NoMoney_REDIRECT_DNS
  redirect to group NoMoneyDNS
!
class type traffic default in-out
  drop
!
!
policy-map type service Internet
100 class type traffic CM_ANY
!
class type traffic default in-out
  drop
!
!
policy-map type control IPoE
class type control CM_C_IPoE_RTIMEOUT_REAUTH event timed-policy-expiry
  1 service disconnect
!
class type control CM_C_IPoE_REJECT_REAUTH event timed-policy-expiry
  1 service disconnect
!
class type control always event session-start
  10 authorize aaa list IPOE password ciscoo identifier source-ip-address
  20 set-timer IPoE_REJECT_REAUTH 1
  30 service-policy type service aaa list IPOE name NoMoney10
  40 service-policy type service aaa list IPOE name NoMoney500
  50 service-policy type service aaa list IPOE name NoMoney510
!
class type control always event service-stop
  1 service-policy type service unapply identifier service-name
!
class type control always event session-restart
  10 authorize aaa list IPOE password ciscoo identifier source-ip-address
  20 set-timer IPoE_REJECT_REAUTH 1
  30 service-policy type service aaa list IPOE name NoMoney10
  40 service-policy type service aaa list IPOE name NoMoney500
  50 service-policy type service aaa list IPOE name NoMoney510
!
class type control always event radius-timeout
  1 set-timer IPoE_RTIMEOUT_REAUTH 1
  10 service-policy type service aaa list IPOE name NoMoney10
  20 service-policy type service aaa list IPOE name NoMoney500
  30 service-policy type service aaa list IPOE name NoMoney510
!
!
interface Loopback2
ip address A.B.C.1 255.255.255.0
!
!
interface TenGigabitEthernet0/1/0.298
description Client 102
encapsulation dot1Q 298
ip unnumbered Loopback2
ip nat outside
service-policy type control IPoE
ip subscriber routed
  initiator unclassified ip-address
!
interface TenGigabitEthernet0/1/0.299
description Client 103
encapsulation dot1Q 299
ip unnumbered Loopback2
ip nat outside
service-policy type control IPoE
ip subscriber routed
  initiator unclassified ip-address
!
! ..... далее аналогично, может быть двойное тегирование ........
!
ip route A.B.C.102 255.255.255.255 TenGigabitEthernet0/1/0.298 A.B.C.102 name "client 102"
ip route A.B.C.103 255.255.255.255 TenGigabitEthernet0/1/0.299 A.B.C.103 name "client 103"
!
! ..... далее аналогично ..............
!
!
ip access-list extended CM_T_ANY
permit ip any any
ip access-list extended CM_T_NoMoney_PASS
permit ip any host A.B.C.3
permit ip host A.B.C.3 any
permit udp any host A.B.C.10 eq domain
permit udp host A.B.C.10 eq domain any
ip access-list extended CM_T_NoMoney_REDIRECT_DNS
permit udp any any eq domain
ip access-list extended CM_T_NoMoney_REDIRECT_WWW
permit tcp any any eq www
!
!
radius-server attribute 44 include-in-access-req default-vrf
radius-server attribute 8 include-in-access-req
radius-server attribute 55 include-in-acct-req
radius-server attribute 25 access-request include
radius-server attribute 31 mac format ietf
!


"Шейпинг абонентов"
Отправлено ShyLion , 02-Дек-14 15:38 
При инициализации сеанса на радиус прилетает Access-Request c User-Name=IP пользователя, с паролем ciscoo

Радиус при положительном балансе выдает
Cisco-Account-Info="AInternet"
Cisco-Account-Info="ANoMoney10"
Cisco-Account-Info="ANoMoney500"
Cisco-Account-Info="ANoMoney510"
Cisco-Account-Info="QU;XXXXXX;D;YYYYY"
xxx - скорость upload
yyy - скорость download

при отрицательном балансе есть два варианта - выдавать Access-Reject, тогда сеансу будут установлены только сервисы NoMoney.. и через минуту снова попробует авторизацию при следующем пакете. таймер можно любой поставить
второй вариант выдавать Access-Accept со списком сервисов без Internet, тогда будет авторизованый сеанс.

Авторизованым сеансом можно управлять через CoA:


#!/bin/sh

if [ -z "$1" -o -z "$2" -o -z "$3" ]
then
  echo "Usage: $0 username ses_id (kill|on|off|speed kbps)"
  exit
fi

case "$3" in
"on")
  echo -e "Acct-Session-Id=\"$2\",User-Name=\"$1\",Cisco-AVPair = \"subscriber:command=activate-service\",Cisco-AVPair = \"subscriber:service-name=Internet\"" |
    radclient -x -c 1 10.0.6.21:1645 coa secret
  ;;
"off")
  echo -e "Acct-Session-Id=\"$2\",User-Name=\"$1\",Cisco-AVPair = \"subscriber:command=deactivate-service\",Cisco-AVPair = \"subscriber:service-name=Internet\"" |
    radclient -x -c 1 10.0.6.21:1645 coa secret
  ;;
"kill")
  echo -e "Acct-Session-Id=\"$2\",User-Name=\"$1\",Cisco-AVPair = \"subscriber:command=account-logoff\"" |
    radclient -x -c 1 10.0.6.21:1645 coa secret
  ;;
"speed")
  if [ -z "$4" ]
  then
    echo "No kbps specified"
    exit
  fi
  echo -e "Acct-Session-Id=\"$2\",User-Name=\"$1\",Cisco-Account-Info= \"QU;${4}000;D;${4}000\"" |
    radclient -x -c 1 10.0.6.21:1645 coa secret
  ;;
esac

Дальше думай сам, я тебе результат своего недельного изучения вопроса выдал. Железка у меня ASR 1002-X, IOS XE 3.10.4S.