Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

Navigation  Back up to About Overview 
ContentIndex
  
[+] Expand All
[-] Collapse All

 A  B  C  D  E  F  G  H  I  L  M  N  P  Q  R  S  T  U  V

 

A

access lines    1
description    12
accesses    
configuring subscriptions    
SRC CLI
accounting    
basic RADIUS accounting plug-in
custom RADIUS accounting plug-ins
flat file accounting plug-ins
flexible RADIUS accounting plug-ins
anonymous subscriber
attributes    
RADIUS accounting
authenticated subscriber
authentication plug-ins    
configuring
types
authorization plug-ins    
configuring
types
 

B

basic RADIUS accounting plug-in    1
configuring    
SRC CLI
basic RADIUS authentication plug-in    1
configuring    
SRC CLI
 

C

captive portal    
preventing access to resources
classification scripts    
conditions    1
glob matching
joining
regular expression matching
configuring    
C-Web interface
descriptions
DHCP classification, C Series Controller    
conditions
configuring, SRC CLI
description
targets
interface classification, C Series Controller    
conditions
configuring, SRC CLI
description
empty policy    12
examples
how it works
targets
structure    
C-Web interface
subscriber classification, C Series Controller    
condition
configuring, SRC CLI
description
DHCP options
enterprise subscriber example
how it works
static IP subscriber example
subscriber group example
targets
target, C Series Controller    
definition
expressions
types
component interactions    
DHCP    
initial login
persistent login
subscriber account login
subscriber logout
enterprise subscribers    
login
remote session activation
PPP    
login
logout
static IP subscribers
subscription activation
subscription deactivation
conventions    
notice icons
text
COPS (Common Open Policy Service)    
DHCP interactions    
initial login
logout
persistent login
subscriber account login
interface startup interactions
PPP interactions    
login
logout
static IP subscriber interactions
subscription activation interactions
subscription deactivation interactions
custom RADIUS accounting plug-ins    1
configuring    
SRC CLI
custom RADIUS authentication plug-ins    1
configuring    
SRC CLI
customer support    1
contacting JTAC
 

D

default retailer authentication plug-ins    
configuring    
SRC CLI
default retailer DHCP authentication plug-ins    
configuring    
SRC CLI
denial-of-service attacks
DHCP (Dynamic Host Configuration Protocol)    
address assignment
classification scripts.     See classification scripts    
options
profiles    
SRC CLI
subscribers    
login process
logout process
documentation    
comments on
 

E

enterprise    
description
enterprise subscribers    1
adding    
SRC CLI
enterprise subscribers, login process
event publishers    
configuring    
SRC CLI
default retailer authentication, configuring    
SRC CLI
default retailer DHCP authentication, configuring    
SRC CLI
description
retailer-specific
service-specific
virtual router-specific
external plug-ins    
configuring    
SRC CLI
 

F

file upload settings for log rotation    
configuring    
SRC CLI
flat file accounting plug-ins    1
configuring    
SRC CLI
configuring headers    
SRC CLI
flexible RADIUS accounting plug-ins    1
attributes, defining    
C-Web interface
configuring
RADIUS packets, defining
flexible RADIUS authentication plug-ins    1
attributes, defining    
C-Web interface
examples
configuring    
SRC CLI
RADIUS packets, defining    
SRC CLI
setting responses    
C-Web interface
FTP server for log rotation    
configuring    
SRC CLI    12
 

G

general properties    
configuring    
SRC CLI
 

H

HTTP proxy    12
HTTPS traffic
 

I

interface classification scripts.     See classification scripts    
interim accounting, configuring on SAE
internal plug-ins    
configuring    
SRC CLI
 

L

LDAP authentication plug-in    1
configuring    
SRC CLI
limiting subscribers plug-in    1
configuring    
SRC CLI
log rotation    
overview    
SRC CLI
logging    
redirect server
login events, description
login process    
enterprise
residential    12,  See also logout process, residential    
DHCP
PPP
summary
login registration    
configuring    
SRC CLI
logout process, residential    
DHCP
 

M

managers    
configuring    
SRC CLI
control over all retailers
management privileges
subscribers and subscriptions
manuals    
comments on
 

N

NAT (Network Address Translation)    
VPNs
notice icons
 

P

plug-ins    
activating service sessions
authentication    
configuring
authorization    
configuring
basic RADIUS accounting    1
configuring, SRC CLI
basic RADIUS authentication    1
configuring, SRC CLI
creating subscriber sessions
custom RADIUS accounting    1
configuring, SRC CLI
custom RADIUS authentication    1
configuring, SRC CLI
defining RADIUS packets    
SRC CLI
DHCP address assignment
event publishers.     See event publishers    
external    
configuring, SRC CLI
flat file accounting    1
configuring, SRC CLI
flexible RADIUS accounting    1
configuring
flexible RADIUS authentication    1
configuring, SRC CLI
internal    1
authorization
configuring RADIUS peers, SRC CLI
configuring, SRC CLI
customizing RADIUS packets
how they work
pool
RADIUS attributes, C-Web interface
tracking
LDAP authentication    1
configuring, SRC CLI
limiting subscribers    1
configuring, SRC CLI
state synchronization    
configuring, SRC CLI
tracking    
configuring, C-Web interface
service sessions
subscriber sessions
policy groups    
empty    12
policy management    
external policy system    12
PPP subscribers    
login process
Web login
prevention, use of unauthorized resources
protocols    
routing
proxy HTTP    12
proxy request management
public addresses, VPNs
 

Q

QoS tracking plug-in
 

R

RADIUS accounting    
attributes
description
RADIUS attributes    
defining in RADIUS plug-ins    
C-Web interface
examples, defining in RADIUS plug-ins    
C-Web interface
RADIUS client library, custom RADIUS plug-ins
RADIUS packets, customizing in plug-ins
RADIUS peers    
configuring in plug-ins    
SRC CLI
RADIUS plug-ins    1,  See also plug-ins    
authentication
UDP port
redirect server    
assessing load    
C-Web interface
configuration statements    
SRC CLI
configuring    
SRC CLI
configuring DNS server for    
SRC CLI
configuring HTTP proxy support    
SRC CLI
configuring redundant    
SRC CLI
directory connection    
SRC CLI
failover
file extensions    
SRC CLI
logging
number of requests    
SRC CLI
protection against denial-of-service attacks
redundancy    123
static route to router
traffic definition    
SRC CLI
verifying    
SRC CLI
redundancy    
redirect server
residential subscribers    1
adding    
SRC CLI
login process.     See login process    
retailers    
subscribers    1
adding, SRC CLI
router subscribers    1
adding    
SRC CLI
routing instances    
VPNs
routing scheme
 

S

SAE (service activation engine)    
classification scripts.     See classification scripts    
login events
login process.     See login process    
SAE (service activation engine), configuring    
interim accounting    
SRC CLI
login registration    
SRC CLI
multiple logins from same IP address    
SRC CLI
reduce reported session time    
SRC CLI
session reactivation timers    
SRC CLI
time for MAC address in cache    
SRC CLI
unauthenticated user DN    
SRC CLI
service activation engine.     See SAE    
service sessions    
activate-on-login    12
activating and tracking
activating with Web application
enterprise, remote activation
sites    123
subscriber    1
adding, SRC CLI
state synchronization plug-in interface    
configuring    
SRC CLI
static IP subscribers, login process
static routing
subscriber classification scripts.     See classification scripts    
subscriber folders    1
adding    
SRC CLI
subscriber sessions    
activating with Web application
creating and tracking
enterprise, creating and activating
subscribers    
3gpp attributes (Gx router driver)    
configuring, SRC CLI
adding    
SRC CLI
enterprise    1
adding, SRC CLI
inheriting properties
inheriting subscriptions
residential    1
adding, SRC CLI
retailer    1
adding, SRC CLI
router    1
adding, SRC CLI
sessions
sites    1
adding, SRC CLI
types
subscriptions    1
access, configuring    
SRC CLI
an orderly deactivation, activation order, specifying    
SRC CLI
configuring    
SRC CLI
multiple per subscriber
support, technical     See technical support    
 

T

targets.     See classification scripts    
technical support    
contacting JTAC
text conventions defined
tracking plug-ins    1
configuring    
C-Web interface
 

U

UDP ports    
RADIUS plug-ins
User Datagram Protocol.     See UDP    
 

V

validating    
VPNs
virtual private networks.     See VPNs    
VPNs (virtual private networks)    
adding    
SRC CLI
configuration requirements
configuration statements
extranet clients, modifying    
SRC CLI
invalid subscriptions
modifying
routing schemes
using NAT
validating

Related Documentation

Configuring Classification Scripts Overview

Classification scripts are organized into rules. Each rule has a target and one or more match conditions. For example:

Subscriber Classifiers

subscriber-classifier {
.
.
.
rule rule-2 {
   target <-unauthenticatedUserDn->;
    condition {
      "loginType == \"ADDR\"";
      "loginType == \"AUTHADDR\"";
    }
  }
}

DHCP Classifiers

dhcp-classifier {
.
.
.
rule rule-2 {
    target cn=default,<-dhcpProfileDN->;
    condition {
      1;
    }
  }
}

Interface Classifiers

interface-classifier {
.
.
.
rule rule-5 {
    target /sample/junose/DHCP;
    condition {
      "interfaceName=\"fastEthernet*\"";
      "interfaceName=\"atm*/*.*\"";
    }
  }
}

Classification Targets

A target is the result of the classification script that gets returned to the SAE. There are two special types of targets:

  • No-match targets—Targets that begin with a - (single dash) are interpreted as no match. If the conditions of this target are matched, a no-match message is returned to SAE. You can use this type of target to exclude certain patterns or to shortcut known nonmatches. To speed up processing, use this target to specify interfaces that you do not want the SAE to manage.
  • Script targets—The content of the script rule is interpreted when the classifier is initially loaded. The script rule can contain definitions of custom functions, which can be called during the matching process. Because you can insert arbitrary code into a script, you can use classification scripts to perform arbitrary tasks.

    Because script targets use * (asterisks), you cannot use * in other types of targets.

Target Expressions

A target can contain expressions. These expressions can refer to an object in the SAE’s memory or configuration, to specific matching conditions, or to another function or script.

Suppose the classification object in a subscriber classifier contains a field called userName. The classifier target uniqueId=<- userName -> is expanded to contain the actual content of the userName field before it is returned to the SAE; for example, for userName=juser, uniqueId=juser is returned.

Target expressions are enclosed in angle brackets and hyphens; for example, <-retailerDn->. The classifier expands expressions before it returns the target to the SAE. The expression is interpreted by an embedded Python interpreter and can contain variables and Python operations. In the simplest case an expression can be a single variable that is replaced with its current contents. Available variable names are all fields of the object passed to the classifier and names created with regular expression matching.

Because a scripting interpreter interprets expressions, more complex operations are possible. Examples are:

  • Indexing—var[index] returns the element index of a sequence. The first element is at index 0.
  • Slicing—var[start : end] creates a substring of the variable var starting at index start up to, but not including, index end; for example, var=Hello, var[2:4] = ll

Classification Conditions

You can configure multiple classification conditions for a rule. For example:

rule rule-2 { target /ent/EntDefault; condition { "pppLoginName=\"\""; "&interfaceName!=\"fastEthernet0*\""; "&interfaceName!=\"null*\""; "&interfaceName!=\"loopback*\"";}}

If you prefix a condition with an & (ampersand) character, the condition is examined only if the previous condition matches.

If you prefix a condition with a | (pipe) character, the condition is examined only if the previous conditions have not produced a positive match.

You can use glob or regular expression matching to configure each target’s conditions.

Glob Matching

Glob matches are of the form:

field = match or field != match

where match is a pattern similar to UNIX filename matching. Glob matches are case insensitive. “field != match” is true, if field=match is not true.

  • *—Matches any substring.
  • ?—Matches any single character.
  • [range]—Matches a single character in the specified range. Ranges can have the form a-z or abcd.
  • [!range]—Matches a single character outside the specified range.
  • C—Matches the single character c.

The available field names are described for the specific classifiers. Examples are:

  • interfaceName = fastEthernet3/0 # matches the string “fastEthernet3/0” directly.
  • interfaceName = fast*3/1 # matches any string that starts with “fast” and ends with “3/1”
  • interfaceName = fast*3/1.* # starts with “fast”, contains “3/1.” arbitrary ending
  • interfaceName = fast*3/[2-57] # starts with “fast”, contains “3/” followed by 2,3,4,5 or 7

Regular Expression Matching

Regular expression matches are of the form:

field =~ re or field !~ re

where field !~ re is true if field =~ re is not true. The regular expression is re. For a complete description of the syntax, see: https://docs.python.org/2/howto/regex.html.

You can group regular expressions with pairs of parentheses. If such an expression matches, the contents of the groups are made available for target expressions. Group number n is available as G[n], where n is the number of the opening parenthesis of the group. You can also name groups by using the special notation (?P<name>…).

Examples:

ifAlias =~ "SSP(.*)" # match a string starting with "SSP". The remainder is stored # in the variable "G[1]"ifAlias =~ (?P<dn>name=(?P<name>[^,]*).*)# match a string starting with “ name=“ . The whole match is# stored in the variable “ dn” . A submatch which does not# contain any “ ,” -characters and starts after “ name=“ # is stored in variable “ name”

Related Documentation

Modified: 2016-05-27