![]() |
Cisco 6400 Feature Guide--Release 12.2(2)B
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Layer 2 Tunnel Protocol
![]() |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Table of ContentsLayer 2 Tunnel ProtocolOverview
Restrictions L2TP Scalability Prerequisites Configuring L2TP Configuring VPDN on the LAC
Monitoring and Troubleshooting VPDN and L2TPConfiguring VPDN on the LNS Tunnel Service Authorization Configuring a Static Domain Name
Sessions per Tunnel LimitingEnabling Domain Preauthorization Configuring the LAC to Communicate with the RADIUS Server Configuring the RADIUS User Profile for Domain Preauthorization Configuring the RADIUS Service Profile for Tunnel Service Authorization L2TP Tunnel Service Authorization Example Configuring Sessions Per Tunnel Limiting on the LAC
Tunnel SharingConfiguring Sessions per Tunnel Limiting in the RADIUS Service Profile Tunnel Switching Layer 2 Tunnel ProtocolOverviewThis chapter describes the Layer 2 tunnel protocol (L2TP) features supported in Cisco IOS Release 12.2(2)B. Defined by RFC 2661, L2TP is an emerging Internet Engineering Task Force (IETF) standard that combines the best features of two existing tunneling protocols: Cisco's Layer 2 Forwarding (L2F) and Microsoft's Point-to-Point Tunneling Protocol (PPTP). For a description, benefits, restrictions, and configuration information for L2TP, see the "Configuring Virtual Private Networks" chapter in the "Virtual Templates, Profiles, and Networks" part of the Cisco IOS Dial Technologies Configuration Guide, Release 12.2 . RestrictionsL2TP Tunnel Service Authorization Static tunnel service authorization does not support switched virtual channels (SVCs). When using a RADIUS service profile for tunnel service authorization, the NRP configured as an L2TP tunnel switch must forward all sessions through L2TP tunnels. The L2TP tunnel switch must not terminate any of the sessions. The total number of precloned interfaces must not exceed 3000 on the Cisco 6400 NRP. L2TP Scalability PrerequisitesCisco Express Forwarding To support over 1000 sessions, you must enable Cisco Express Forwarding (CEF) with the ip cef global configuration command. For more information on CEF, see the "Cisco Express Forwarding" chapter in the "Cisco IOS Switching Paths" part of the Cisco IOS Switching Services Configuration Guide. Cisco recommends at least 128 MB of DRAM on the Cisco 6400 NRP while using these feature enhancements. Configuring L2TPConfiguring L2TP involves the following tasks:
Configuring VPDN on the LAC
Configuring VPDN on the LNS
At this point, you can configure the virtual template interface with configuration parameters you want to apply to virtual access interfaces. A virtual template interface is a logical entity configured for a serial interface. The virtual template interface is not tied to any physical interface and is applied dynamically as needed. Virtual access interfaces are cloned from a virtual template interface, used on demand, and then freed when no longer needed. Enter the following commands to create and configure a virtual template interface beginning in global configuration mode:
Optionally, you can configure other commands for the virtual template interface. For information about configuring virtual template interfaces, see the "Configuring Virtual Template Interfaces" chapter in the Dial Solutions Configuration Guide. Refer to the "Important Notes" section of the release notes to learn about scaling and enhancing VPDN and L2TP features. Tunnel Service Authorization
2. Tunnel Service AuthorizationThe user profile on the RADIUS server provides a list of domains accessible to the user, enabling tunnel service authorization for the client-supplied domain. If successful, the LAC establishes an L2TP tunnel. Configuring a Static Domain NameYou can configure the static domain name on the PVC or on the VC class. To configure the static domain name on the PVC, enter the following commands beginning in global configuration mode:
To configure the static domain name on the VC class, enter the following commands beginning in global configuration mode:
Verifying the Static Domain NameTo verify that you successfully configured the static domain name, enter the show running-config EXEC command. Enabling Domain PreauthorizationTo enable the LAC to perform domain authorization before tunneling, enter the following command in global configuration mode:
Verifying Domain PreauthorizationTo check that you successfully enabled domain preauthorization, enter the show running-config EXEC command. Configuring the LAC to Communicate with the RADIUS ServerTo enable the LAC to communicate properly with the RADIUS server for tunnel service authorization, enter the following commands in global configuration mode:
Verifying LAC and RADIUS Server CommunicationTo check that you successfully configured the LAC to communicate properly with the RADIUS server for tunnel service authorization, enter the show running-config EXEC command. Configuring the RADIUS User Profile for Domain PreauthorizationTo enable domain preauthorization, enter the following configuration in the user profile on the RADIUS server:
Syntax Description
Verifying the RADIUS User Profile for Domain PreauthorizationTo verify the RADIUS user profile, refer to the user documentation for your RADIUS server. Configuring the RADIUS Service Profile for Tunnel Service Authorization
Syntax Description
Verifying the RADIUS Service Profile for Tunnel Service AuthorizationTo verify the RADIUS service profile, refer to the user documentation for your RADIUS server. L2TP Tunnel Service Authorization ExampleThis section contains the following examples:
Static Domain Name Configuration on a PVC Example The following example shows the static domain names "net1.com" and "net2.com" assigned to PVCs on an ATM interface. All PPP sessions originating from PVC 30/33 are sent to the "net1.com" L2TP tunnel, while all PPP sessions originating from PVC 30/34 are sent to the "net2.com" tunnel. ! interface ATM 0/0/0.33 multipoint pvc 30/33 encapsulation aal5ciscoppp Virtual-Template1 vpn service net1.com ! pvc 30/34 encapsulation aal5ciscoppp Virtual-Template1 vpn service net2.com ! Static Domain Name Configuration on a VC Class Example In the following example, the static domain name "net.com" is assigned to a VC class. The VC class is then assigned to the VCs on an ATM subinterface. ! vc-class ATM MyClass encapsulation aal5ciscoppp Virtual-Template1 vpn service net.com ! interface ATM 0/0/0.99 multipoint class-int MyClass no ip directed-broadcast pvc 20/40 pvc 30/33 ! Domain Preauthorization Configuration on the LAC Example The following example shows the configuration necessary for the LAC to participate in domain preauthorization: ! aaa new-model aaa authorization network default local group radius ! vpdn authorize domain ! radius-server host 10.9.9.9 auth-port 1645 acct-port 1646 radius-server attribute nas-port format d radius-server key MyKey radius-server vsa send authentication ! Domain Preauthorization RADIUS User Profile Example The following example shows a domain preauthorization RADIUS user profile: user = nas-port:10.9.9.9:0/0/0/30.33{
profile_id = 826
profile_cycle = 1
radius=Cisco {
check_items= {
2=cisco
}
reply_attributes= {
9,1="vpdn:vpn-domain-list=net1.com,net2.com"
6=5
}
}
}
Tunnel Service Authorization Configuration on the LAC Example The following example shows the configuration necessary for the LAC to participate in tunnel service authorization: ! aaa new-model aaa authorization network default local group radius ! radius-server host 10.9.9.9 auth-port 1645 acct-port 1646 radius-server attribute nas-port format d radius-server key MyKey radius-server vsa send authentication ! Tunnel Service Authorization RADIUS Service Profile Example The following example shows a tunnel service authorization RADIUS service profile: user = net1.com{
profile_id = 45
profile_cycle = 18
member = me
radius=Cisco {
check_items= {
2=cisco
}
reply_attributes= {
9,1="vpdn:tunnel-id=LAC-1"
9,1="vpdn:l2tp-tunnel_password=MySecret"
9,1="vpdn:tunnel-type=l2tp"
9,1="vpdn:ip-addresses=10.10.10.10"
6=5
}
}
}
Sessions per Tunnel LimitingThis feature enables the initiate-to command to limit the number of sessions per L2TP tunnel. Configuring Sessions Per Tunnel Limiting on the LACTo limit the number of sessions per tunnel without using a RADIUS server, complete the following steps on the NRP-LAC beginning in global configuration mode:
ExampleIn the following example, the LAC initiates up to three tunnels. Each tunnel is limited to 40 sessions. ! vpdn-group 1 request-dialin protocol l2tp domain net.com initiate-to ip 10.1.1.1 limit 40 initiate-to ip 10.2.2.2 limit 40 initiate-to ip 10.2.2.2 limit 40 ! Verifying Sessions per Tunnel Limiting on the LACStep 1 Enter the show running-config EXEC command to check that you successfully configured the maximum number of sessions per tunnel. Step 2 Enter the show vpdn tunnel privileged EXEC command to verify that the number of displayed sessions does not exceed your configured limit. Router# show vpdn tunnel L2TP Tunnel Information (Total tunnels 50 sessions 2000) LocID RemID Remote Name State Remote Address Port Sessions 41234 7811 LNS1 est 10.1.1.1 1701 40 20022 2323 LNS1 est 10.1.1.1 1701 40 41234 7811 LNS2 est 10.1.2.2 1701 40 59765 3477 LNS2 est 10.1.3.3 1701 40 ... Configuring Sessions per Tunnel Limiting in the RADIUS Service ProfileTo use a RADIUS server to limit the number of sessions per tunnel, enter the following Cisco-AVpair attributes in the RADIUS service profile. VPDN IP AddressesThis attribute specifies the IP addresses of the LNSes to receive the L2TP connections. Cisco-AVpair = "vpdn:ip-addresses=address1[<delimiter>address2][<delimiter>address3]..."Syntax Description
In the following example, the LAC sends the first PPP session through a tunnel to 10.1.1.1, the second PPP session to 10.2.2.2, the third to 10.3.3.3. The fourth PPP session is sent through the tunnel to 10.1.1.1, and so forth. If the LAC fails to establish a tunnel with any of the IP addresses in the first group, then the LAC attempts to connect to those in the second group (10.4.4.4 and 10.5.5.5). Example (RADIUS Freeware Format) Cisco-AVpair="vpdn:ip-addresses=10.1.1.1,10.2.2.2,10.3.3.3/10.4.4.4,10.5.5.5" Example (CiscoSecure ACS for UNIX) 9,1="vpdn:ip-addresses=10.1.1.1,10.2.2.2,10.3.3.3/10.4.4.4,10.5.5.5" VPDN IP Address LimitsThis attribute specifies the maximum number of sessions in each tunnel to the IP addresses listed with the vpdn:ip-addresses attribute. Cisco-AVpair = "vpdn:ip-address-limits=limit1 [limit2] [limit3]... "Syntax Description
Example (RADIUS Freeware Format) Cisco-AVpair="vpdn:ip-address-limits=10 20 30 40 50 " Example (CiscoSecure ACS for UNIX) 9,1="vpdn:ip-address-limits=10 20 30 40 50 "
ExampleThe following example shows a tunnel service authorization RADIUS service profile, along with the session limiting entry. IP addresses 10.1.1.1 and 10.2.2.2 are assigned priority 1, while IP addresses 10.3.3.3 and 10.4.4.4 are assigned priority 2. Tunnels to 10.1.1.1 are limited to 100 sessions, tunnels to 10.2.2.2 are limited to 200 sessions, tunnels to 10.3.3.3 are limited to 300 sessions, and tunnels to 10.4.4.4 are limited to 400 sessions. user = net.com{
profile_id = 45
profile_cycle = 18
member = me
radius=Cisco {
check_items= {
2=cisco
}
reply_attributes= {
9,1="vpdn:tunnel-id=LAC-1"
9,1="vpdn:l2tp-tunnel_password=MySecret"
9,1="vpdn:tunnel-type=l2tp"
9,1="vpdn:ip-addresses=10.1.1.1 10.2.2.2/10.3.3.3 10.4.4.4"
9,1="vpdn:ip-address-limits=100 200 300 400 "
6=5
}
}
}
Verifying Sessions per Tunnel Limiting in the RADIUS Service ProfileTo verify the RADIUS service profile, refer to the user documentation for your RADIUS server. Tunnel SharingThis feature enables sessions authorized with different domains to share the same tunnel. Configuring Tunnel Sharing on the LACTo implement the tunnel sharing feature, complete the following steps on the NRP-LAC beginning in global configuration mode:
ExampleIn the following example, all sessions that are locally authorized through VPDN group 1 are sent through the same tunnel to 10.1.1.1. ! vpdn-group 1 request-dialin protocol l2tp domain net1.com domain net2.com initiate-to ip 10.1.1.1 tunnel share ! Verifying Tunnel Sharing Configuration on the LACEnter the show running-config EXEC command to check that you successfully enabled the tunnel sharing feature. Configuring Tunnel Sharing in the RADIUS Service ProfileTo implement the tunnel sharing feature, enter the following Cisco-AVpair attributes in the RADIUS service profile. VPDN GroupThis attribute specifies the group to which the service belongs. All services with matching group names are considered members of the same VPDN group. Cisco-AVpair = "vpdn:vpdn-group=group-name"Syntax Description
Example (RADIUS Freeware Format) Cisco-AVpair="vpdn:vpdn-group=group1" Example (CiscoSecure ACS for UNIX) 9,1="vpdn:vpdn-group=group1" Tunnel ShareThis attribute indicates that the tunnel sharing feature is enabled for the service. Cisco-AVpair = "vpdn:tunnel-share=yes"Syntax Description This attribute has no arguments or keywords. Example (RADIUS Freeware Format) Cisco-AVpair="vpdn:tunnel-share=yes" Example (CiscoSecure ACS for UNIX) 9,1="vpdn:tunnel-share=yes" ExampleIn the following example, both the net1.com and net2.com services are members of the "group1" VPDN group. With tunnel sharing enabled in both service profiles, the sessions for net1.com and net2.com will be combined and sent through the same tunnels. user = net1.com{
profile_id = 45
profile_cycle = 18
member = me
radius=Cisco {
check_items= {
2=cisco
}
reply_attributes= {
9,1="vpdn:tunnel-id=LAC-1"
9,1="vpdn:l2tp-tunnel_password=MySecret"
9,1="vpdn:tunnel-type=l2tp"
9,1="vpdn:ip-addresses=10.10.10.10"
9,1="vpdn:vpdn-group=group1"
9,1="vpdn:tunnel-share=yes"
6=5
}
}
}
user = net2.com{
profile_id = 45
profile_cycle = 18
member = me
radius=Cisco {
check_items= {
2=cisco
}
reply_attributes= {
9,1="vpdn:tunnel-id=LAC-1"
9,1="vpdn:l2tp-tunnel_password=MySecret"
9,1="vpdn:tunnel-type=l2tp"
9,1="vpdn:ip-addresses=10.10.10.10"
9,1="vpdn:vpdn-group=group1"
9,1="vpdn:tunnel-share=yes"
6=5
}
}
}
Verifying the Tunnel Sharing Configuration in the RADIUS Service ProfileTo verify the RADIUS service profile, refer to the user documentation for your RADIUS server. Tunnel Switching
The L2TP Tunnel Switching feature enables the Cisco 6400 node route processor (NRP) to terminate tunnels from LACs and forward the sessions through new L2TP tunnels selected independently of the client-supplied domains. The NRP as a tunnel switch performs VPDN tunnel authorization based on the ingress tunnel names that are mapped to specified LNSes. Figure 2-1 shows an example network topology using the L2TP tunnel switching feature. Figure 2-1: Example Network Topology Using the L2TP Tunnel Switching Feature
See the following procedures to configure the L2TP Tunnel Switching feature. The listed tasks are required to configure the L2TP tunnel switch.
Enabling VPDN and Multihop FunctionalityTo use the L2TP Tunnel Switching feature, you must first enable VPDN and multihop capabilities by entering the following commands beginning in global configuration mode:
Verifying VPDN and Multihop FunctionalityTo verify that you enabled VPDN and multihop functionality, enter the show running-config EXEC command. Terminating the Tunnel from the LACTo terminate the tunnel from the LAC, enter the following commands beginning in global configuration mode:
Verifying Termination of the Tunnel from the LACTo verify that you successfully configured the tunnel switch to terminate tunnels from the LAC, enter the show running-config EXEC command. Mapping the Ingress Tunnel Name to an LNSTo map the ingress tunnel name to an LNS, complete the following steps beginning in global configuration mode:
Verifying the Ingress Tunnel Name to LNS MapTo verify that you successfully mapped the ingress tunnel name to the LNS, enter the show running-config EXEC command. Performing VPDN Tunnel Authorization Searches by Ingress Tunnel NameTo specify how to perform VPDN tunnel authorization searches, enter the following command in global configuration mode:
Verifying VPDN Tunnel Authorization Searches by Ingress Tunnel NameTo verify that you successfully configured the tunnel switch to perform VPDN tunnel authorization searches by ingress tunnel name, enter the show running-config EXEC command. L2TP Tunnel Switching ExampleThe examples in this section show the configurations necessary for the basic L2TP tunnel switch topology shown in Figure 2-2. In this topology, a tunnel switch terminates tunnels from two LACs and forwards all the sessions through one tunnel to the LNS. Figure 2-2: Example L2TP Tunnel Switch Topology
This section provides the following configuration examples:
In the following example, LAC-1 performs tunnel authorization based on domain name and initiates a tunnel to the L2TP tunnel switch: ! vpdn enable ! username net.com password Secret1 username Tunnel-Switch-In password Secret1 ! vpdn-group 1 request-dialin protocol l2tp domain service1.net.com initiate-to ip 10.1.1.1 local name net.com ! In the following example, LAC-2 also performs tunnel authorization based on domain name and initiates a tunnel to the L2TP tunnel switch: ! vpdn enable ! username net.com password Secret2 username Tunnel-Switch-In password Secret2 ! vpdn-group 1 request-dialin protocol l2tp domain service2.net.com initiate-to ip 10.1.1.1 local name net.com ! L2TP Tunnel Switch Configuration Example In the following example, the NRP is configured as an L2TP tunnel switch. VPDN groups 1 and 2 are used to terminate the tunnels from the LAC. VPDN group 11 is used to initiate the tunnel to the LNS, and it performs tunnel authorization based on the configured ingress tunnel name. ! vpdn enable vpdn multihop vpdn search-order multihop-hostname domain ! username net.com password Secret1 username Tunnel-Switch-In password Secret1 username net.com password Secret2 username Tunnel-Switch-In password Secret2 username LNS password Secret3 username Tunnel-Switch-Out password Secret3 ! vpdn-group 1 accept-dialin protocol l2tp virtual-template 1 terminate-from hostname net.com local name Tunnel-Switch-In ! vpdn-group 11 request-dialin protocol l2tp multihop hostname net.com initiate-to ip 10.2.2.2 local name Tunnel-Switch-Out ! interface ATM 0/0/0.1001 point-to-point ip address 10.1.1.1 255.255.255.0 pvc 5/10 encapsulation aal5snap ! interface Virtual-Template 1 ip unnumbered FastEthernet 0/0/0 no ip directed-broadcast no keepalive no peer default ip address ppp authentication chap ! In the following example, the LNS terminates the tunnel from the L2TP tunnel switch: vpdn enable ! username LNS password Secret3 username Tunnel-Switch-Out password Secret3 ! vpdn-group 1 accept-dialin protocol l2tp virtual-template 1 terminate-from hostname Tunnel-Switch local name LNS ! interface Virtual-Template 1 ip unnumbered FastEthernet 0/0/0 no ip directed-broadcast ip mroute-cache no keepalive peer default ip address pool pool-1 ppp authentication chap ! Monitoring and Troubleshooting VPDN and L2TPTo troubleshoot VPDN and L2TP, enter the privileged EXEC command debug vpdn. For sample output of debug vpdn, see the "Debug Examples" section in the Layer 2 Tunnel Protocol feature module. You can also enter the privileged EXEC command show vpdn tunnel all, which contains information for on L2TP scalability. The scalabilty related fields are described in Table 2-1. Router# show vpdn tunnel all L2TP Tunnel Information (Total tunnels=1 sessions=500) Tunnel id 20 is up, remote id is 12, 500 active sessions Tunnel state is established, time since change 00:00:33 Remote tunnel name is LAC Internet Address 10.1.1.1, port 1701 Local tunnel name is LNS Internet Address 10.1.1.2, port 1701 971 packets sent, 1259 received, 19892 bytes sent, 37787 received Control Ns 501, Nr 746 Local RWS 3000 (default), Remote RWS 3000 (max) Retransmission time 4, max 8 seconds Unsent queuesize 0, max 0 Resend queuesize 251, max 261 Total resends 390, ZLB ACKs 251 Current nosession queue check 0 of 5 Retransmit time distribution: 0 0 0 0 1 0 0 0 1 Sessions disconnected due to lack of resources 0 Table 2-1: show vpdn tunnel all Field Descriptions
Table 2-2 describes privileged EXEC commands that help you monitor and maintain VPDNs that use L2TP tunnels. Table 2-2: VPDN Monitoring and Maintaining Commands
Troubleshooting components in VPDN is not always straightforward because there are multiple technologies and OSI layers involved. Table 2-3 describes EXEC commands that will help you isolate and identify problems on VPDNs that use L2TP tunnels: Table 2-3: VPDN Troubleshooting Commands
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||