Cisco ASR 1000 (PPPoE)

по сравнению с
Ключ
Эта строка удалена.
Это слово было удалено. Это слово было добавлено.
Эта строка добавлена.

Изменения (45)

просмотр истории страницы
h2. Настройка оборудования
h2. Внимание\!

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

{code}
policy-map policy_in512kb
class class-default
police cir 528000 bc 96000 be 192000
conform-action transmit
exceed-action drop
Примеры предоставлены исключительно для понимания принципов работы Carbon Billing с сторонним оборудованием.

Оборудование нельзя считать запущенным в эксплуатацию, если не все пункты [плана внедрения|http://asrdoc.ideco.ru/pages/viewpage.action?pageId=29033016] завершены успешно

policy-map policy_out512kb
class class-default
shape average 528000 5000 5000
h2. Настройка оборудования

h4. Политики

policy-map policy_in1024kb
class class-default
police cir 1096000
conform-action transmit
exceed-action drop
# Установить скорость входящего трафика на 512кб/сек
# Установить скорость исходящего трафика на 512кб/сек
# Установить скорость входящего трафика на 1024кб/сек
# Установить скорость исходящего трафика на 1024кб/сек


{code}
policy-map policy_out1024kb policy_in512
class class-default
shape average 1096000 10000 10000


policy-map policy_out2m
class class-default
shape average 2560000 20000 20000


policy-map policy_in2ml
class class-default
police cir 2096000 bc 393000 be 786000
police cir 528000 bc 96000 be 192000
conform-action transmit
exceed-action drop
!
policy-map policy_out2ml policy_out512
class class-default
shape average 2096000 20000 20000
shape average 528000 5000 5000
!
policy-map policy_in2m policy_in1024
class class-default
police cir 2560000
conform-action transmit
exceed-action drop

policy-map policy_in5m
class class-default
police cir 5120000
conform-action transmit
exceed-action drop

policy-map policy_in1024kb
class class-default
police cir 1096000
conform-action transmit
exceed-action drop
!
policy-map policy_in25m policy_out1024
class class-default
police cir 25600000
conform-action transmit
exceed-action drop

policy-map policy_out1024kb
class class-default
shape average 1096000 10000 10000
{code}

policy-map policy_in15m
class class-default
police cir 15360000
conform-action transmit
exceed-action drop
h4. Radius сервер

policy-map policy_in50M
class class-default
police cir 50000000
conform-action transmit
exceed-action drop

policy-map policy_out50M
class class-default
shape average 50000000 200000 200000
{code}
radius-server host IP_адрес_carbon_billing auth-port 1812 acct-port 1813
{code}

policy-map policy_out15m
class class-default
shape average 15360000 150000 150000

policy-map policy_in100M
class class-default
police cir 102400000
conform-action transmit
exceed-action drop
h2. Настройка Carbon Billing (event_inc.sh)

policy-map policy_in10m
class class-default
police cir 10240000
conform-action transmit
exceed-action drop

policy-map policy_out10m
class class-default
shape average 10240000 100000 100000

policy-map policy_out5m
class class-default
shape average 5120000 50000 50000

policy-map policy_out512kb
class class-default
shape average 528000 5000 5000

policy-map policy_out100M
class class-default
shape average 102500000 500000 500000

policy-map policy_out25m
class class-default
shape average 25600000 200000 200000

policy-map policy_in512kb
class class-default
police cir 528000 bc 96000 be 192000
conform-action transmit
exceed-action drop

{code}

h2. Настройка АСР (event_inc.sh)


{code}
#radius пример
selfkiller -30:TERM -50:KILL & disown -a

      [[ "$VAR" = *"="* ]] && eval ${VAR%%=*}=\'${VAR#*=}\'
done

[ "$nas_ip" = "0.0.0.0" ] && exit 0
      
LOG INFO "$SENDER $EVENT $DATA"

case "$EVENT" in
    "balance_negative")
    if [ "$nas_ip" != "0.0.0.0" ]; then
      echo "User-Name=\"$login\",Cisco-Account-Info=\"S$ip\",Cisco-AVPair=\"subscriber:command=account-logoff\"" | radclient -x $nas_ip:1700 coa 322223
    fi
    true
   logout | try_double_login | user_data_changed_before | user_data_changed_before | balance_negative )
      echo "User-Name=\"$login\",Cisco-Account-Info=\"S$ip\"" | radclient -x $nas_ip:1700 disconnect cscpswd
#или
# echo "User-Name=\"$ip\",Cisco-Account-Info=\"S$ip\",cisco-avpair=\"subscriber:command=account-logoff\"" | radclient -x $nas_ip:1700 сoa cscpswd
     ;;

    rate_set )
    echo "User-Name=\"$login\",Cisco-Account-Info=\"S$ip\",Cisco-AVPair+=\"ip:sub-qos-policy-in=policy_in${ceil_in}\",\
Cisco-AVPair+=\"ip:sub-qos-policy-out=policy_out${ceil_out}\"" | radclient -x $nas_ip:1700 coa scspswd
    ;;
    "balance_positive")
    true
    ;;
    "login")
    true
    ;;
    "logout")
    if [ "$nas_ip" != "0.0.0.0" ]; then
      echo "User-Name=\"$login\",Cisco-Account-Info=\"S$ip\",Cisco-AVPair=\"subscriber:command=account-logoff\"" | radclient -x $nas_ip:1700 coa 322223
    fi
    true
    ;;
    "try_double_login")
    if [ "$nas_ip" != "0.0.0.0" ]; then
      echo "User-Name=\"$login\",Cisco-Account-Info=\"S$ip\",Cisco-AVPair=\"subscriber:command=account-logoff\"" | radclient -x $nas_ip:1700 coa 322223
    fi
    true
    ;;
    "user_data_changed_before")
    if [ "$nas_ip" != "0.0.0.0" ]; then
      usleep 200
      echo "User-Name=\"$login\",Cisco-Account-Info=\"S$ip\",Cisco-AVPair=\"subscriber:command=account-logoff\"" | radclient -x $nas_ip:1700 coa 322223
    fi
    true
    ;;
    "period_closed")
    true
    ;;
    "user_data_changed")
    true
    ;;
    "rate_set")
    if [ "$nas_ip" != "0.0.0.0" -a "$ceil_in" != "-1" -a "$ceil_out" != "-1" ]; then
      echo "User-Name=\"$login\",Cisco-Account-Info=\"S$ip\",Cisco-AVPair+=\"ip:sub-qos-policy-in=policy_in${ceil_in}kb\",Cisco-AVPair+=\"ip:sub-qos-policy-out=policy_out${ceil_out}kb\"" | radclient -x $nas_ip:1700 coa 322223
    fi
    true    
    ;;
    *)
    :
    ;;
esac
{code}
h2. Настройка тарифов

В настройке тарифа необходимо будет указать максимальную скорость для пользователей:
\#TODO
!ciscoasr1000.tarif.png|border=1!

h2. Настройка RADIUS-атрибутов

!ciscoasr.radius.png|border=1!

"Ступенчатые тарифы" работают за счёт использования в RADIUS-параметрах и event_inc.sh переменных $ceil_in, $ceil_out, $rate_in и $rate_out.

Скорость изменяется при помощи события rate_set (при выполнении условия описанного в тарифе) или при авторизации пользователя.

h2. Добавление оборудования

В Carbon Manager необходимо добавить Cisco ASR 1000 в список маршрутизаторов ( вкладка маршрутизаторов \-> добавить ).

!ciscoasr.hardware.png|border=1!

h2. Настройка Netflow 

Затем необходимо указать на Cisco IP адрес и порт (по умолчанию 9996) на которых доступен Netflow-коллектор Carbon Billing

Проверить что пакеты проходят можно с помощью

{code}
tcpdump -nvi any port 9996
{code}