Redback (IPoE, DHCP Relay + opt 82)

Skip to end of metadata
Go to start of metadata

Внимание!

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

Примеры предоставлены исключительно для понимания принципов работы Carbon Billing с сторонним оборудованием.

Также, оборудование нельзя считать запущенным в эксплуатацию, если не все пункты плана внедрения завершены успешно.

Настройка сервисов на оборудовании

radius service profile RSE-BASED-INET-LOCAL
parameter value Rate-Inet 1000
parameter value Burst-Inet 125000
parameter value ExBurst-Inet 250000
parameter value Rate-Local 1000
parameter value Burst-Local 125000
parameter value ExBurst-Local 250000
accounting in qos "cls-Local cls-Inet"
accounting out qos "cls-Local cls-Inet"
seq 10 attribute Dynamic-Policy-Filter "ip in forward class cls-Inet qos"
seq 20 attribute Dynamic-Policy-Filter "ip out forward class cls-Inet qos"
seq 30 attribute Dynamic-Policy-Filter "ip in forward class cls-Local qos"
seq 40 attribute Dynamic-Policy-Filter "ip out forward class cls-Local qos"
seq 50 attribute Dynamic-Qos-Parameter "meter-class-rate cls-Inet rate-absolute $Rate-Inet"
seq 60 attribute Dynamic-Qos-Parameter "meter-class-burst cls-Inet $Burst-Inet"
seq 70 attribute Dynamic-Qos-Parameter "meter-class-excess-burst cls-Inet $ExBurst-Inet"
seq 80 attribute Dynamic-Qos-Parameter "police-class-rate cls-Inet rate-absolute $Rate-Inet"
seq 90 attribute Dynamic-Qos-Parameter "police-class-burst cls-Inet $Burst-Inet"
seq 100 attribute Dynamic-Qos-Parameter "police-class-excess-burst cls-Inet $ExBurst-Inet"
seq 110 attribute Dynamic-Qos-Parameter "meter-class-rate cls-Local rate-absolute $Rate-Local"
seq 120 attribute Dynamic-Qos-Parameter "meter-class-burst cls-Local $Burst-Local"
seq 130 attribute Dynamic-Qos-Parameter "meter-class-excess-burst cls-Local $ExBurst-Local"
seq 140 attribute Dynamic-Qos-Parameter "police-class-rate cls-Local rate-absolute $Rate-Local"
seq 150 attribute Dynamic-Qos-Parameter "police-class-burst cls-Local $Burst-Local"
seq 160 attribute Dynamic-Qos-Parameter "police-class-excess-burst cls-Local $ExBurst-Local"
seq 170 attribute Service-Interim-Accounting 1200
!
radius service profile service1024
accounting in qos "cls-Local cls-Inet"
accounting out qos "cls-Local cls-Inet"
seq 10 attribute Dynamic-Policy-Filter "ip in forward class cls-Inet qos"
seq 20 attribute Dynamic-Policy-Filter "ip out forward class cls-Inet qos"
seq 30 attribute Dynamic-Policy-Filter "ip in forward class cls-Local qos"
seq 40 attribute Dynamic-Policy-Filter "ip out forward class cls-Local qos"
seq 50 attribute Dynamic-Qos-Parameter "meter-class-rate cls-Inet rate-absolute 1000"
seq 60 attribute Dynamic-Qos-Parameter "meter-class-burst cls-Inet 125000"
seq 70 attribute Dynamic-Qos-Parameter "meter-class-excess-burst cls-Inet 250000"
seq 80 attribute Dynamic-Qos-Parameter "police-class-rate cls-Inet rate-absolute 1000"
seq 90 attribute Dynamic-Qos-Parameter "police-class-burst cls-Inet 125000"
seq 100 attribute Dynamic-Qos-Parameter "police-class-excess-burst cls-Inet 250000"
seq 110 attribute Dynamic-Qos-Parameter "meter-class-rate cls-Local rate-absolute 50000"
seq 120 attribute Dynamic-Qos-Parameter "meter-class-burst cls-Local 6250000"
seq 130 attribute Dynamic-Qos-Parameter "meter-class-excess-burst cls-Local 125000000"
seq 140 attribute Dynamic-Qos-Parameter "police-class-rate cls-Local rate-absolute 50000"
seq 150 attribute Dynamic-Qos-Parameter "police-class-burst cls-Local 6250000"
seq 160 attribute Dynamic-Qos-Parameter "police-class-excess-burst cls-Local 125000000"
seq 170 attribute Service-Interim-Accounting 900
!
radius service profile service2048
accounting in qos "cls-Local cls-Inet"
accounting out qos "cls-Local cls-Inet"
seq 10 attribute Dynamic-Policy-Filter "ip in forward class cls-Inet qos"
seq 20 attribute Dynamic-Policy-Filter "ip out forward class cls-Inet qos"
seq 30 attribute Dynamic-Policy-Filter "ip in forward class cls-Local qos"
seq 40 attribute Dynamic-Policy-Filter "ip out forward class cls-Local qos"
seq 50 attribute Dynamic-Qos-Parameter "meter-class-rate cls-Inet rate-absolute 2000"
seq 60 attribute Dynamic-Qos-Parameter "meter-class-burst cls-Inet 250000"
seq 70 attribute Dynamic-Qos-Parameter "meter-class-excess-burst cls-Inet 500000"
seq 80 attribute Dynamic-Qos-Parameter "police-class-rate cls-Inet rate-absolute 2000"
seq 90 attribute Dynamic-Qos-Parameter "police-class-burst cls-Inet 250000"
seq 100 attribute Dynamic-Qos-Parameter "police-class-excess-burst cls-Inet 500000"
seq 110 attribute Dynamic-Qos-Parameter "meter-class-rate cls-Local rate-absolute 50000"
seq 120 attribute Dynamic-Qos-Parameter "meter-class-burst cls-Local 6250000"
seq 130 attribute Dynamic-Qos-Parameter "meter-class-excess-burst cls-Local 125000000"
seq 140 attribute Dynamic-Qos-Parameter "police-class-rate cls-Local rate-absolute 50000"
seq 150 attribute Dynamic-Qos-Parameter "police-class-burst cls-Local 6250000"
seq 160 attribute Dynamic-Qos-Parameter "police-class-excess-burst cls-Local 125000000"
seq 170 attribute Service-Interim-Accounting 1200
!
radius service profile service3072
accounting in qos "cls-Local cls-Inet"
accounting out qos "cls-Local cls-Inet"
seq 10 attribute Dynamic-Policy-Filter "ip in forward class cls-Inet qos"
seq 20 attribute Dynamic-Policy-Filter "ip out forward class cls-Inet qos"
seq 30 attribute Dynamic-Policy-Filter "ip in forward class cls-Local qos"
seq 40 attribute Dynamic-Policy-Filter "ip out forward class cls-Local qos"
seq 50 attribute Dynamic-Qos-Parameter "meter-class-rate cls-Inet rate-absolute 3000"
seq 60 attribute Dynamic-Qos-Parameter "meter-class-burst cls-Inet 375000"
seq 70 attribute Dynamic-Qos-Parameter "meter-class-excess-burst cls-Inet 750000"
seq 80 attribute Dynamic-Qos-Parameter "police-class-rate cls-Inet rate-absolute 3000"
seq 90 attribute Dynamic-Qos-Parameter "police-class-burst cls-Inet 375000"
seq 100 attribute Dynamic-Qos-Parameter "police-class-excess-burst cls-Inet 750000"
seq 110 attribute Dynamic-Qos-Parameter "meter-class-rate cls-Local rate-absolute 50000"
seq 120 attribute Dynamic-Qos-Parameter "meter-class-burst cls-Local 6250000"
seq 130 attribute Dynamic-Qos-Parameter "meter-class-excess-burst cls-Local 125000000"
seq 140 attribute Dynamic-Qos-Parameter "police-class-rate cls-Local rate-absolute 50000"
seq 150 attribute Dynamic-Qos-Parameter "police-class-burst cls-Local 6250000"
seq 160 attribute Dynamic-Qos-Parameter "police-class-excess-burst cls-Local 125000000"
seq 170 attribute Service-Interim-Accounting 1200
!
radius service profile service4096
accounting in qos "cls-Local cls-Inet"
accounting out qos "cls-Local cls-Inet"
seq 10 attribute Dynamic-Policy-Filter "ip in forward class cls-Inet qos"
seq 20 attribute Dynamic-Policy-Filter "ip out forward class cls-Inet qos"
seq 30 attribute Dynamic-Policy-Filter "ip in forward class cls-Local qos"
seq 40 attribute Dynamic-Policy-Filter "ip out forward class cls-Local qos"
seq 50 attribute Dynamic-Qos-Parameter "meter-class-rate cls-Inet rate-absolute 4000"
seq 60 attribute Dynamic-Qos-Parameter "meter-class-burst cls-Inet 500000"
seq 70 attribute Dynamic-Qos-Parameter "meter-class-excess-burst cls-Inet 1000000"
seq 80 attribute Dynamic-Qos-Parameter "police-class-rate cls-Inet rate-absolute 4000"
seq 90 attribute Dynamic-Qos-Parameter "police-class-burst cls-Inet 500000"
seq 100 attribute Dynamic-Qos-Parameter "police-class-excess-burst cls-Inet 1000000"
seq 110 attribute Dynamic-Qos-Parameter "meter-class-rate cls-Local rate-absolute 50000"
seq 120 attribute Dynamic-Qos-Parameter "meter-class-burst cls-Local 6250000"
seq 130 attribute Dynamic-Qos-Parameter "meter-class-excess-burst cls-Local 125000000"
seq 140 attribute Dynamic-Qos-Parameter "police-class-rate cls-Local rate-absolute 50000"
seq 150 attribute Dynamic-Qos-Parameter "police-class-burst cls-Local 6250000"
seq 160 attribute Dynamic-Qos-Parameter "police-class-excess-burst cls-Local 125000000"
seq 170 attribute Service-Interim-Accounting 1200
!
radius service profile service512
parameter value Rate-Inet 500
parameter value Burst-Inet 62500
parameter value ExBurst-Inet 125000
parameter value Rate-Local 50000
parameter value Burst-Local 6250000
parameter value ExBurst-Local 125000000
accounting in qos "cls-Local cls-Inet"
accounting out qos "cls-Local cls-Inet"
seq 10 attribute Dynamic-Policy-Filter "ip in forward class cls-Inet qos"
seq 20 attribute Dynamic-Policy-Filter "ip out forward class cls-Inet qos"
seq 30 attribute Dynamic-Policy-Filter "ip in forward class cls-Local qos"
seq 40 attribute Dynamic-Policy-Filter "ip out forward class cls-Local qos"
seq 50 attribute Dynamic-Qos-Parameter "meter-class-rate cls-Inet rate-absolute $Rate-Inet"
seq 60 attribute Dynamic-Qos-Parameter "meter-class-burst cls-Inet $Burst-Inet"
seq 70 attribute Dynamic-Qos-Parameter "meter-class-excess-burst cls-Inet $ExBurst-Inet"
seq 80 attribute Dynamic-Qos-Parameter "police-class-rate cls-Inet rate-absolute $Rate-Inet"
seq 90 attribute Dynamic-Qos-Parameter "police-class-burst cls-Inet $Burst-Inet"
seq 100 attribute Dynamic-Qos-Parameter "police-class-excess-burst cls-Inet $ExBurst-Inet"
seq 110 attribute Dynamic-Qos-Parameter "meter-class-rate cls-Local rate-absolute $Rate-Local"
seq 120 attribute Dynamic-Qos-Parameter "meter-class-burst cls-Local $Burst-Local"
seq 130 attribute Dynamic-Qos-Parameter "meter-class-excess-burst cls-Local $ExBurst-Local"
seq 140 attribute Dynamic-Qos-Parameter "police-class-rate cls-Local rate-absolute $Rate-Local"
seq 150 attribute Dynamic-Qos-Parameter "police-class-burst cls-Local $Burst-Local"
seq 160 attribute Dynamic-Qos-Parameter "police-class-excess-burst cls-Local $ExBurst-Local"
seq 170 attribute Service-Interim-Accounting 1200

Настройка биллинга (event_inc.sh)

selfkiller -30:TERM -50:KILL & disown -a

LOG_LEVEL=ALL

SENDER=$1; shift
EVENT=$1; shift
DATA=$@

for VAR in $DATA; do
      [[ "$VAR" = *"="* ]] && eval ${VAR%%=*}=\'${VAR#*=}\'
done
      
LOG INFO "$SENDER $EVENT $DATA"
{
case "$EVENT" in
    "balance_negative")
    LOG INFO "event type: $EVENT $DATA"
    echo "Acct-Session-Id=\"$acct_session_id\",HTTP-Redirect-Profile-Name=\"NOAUTH\",Forward-Policy=\"in:NOAUTH-IPOE\"" | radclient -x $nas_ip:1700 coa redback
    ;;
    "balance_positive")
    LOG INFO "event type: $EVENT $DATA"
    echo "Acct-Session-Id=\"$acct_session_id\",Forward-Policy = \"in:\"" | radclient -x $nas_ip:1700 coa redback
    ;;
    "login")
    LOG INFO "event type: $EVENT $DATA"
    [ "$over_limit" = 1 ] && echo "Acct-Session-Id=\"$acct_session_id\",HTTP-Redirect-Profile-Name=\"NOAUTH\",Forward-Policy=\"in:NOAUTH-IPOE\"" | radclient -x $nas_ip:1700 coa redback
    [ "$over_limit" = 0 ] && echo "Acct-Session-Id=\"$acct_session_id\",Forward-Policy = \"in:\"" | radclient -x $nas_ip:1700 coa redback
    ;;
    "logout")
    LOG INFO "event type: $EVENT $DATA"
    echo "Acct-Session-Id=\"$acct_session_id\",HTTP-Redirect-Profile-Name=\"NOAUTH\",Forward-Policy=\"in:NOAUTH-IPOE\"" | radclient -x $nas_ip:1700 coa redback    
    [ "$deleted" = 1 ] &&  echo "Acct-Session-Id=\"$acct_session_id\"" | radclient -x $nas_ip:1700 disconnect redback
    ;;
    "rate_set")
    LOG INFO "event type: $EVENT $DATA"
        echo "Acct-Session-Id=\"$acct_session_id\",Deactivate-Service-Name=\"service$ceil_in\"" | radclient -x $nas_ip:1700 coa redback;
    echo "Acct-Session-Id=\"$acct_session_id\",Service-Name=\"service$ceil_in\",Service-Action=\"0\"" | radclient -x $nas_ip:1700 coa redback;    
    [ "$over_limit" = 1 ] && echo "Acct-Session-Id=\"$acct_session_id\",HTTP-Redirect-Profile-Name=\"NOAUTH\",Forward-Policy=\"in:NOAUTH-IPOE\"" | radclient -x $nas_ip:1700 coa redback
    ;;
    "period_closed")
    LOG INFO "event type: $EVENT $DATA"
    ;;
    "try_double_login")
    LOG INFO "event type: $EVENT $DATA"
    echo "Acct-Session-Id=\"$acct_session_id\"" | radclient -x $nas_ip:1700 disconnect redback
    ;;
    
    "user_data_changed")
    LOG INFO "event type: $EVENT $DATA"
    [ "$over_limit" = 1 ] && echo "Acct-Session-Id=\"$acct_session_id\",HTTP-Redirect-Profile-Name=\"NOAUTH\",Forward-Policy=\"in:NOAUTH-IPOE\"" | radclient -x $nas_ip:1700 coa redback
    [ "$over_limit" = 0 ] && echo "Acct-Session-Id=\"$acct_session_id\",Forward-Policy = \"in:\"" | radclient -x $nas_ip:1700 coa redback
    [ "$deleted" = 1 ] &&  echo "Acct-Session-Id=\"$acct_session_id\"" | radclient -x $nas_ip:1700 disconnect redback
    ;;
    "user_del")
    LOG INFO "event type: $EVENT $DATA"
    [ "$deleted" = 1 ] &&  echo "Acct-Session-Id=\"$acct_session_id\"" | radclient -x $nas_ip:1700 disconnect redback
    ;;
    

    *)
    :
    ;;
esac
}

Пример тарифа

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

Настройка отправки Netflow-потоков на Carbon Billing

Необходимо настроить на redback отправку netflow потоков на IP-адрес Carbon Billing, порт 9996 (по умолчанию).

Добавление оборудования в список маршрутизаторов

Дополнительная информация:

http://www.telecor.ru/technology/solutions/clips/

http://wiki.bgbilling.ru/index.php/RedBack_CLIPS

http://forum.nag.ru/forum/index.php?s=f1292721e67e280be1b77d47699de127&showtopic=66507&st=20

Для удобства дебага можно воспользоваться статьей.

Метки

Введите метки, чтобы добавить к этой странице:
Please wait 
Ищите метку? просто начните печатать.