ON THIS PAGE
Example: Configuring Dynamic LNS MLPPP Subscribers
This example shows how to configure dynamic L2TP network server (LNS) multilink (MLPPP) subscribers.
Requirements
This example uses the following hardware and software components:
MX Series with MPC2s installed
Junos OS Release 13.3 or later
Before you configure dynamic LNS MLPPP subscribers, be sure you have:
If configuring a tunnel group using an inline service (
si
) interface, enabled the inline service (si
) interface for LNS subscribers. See Enabling Inline Service Interfaces for PPPoE and LNS Subscribers.Configured the inline service (
si
) interface for LNS subscribers. See Configuring Inline Service Interface for PPPoE and LNS Subscribers.If configuring a tunnel group using a pool of service interfaces, configured service device pools for LNS subscribers. See Configuring Service Device Pools for Load Balancing PPPoE and LNS Subscribers.
Overview
An MLPPP subscriber consists of two IFLs (logical interfaces), a member link, and a bundle. For dynamic LNS MLPPP subscribers, you configure the dynamic member link IFLs using dynamic profiles. The member link dynamic profile includes the family mlppp
statement containing the bundle dynamic profile and the service interface (si
), or a pool of service interfaces. This information is then used to create the dynamic bundle IFL.
Each dynamic bundle accepts only one dynamic member link. If more than one dynamic member link attempts to join the same dynamic bundle, the system fails the new member session.
Figure 1 shows how the different types of traffic traverse through a network where the MX Series is acting as the LNS to terminate MLPPP bundles.
Topology
The following three domains are shown passing traffic through the LNS network:
PPP domain—Contains data and voice traffic
MLPPP domain—Contains data traffic only
L2TP domain—Contains all types of traffic
Configuration
To configure dynamic LNS MLPPP subscribers, perform these tasks:
- CLI Quick Configuration
- Configuring a Tunnel Group with a Pool of Service Interfaces and L2TP Access Profile Attributes
- Configuring a Dynamic Profile for Dynamic LNS Member Link IFL Without Mixed Mode Support
- Configuring a Dynamic Profile for Dynamic LNS Member Link IFL With Mixed Mode Support
- Configuring a Dynamic Profile for the Dynamic Bundle IFL
- Results
CLI Quick Configuration
To quickly configure this example, copy the following commands, paste them into a text file, remove any line breaks, change any details necessary to match your network configuration, and then copy and paste the commands into the CLI at the [edit]
hierarchy level.
[edit] set access profile ce-l2tp-profile2 client ce-lac-3 user-group-profile ce-lac-1-gp set access profile ce-l2tp-profile2 client ce-lac-3 l2tp multilink set access profile ce-l2tp-profile2 client ce-lac-3 l2tp maximum-sessions-per-tunnel 2000 set access profile ce-l2tp-profile2 client ce-lac-3 l2tp shared-secret “password” set access profile ce-l2tp-profile2 client ce-lac-3 l2tp dynamic-profile ml-lns-member-prof set services l2tp tunnel-group dyn-l2tp-tunnel-group l2tp-access-profile ce-l2tp-profile2 set services l2tp tunnel-group dyn-l2tp-tunnel-group aaa-access-profile ce-authenticator set services l2tp tunnel-group dyn-l2tp-tunnel-group local-gateway address 10.1.1.1 set services l2tp tunnel-group dyn-l2tp-tunnel-group service-device-pool pool1 set services l2tp tunnel-group dyn-l2tp-tunnel-group dynamic-profile ml-lns-member-prof [edit] set dynamic-profiles mlp-lns-member-profile set dynamic-profiles mlp-lns-member-profile interfaces “$junos-interface-ifd-name” unit “$junos-interface-unit” set dynamic-profiles mlp-lns-member-profile interfaces “$junos-interface-ifd-name” unit “$junos-interface-unit” dial-options l2tp-interface-id dont care dedicated set dynamic-profiles mlp-lns-member-profile interfaces “$junos-interface-ifd-name” unit “$junos-interface-unit” family mlppp bundle “$junos-bundle-interface-name” set dynamic-profiles mlp-lns-member-profile interfaces “$junos-interface-ifd-name” unit “$junos-interface-unit” family mlppp service-device-pool pool1 set dynamic-profiles mlp-lns-member-profile interfaces “$junos-interface-ifd-name” unit “$junos-interface-unit” family mlppp dynamic-profile ml-bundle-prof set dynamic-profiles mlp-lns-member-profile interfaces “$junos-interface-ifd-name” unit “$junos-interface-unit” family inet [edit] set dynamic-profiles ml-bundle-prof set dynamic-profiles ml-bundle-prof routing-instances "$junos-routing-instance" interface "$junos-interface-name" set dynamic-profiles ml-bundle-prof routing-instances "$junos-routing-instance" interface "$junos-interface-name" routing-options access route $junos-framed-route-ip-address-prefix set dynamic-profiles ml-bundle-prof routing-instances "$junos-routing-instance" interface "$junos-interface-name" routing-options access route $junos-framed-route-ip-address-prefix next-hop $junos-framed-route-nexthop set dynamic-profiles ml-bundle-prof routing-instances "$junos-routing-instance" interface "$junos-interface-name" routing-options access route $junos-framed-route-ip-address-prefix metric $junos-framed-route-cost set dynamic-profiles ml-bundle-prof routing-instances "$junos-routing-instance" interface "$junos-interface-name" routing-options access route $junos-framed-route-ip-address-prefix preference $junos-framed-route-distance set dynamic-profiles ml-bundle-prof routing-instances "$junos-routing-instance" interface "$junos-interface-name" access-internal route $junos-subscriber-ip-address set dynamic-profiles ml-bundle-prof routing-instances "$junos-routing-instance" interface "$junos-interface-name" access-internal route $junos-subscriber-ip-address qualified-next-hop $junos-interface-name set dynamic-profiles ml-bundle-prof interfaces “$junos-interface-ifd-name” unit “$junos-interface-unit” set dynamic-profiles ml-bundle-prof interfaces “$junos-interface-ifd-name” unit “$junos-interface-unit” encapsulation multilink-ppp set dynamic-profiles ml-bundle-prof interfaces “$junos-interface-ifd-name” unit “$junos-interface-unit” mrru 1500 set dynamic-profiles ml-bundle-prof interfaces “$junos-interface-ifd-name” unit “$junos-interface-unit” short-sequence set dynamic-profiles ml-bundle-prof interfaces “$junos-interface-ifd-name” unit “$junos-interface-unit” fragment-threshold 320 set dynamic-profiles ml-bundle-prof interfaces “$junos-interface-ifd-name” unit “$junos-interface-unit” family inet set class-of-service traffic-control-profiles tcp2 set dynamic-profiles ml-bundle-prof class-of-service traffic-control-profiles tcp2 scheduler-map "$junos-cos-scheduler-map” set dynamic-profiles ml-bundle-prof class-of-service traffic-control-profiles tcp2 shaping-rate "$junos-cos-shaping-rate" set dynamic-profiles ml-bundle-prof class-of-service traffic-control-profiles tcp2 guaranteed-rate "$junos-cos-guaranteed-rate" set dynamic-profiles ml-bundle-prof class-of-service traffic-control-profiles tcp2 delay-buffer-rate “$junos-cos-delay-buffer-rate” set dynamic-profiles ml-bundle-prof class-of-service interfaces “$junos-interface-ifd-name” unit "$junos-interface-unit" set dynamic-profiles ml-bundle-prof class-of-service interfaces “$junos-interface-ifd-name” unit "$junos-interface-unit" output-traffic-control-profile tcp2 set dynamic-profiles ml-bundle-prof class-of-service interfaces “$junos-interface-ifd-name” unit "$junos-interface-unit" fragmentation-map fragmap-2
Configuring a Tunnel Group with a Pool of Service Interfaces and L2TP Access Profile Attributes
Step-by-Step Procedure
The following example requires that you navigate various levels in the configuration hierarchy.
To configure a tunnel group with a pool of service interfaces and L2TP access profile attributes for dynamic LNS MLPPP subscribers:
Create the access profile.
[edit access]
user@host#set profile ce-l2tp-profile2
Configure an L2TP (LAC) access client.
[edit access profile ce-l2tp-profile2]
user@host#set client ce-lac-3
Associate a group profile containing PPP attributes to apply for the PPP sessions being tunneled from this LAC client.
[edit access profile ce-l2tp-profile2 client ce-lac-3]
user@host#set user-group-profile ce-lac-1-gp
Configure the following L2TP access profile attributes for this example:
L2TP client is multilink (MLPPP)-capable for subscribers. The
multilink
statement in the L2TP access client profile determines whether MLPPP is supported for subscribers coming in from the LAC peer.Maximum number of sessions allowed in a tunnel from the client (LAC).
Tunnel password used to authenticate the client (LAC).
Dynamic profile name in the L2TP access client profile for dynamic LNS MLPPP subscribers.
Note:If the
dynamic-profile name
is defined in the L2TP access client profile, it is used to create the dynamic LNS MLPPP member link; otherwise, thedynamic-profile name
defined in the tunnel group is used. If neither profile contains thefamily mlppp
statement, then the incoming LNS session fails.
[edit access profile ce-l2tp-profile2 client ce-lac-3]
user@host#
user@host#set l2tp multilink
user@host#set l2tp maximum-sessions-per-tunnel 2000
user@host#set l2tp shared-secret password
set dynamic-profile ml-lns-member-prof
Create the tunnel group.
[edit services l2tp]
user@host#set tunnel-group dyn-l2tp-tunnel-group
Set the tunnel access profile equal to the setting you defined for the access profile.
[edit services l2tp tunnel-group dyn-l2tp-tunnel-group]
user@host#set l2tp-access-profile ce-l2tp-profile2
Set the L2TP AAA access profile.
Note:You can specify the L2TP AAA access profile in either the
[edit access]
or[edit services]
hierarchy levels, using the LNS access client profile ortunnel-group
statements, respectively. An L2TP AAA access profile defined using the[edit access]
hierarchy level overrides the L2TP AAA access profile defined for thetunnel-group
using the[edit services]
hierarchy level.[edit services l2tp tunnel-group dyn-l2tp-tunnel-group]
user@host#set aaa-access-profile ce-authenticator
Set the local gateway address for the L2TP tunnel.
[edit services l2tp tunnel-group dyn-l2tp-tunnel-group]
user@host#set local-gateway address 10.1.1.1
Specify the pool of service interfaces for the dynamic LNS MLPPP subscribers.
[edit services l2tp tunnel-group dyn-l2tp-tunnel-group]
user@host#set service-device-pool pool1
Specify the dynamic profile used to create the dynamic LNS MLPPP member link.
[edit services l2tp tunnel-group dyn-l2tp-tunnel-group]
user@host#set dynamic-profile ml-lns-member-prof
If you are done configuring the device, commit the configuration.
[edit] user@host# commit
Configuring a Dynamic Profile for Dynamic LNS Member Link IFL Without Mixed Mode Support
Step-by-Step Procedure
The following example requires that you navigate various levels in the configuration hierarchy.
You can configure the dynamic-profile name
used to create the dynamic LNS member link IFL in either the L2TP client access profile or in the tunnel-group. See Configuring a Tunnel Group with a Pool of Service Interfaces and L2TP Access Profile Attributes.
The following example shows dynamic-profile
configuration for LNS MLPPP and PPP subscribers. The family mlppp
statement contains the dynamic-profile name
, and either the service-interface
or the service-device-pool
, used to create the dynamic bundle IFL. If you configure a service-device-pool
, an inline services (si
) interface is selected from the pool to create the dynamic bundle IFL using a round-robin method.
You must also configure the family inet
statement in the si
member link dynamic profile interface for tunneled subscribers. The family inet
statement enables the L2TP long route to be installed and supported for the lookup engine to steer control packets to the Routing Engine.
Optionally, you can configure the dynamic profile to support mixed mode to enable PPP subscribers to successfully log in using the dynamic profile. See Configuring a Dynamic Profile for Dynamic LNS Member Link IFL With Mixed Mode Support for the additional configuration commands required.
Specify the dynamic profile that you used to create the dynamic LNS MLPPP member link previously in Configuring a Tunnel Group with a Pool of Service Interfaces and L2TP Access Profile Attributes.
[edit dynamic-profiles]
user@host#set ml-lns-member-prof
Configure the interface for the dynamic profile by setting the predefined dynamic interface variable $junos-interface-ifd-name, and the logical interface unit by setting the predefined unit number variable $junos-interface-unit. The interface and unit number variables are dynamically replaced with the interface and unit number that the subscriber accesses when connecting to the MX Series.
Note:The interface setting for a dynamic profile for PPPoE sessions can use either of the following code formats:
set interfaces pp0
or
set interfaces “$junos-interface-ifd-name”
This example uses
set interfaces “$junos-interface-ifd-name”
.[edit dynamic-profiles ml-lns-member-prof]
user@host#set interfaces “$junos-interface-ifd-name” unit “$junos-interface-unit”
For the $junos-interface-ifd-name interface, set the L2TP interface dial options to specify that the logical interface can host one session at a time (dedicated).
[edit dynamic-profiles ml-lns-member-prof interfaces “$junos-interface-ifd-name” unit “$junos-interface-unit”]
user@host#set dial-options l2tp-interface-id dont care dedicated
Enable MLPPP support for LNS MLPPP subscribers and configure the dynamic bundle interface (IFL) by setting the predefined dynamic bundle interface variable $junos-bundle-interface-name.
Note:The
family mlppp
statement determines whether MLPPP is supported for subscribers coming in from the underlying interface.[edit dynamic-profiles ml-lns-member-prof interfaces “$junos-interface-ifd-name” unit “$junos-interface-unit”]
user@host#set family mlppp bundle “$junos-bundle-interface-name”
Specify the pool of service interfaces for the dynamic LNS MLPPP subscribers.
[edit dynamic-profiles ml-lns-member-prof interfaces “$junos-interface-ifd-name” unit “$junos-interface-unit” family mlppp]
user@host#set service-device-pool pool1
Specify the dynamic profile name for the bundle.
[edit dynamic-profiles ml-lns-member-prof interfaces “$junos-interface-ifd-name” unit “$junos-interface-unit” family mlppp]
user@host#set dynamic-profile ml-bundle-prof
Enable support for LNS subscribers and the LNS long route.
[edit dynamic-profiles ml-lns-member-prof interfaces “$junos-interface-ifd-name” unit “$junos-interface-unit”]
user@host#set family inet
If you are done configuring the device, commit the configuration.
[edit] user@host# commit
Configuring a Dynamic Profile for Dynamic LNS Member Link IFL With Mixed Mode Support
Step-by-Step Procedure
The following example requires that you navigate various levels in the configuration hierarchy.
Optionally, you can configure the dynamic profile to support mixed mode to enable PPP subscribers to successfully log in using the dynamic profile.
The following example shows the additional configurations required to support mixed mode for dynamic profiles.
The following configuration commands are not included in the CLI Quick Configuration section.
Specify the dynamic profile that you used to create the dynamic LNS MLPPP member link previously in Configuring a Tunnel Group with a Pool of Service Interfaces and L2TP Access Profile Attributes.
[edit dynamic-profiles]
user@host#set ml-lns-member-prof
When the customer premises equipment (CPE) is for a dynamic virtual routing and forwarding (VRF) PPP subscriber, you must configure the routing instance and its interface.
[edit dynamic-profiles ml-lns-member-prof]
user@host#set routing-instances "$junos-routing-instance" interface "$junos-interface-name"
Configure the access route for the routing options.
[edit dynamic-profiles ml-lns-member-prof routing-instances "$junos-routing-instance" interface "$junos-interface-name"]
user@host#set routing-options access route $junos-framed-route-ip-address-prefix
Configure the next-hop, metric, and preference for the router.
[edit dynamic-profiles ml-lns-member-prof routing-instances "$junos-routing-instance" interface "$junos-interface-name" routing-options access route $junos-framed-route-ip-address-prefix]
user@host#
user@host#set next-hop $junos-framed-route-nexthop
user@host#set metric $junos-framed-route-cost
set preference $junos-framed-route-distance
Configure the internal access route for the routing options.
[edit dynamic-profiles ml-lns-member-prof routing-instances "$junos-routing-instance" interface "$junos-interface-name"]
user@host#set routing-options access-internal route $junos-subscriber-ip-address
Configure the qualified next-hop for the internal route..
[edit dynamic-profiles ml-lns-member-prof routing-instances "$junos-routing-instance" interface "$junos-interface-name" routing-options access-internal route $junos-subscriber-ip-address ]
user@host#set qualified-next-hop $junos-interface-name
Follow the procedure described in Configuring a Dynamic Profile for Dynamic LNS Member Link IFL Without Mixed Mode Support to configure the basic settings for the dynamic profile.
Note:To enable mixed mode support, when the CPE is a PPP subscriber, you must also add an unnumbered address, and input and output filters to the
family inet
statement.[edit dynamic-profiles ml-lns-member-prof interfaces “$junos-interface-ifd-name” unit “$junos-interface-unit”]
user@host#
user@host#set family inet unnumbered-address $junos-loopback-interface
set family inet filter input "$junos-input-filter" output "$junos-output-filter”
When the CPE is a PPP subscriber, you must also configure class of service and define the traffic control profile.
[edit dynamic-profiles ml-lns-member-prof class-of-service]
user@host#set traffic-control-profiles tc-profile
For the traffic-control profile, define the following settings: scheduler map, shaping rate, overhead accounting, guaranteed rate, and delay buffer rate.
[edit dynamic-profiles ml-lns-member-prof class-of-service traffic-control-profiles tc-profile]
user@host#
user@host#set scheduler-map "$junos-cos-scheduler-map"
user@host#set shaping-rate "$junos-cos-shaping-rate"
user@host#set overhead-accounting "$junos-cos-shaping-mode" bytes "$junos-cos-byte-adjust"
user@host#set guaranteed-rate "$junos-cos-guaranteed-rate"
set delay-buffer-rate "$junos-cos-delay-buffer-rate"
Configure the interface for the dynamic profile by setting the predefined dynamic interface variable $junos-interface-ifd-name, and the logical interface unit by setting the predefined unit number variable $junos-interface-unit.
[edit dynamic-profiles ml-lns-member-prof class-of-service]
user@host#set interfaces “$junos-interface-ifd-name” unit “$junos-interface-unit”
For the dynamic profile interface, define the following settings: output traffic control profile, classifiers, and rewrite rules.
[edit dynamic-profiles ml-lns-member-prof class-of-service interfaces “$junos-interface-ifd-name” unit “$junos-interface-unit”]
user@host#
user@host#set output-traffic-control-profile tc-profile
user@host#set classifiers dscp GEN-CLASSIFIER-IN
set rewrite-rules dscp GEN-RW-OUT-DSCP
If you are done configuring the device, commit the configuration.
[edit] user@host# commit
Configuring a Dynamic Profile for the Dynamic Bundle IFL
Step-by-Step Procedure
The following example requires that you navigate various levels in the configuration hierarchy.
To configure the dynamic profile for the dynamic bundle IFL, you specify the encapsulation multilink-ppp
statement within the dynamic profile. The dynamic profile
for the dynamic bundle IFL is referenced from the dynamic profile
for dynamic PPPoE and LNS member link IFLs.
You must configure the fragmentation-maps
statement statically using class-of-service and assign them in the bundle dynamic profile. You can also set these optional MLPPP parameters: MRRU, short sequence, and fragment-threshold. The following example shows how to configure the dynamic profile for the dynamic bundle IFL.
Specify the dynamic profile name for the bundle.
[edit dynamic-profiles}
user@host#set ml-bundle-prof
Although MLPPP member links process authentication and routing-instance assignments, if a non-default routing-instance is assigned, you must configure the bundle IFL under the assigned routing-instance. As a result, you must also configure routing-instances in the bundle dynamic-profile.
[edit dynamic-profiles ml-bundle-prof]
user@host#set routing-instances "$junos-routing-instance" interface "$junos-interface-name"
Configure the access route for the routing options.
[edit dynamic-profiles ml-bundle-prof routing-instances "$junos-routing-instance" interface "$junos-interface-name"]
user@host#set routing-options access route $junos-framed-route-ip-address-prefix
Configure the next-hop, metric, and preference for the router.
[edit dynamic-profiles ml-bundle-prof routing-instances "$junos-routing-instance" interface "$junos-interface-name" routing-options access route $junos-framed-route-ip-address-prefix]
user@host#
user@host#set next-hop $junos-framed-route-nexthop
user@host#set metric $junos-framed-route-cost
set preference $junos-framed-route-distance
Configure the internal access route for the routing options.
[edit dynamic-profiles ml-bundle-prof routing-instances "$junos-routing-instance" interface "$junos-interface-name"]
user@host#set routing-options access-internal route $junos-subscriber-ip-address
Configure the qualified next-hop for the internal route.
[edit dynamic-profiles ml-bundle-prof routing-instances "$junos-routing-instance" interface "$junos-interface-name" routing-options access-internal route $junos-subscriber-ip-address]
user@host#set qualified-next-hop $junos-interface-name
Configure the interface for the dynamic profile by setting the predefined dynamic interface variable $junos-interface-ifd-name, and the logical interface unit by setting the predefined unit number variable $junos-interface-unit. The interface and unit number variables are dynamically replaced with the interface and unit number that the subscriber accesses when connecting to the MX Series.
[edit dynamic-profiles ml-bundle-prof]
user@host#set interfaces “$junos-interface-ifd-name” unit “$junos-interface-unit”
Configure the
encapsulation multilink-ppp
statement to enable MLPPP bundling for the dynamic profile.[edit dynamic-profiles ml-bundle-prof interfaces “$junos-interface-ifd-name” unit “$junos-interface-unit”]
user@host#set encapsulation multilink-ppp
Configure the following MLPPP options for this example:
mrru
—Specifies the maximum received reconstructed unit value ranging from 1500 through 4500 bytes.fragment-threshold
—Applies to all packets and forwarding classes, ranging from 128 through 16,320 bytes.short-sequence
—Determines the header format for the MLPPP. Default islong-sequence
.
[edit dynamic-profiles ml-bundle-prof interfaces “$junos-interface-ifd-name” unit “$junos-interface-unit”]
user@host#
user@host#set mrru 1500
user@host#set fragment-threshold 320
set short-sequence
Enable support for MLPP subscribers.
[edit dynamic-profiles ml-bundle-prof interfaces “$junos-interface-ifd-name” unit “$junos-interface-unit”]
user@host#set family inet
To enable
fragmentation-maps
support, you must configure class-of-service and define the traffic control profile.[edit dynamic-profiles ml-bundle-prof class-of-service]
user@host#set traffic-control-profiles tcp2
For the traffic-control profile, define the following settings: scheduler map, shaping rate, guaranteed rate, and delay buffer rate.
[edit dynamic-profiles ml-bundle-prof class-of-service traffic-control-profiles tcp2]
user@host#
user@host#set scheduler-map "$junos-cos-scheduler-map"
user@host#set shaping-rate "$junos-cos-shaping-rate"
user@host#set guaranteed-rate "$junos-cos-guaranteed-rate"
set delay-buffer-rate "$junos-cos-delay-buffer-rate"
Configure the underlying interface for the dynamic profile by setting the predefined dynamic interface variable $junos-interface-ifd-name, and the logical interface unit by setting the predefined unit number variable $junos-interface-unit. The interface and unit number variables are dynamically replaced with the interface and unit number that the subscriber accesses when connecting to the MX Series.
[edit dynamic-profiles ml-bundle-prof class-of-service]
user@host#set interfaces “$junos-interface-ifd-name” unit "$junos-interface-unit"
For the dynamic profile interface, define the output traffic control profile.
[edit dynamic-profiles ml-bundle-prof class-of-service interfaces “$junos-interface-ifd-name” unit "$junos-interface-unit"]
user@host#set output-traffic-control-profile tcp2
Define the fragmentation-map required for dynamic profile bundles and used to enable link fragmentation and interleaving (LFI).
[edit dynamic-profiles ml-bundle-prof class-of-service interfaces “$junos-interface-ifd-name” unit "$junos-interface-unit"]
user@host#set fragmentation-map fragmap-2
If you are done configuring the device, commit the configuration.
[edit] user@host# commit
Results
From configuration mode, confirm your configuration by entering the show access
, show services
, and show dynamic-profiles
commands. If the output does not display the intended configuration, repeat the instructions in this example to correct the configuration.
user@host# show access profile ce-l2tp-profile2 access profile { ce-l2tp-profile2 { client ce-lac-3 { user-group-profile ce-lac-1-gp; l2tp { multilink; interface-id not-used; maximum-sessions-per-tunnel 2000; shared-secret "$9$2wgUHQF/9pB"; dynamic-profile ml-lns-member-prof; } } } }
user@host# show services l2tp tunnel-group dyn-l2tp-tunnel-group services { l2tp { tunnel-group dyn-l2tp-tunnel-group { l2tp-access-profile ce-l2tp-profile2; aaa-access-profile ce-authenticator; local-gateway { address 10.1.1.1; } service-device-pool pool1; dynamic-profile ml-lns-member-prof; } } }
Dynamic profile for dynamic LNS member link IFL without mixed mode:
user@host# show dynamic-profiles mlp-lns-member-profile dynamic-profile mlp-lns-member-profile { interface $junos-interface-ifd-name { unit $junos-interface-unit” { dial-options { l2tp-interface-id dont-care; dedicated; } family mlppp { bundle $junos-bundle-interface-name ; service-device-pool pool1; dynamic-profile mlp-bundle-profile; } family inet { } } } }
Dynamic profile for dynamic LNS member link IFL with mixed mode:
user@host# show dynamic-profiles mlp-lns-member-profile dynamic-profile ml-lns-member-prof { routing-instances { "$junos-routing-instance" { interface "$junos-interface-name"; routing-options { access { route $junos-framed-route-ip-address-prefix { next-hop $junos-framed-route-nexthop; metric $junos-framed-route-cost; preference $junos-framed-route-distance; } } access-internal { route $junos-subscriber-ip-address { qualified-next-hop $junos-interface-name; } } } } } } interfaces "$junos-interface-ifd-name" { unit "$junos-interface-unit" { dial-options { l2tp-interface-id l2tp-encapsulation; dedicated; } family mlppp { bundle $junos-bundle-interface-name; service-device-pool pool2; dynamic-profile ml-bundle-prof; } family inet { unnumbered-address $junos-loopback-interface; filter { input "$junos-input-filter"; output "$junos-output-filter"; } } } class-of-service { traffic-control-profiles { tc-profile { scheduler-map "$junos-cos-scheduler-map"; shaping-rate "$junos-cos-shaping-rate"; overhead-accounting "$junos-cos-shaping-mode" bytes "$junos-cos-byte-adjust"; guaranteed-rate "$junos-cos-guaranteed-rate"; delay-buffer-rate "$junos-cos-delay-buffer-rate"; } } interfaces { "$junos-interface-ifd-name" { unit "$junos-interface-unit" { output-traffic-control-profile tc-profile; classifiers { dscp GEN-CLASSIFIER-IN; } rewrite-rules { dscp GEN-RW-OUT-DSCP; } } } } } }
user@host# show dynamic-profiles ml-bundle-prof dynamic-profile ml-bundle-prof { routing-instances { "$junos-routing-instance" { interface "$junos-interface-name"; routing-options { access { route $junos-framed-route-ip-address-prefix { next-hop $junos-framed-route-nexthop; metric $junos-framed-route-cost; preference $junos-framed-route-distance; } } access-internal { route $junos-subscriber-ip-address { qualified-next-hop $junos-interface-name; } } } } } } interfaces "$junos-interface-ifd-name" { unit "$junos-interface-unit" { encapsulation multilink_ppp; mrru 1500; short-sequence; fragment-threshold 320; family inet } } } class-of-service { traffic-control-profiles { tcp2 { scheduler-map "$junos-cos-scheduler-map"; shaping-rate "$junos-cos-shaping-rate"; guaranteed-rate "$junos-cos-guaranteed-rate"; delay-buffer-rate "$junos-cos-delay-buffer-rate"; } } interfaces { "$junos-interface-ifd-name" { unit "$junos-interface-unit" { output-traffic-control-profile tcp2; fragmentation-map fragmap-2 } } } }
Verification
Confirm that the configuration is working properly.
- Verifying the Subscriber Information
- Verifying Mixed Mode Support with a Dynamic MLPPP-Capable Subscriber
- Verifying Tunneled MLPPP Over LAC Interfaces
Verifying the Subscriber Information
Purpose
Verify that the subscriber information for dynamic MLPPP over LNS is correct.
Action
user@host> show subscribers extensive
Type: L2TP
User Name: lns-client
IP Address: 198.51.100.20
IP Netmask: 255.255.255.0
Logical System: default
Routing Instance: default
Interface: si-1/0/0.1073741824
Interface type: Dynamic
Dynamic Profile Name: ml-lns-member-prof
Dynamic Profile Version: 1
State: Active
Radius Accounting ID: 20
Session ID: 20
Bundle Session ID: 21
Login Time: 2011-04-11 10:55:13 PDT
Type: MLPPP
User Name: lns-client
IP Address: 198.51.100.20
IP Netmask: 255.255.255.0
Logical System: default
Routing Instance: default
Interface: si-3/0/0.1073741825
Interface type: Dynamic
Dynamic Profile Name: ml-bundle-prof
Dynamic Profile Version: 1
State: Active
Radius Accounting ID: 21
Session ID: 21
Underlying Session ID: 20
Login Time: 2011-04-11 07:55:59 PDT
Meaning
Subscriber information for interface si-1/0/0.1073741824
has been configured for MLPPP with interface type of dynamic.
Verifying Mixed Mode Support with a Dynamic MLPPP-Capable Subscriber
Purpose
Verify that mixed mode interfaces negotiated correctly for the single link PPP using a dynamic MLPPP-capable subscriber.
Action
user@host> show interfaces extensive pp0.1073741832
Logical interface pp0.1073741832 (Index 489) (SNMP ifIndex 712)
(Generation 299)
Flags: Up Point-To-Point SNMP-Traps 0x4000 Encapsulation: PPPoE
PPPoE:
State: SessionUp, Session ID: 40,
Session AC name: haverhill1, Remote MAC address: 00:00:5e:00:53:72,
Underlying interface: ge-1/0/0.44 (Index 376)
Traffic statistics:
Input bytes : 1213
Output bytes : 1672
Input packets: 41
Output packets: 49
IPv6 transit statistics:
Input bytes : 0
Output bytes : 0
Input packets: 0
Output packets: 0
Local statistics:
Input bytes : 159
Output bytes : 1424
Input packets: 10
Output packets: 18
Transit statistics:
Input bytes : 1054 0 bps
Output bytes : 248 0 bps
Input packets: 31 0 pps
Output packets: 31 0 pps
IPv6 transit statistics:
Input bytes : 0
Output bytes : 0
Input packets: 0
Output packets: 0
Keepalive settings: Interval 45 seconds, Up-count 1, Down-count 3
LCP state: Opened
NCP state: inet: Opened, inet6: Opened, iso: Not-configured, mpls:
Not-configured
CHAP state: Closed
PAP state: Success
Protocol inet, MTU: 65531, Generation: 384, Route table: 0
Flags: Sendbcast-pkt-to-re
Addresses, Flags: Is-Primary
Destination: Unspecified, Local: 10.0.0.1, Broadcast: Unspecified,
Generation: 297
Protocol inet6, MTU: 65531, Generation: 385, Route table: 0
Addresses, Flags: Is-Primary
Destination: Unspecified, Local: 2030::1
Generation: 298
Destination: Unspecified, Local: fe80::2a0:a50f:fc64:6ef2
Generation: 299
Meaning
When a dynamic MLPPP-capable subscriber negotiates a single link PPP, the results are the same as a non-MLPPP subscriber; no bundle IFL or SDB session is created.
Verifying Tunneled MLPPP Over LAC Interfaces
Purpose
Verify that the MLPPP over LAC member link IFL is correct.
Action
user@host> show interfaces extensive pp0.1073756921
Logical interface pp0.1073756921 (Index 482) (SNMP ifIndex 706)
(Generation 15542)
Flags: Up Point-To-Point SNMP-Traps 0x4000 Encapsulation: PPPoE
PPPoE:
State: SessionUp, Session ID: 37,
Session AC name: haverhill, Remote MAC address: 00:00:5e:00:53:82,
Underlying interface: ge-1/0/0.2040 (Index 457)
Traffic statistics:
Input bytes : 273
Output bytes : 270
Input packets: 13
Output packets: 10
Local statistics:
Input bytes : 138
Output bytes : 155
Input packets: 6
Output packets: 3
Transit statistics:
Input bytes : 135 0 bps
Output bytes : 115 0 bps
Input packets: 7 0 pps
Output packets: 7 0 pps
Keepalive settings: Interval 45 seconds, Up-count 1, Down-count 3
LCP state: Opened
NCP state: inet: Not-configured, inet6: Not-configured, iso: Not-configured, mpls:
Not-configured
CHAP state: Closed
PAP state: Closed
Protocol inet, MTU: 1492, Generation: 15534, Route table: 0
Flags: Sendbcast-pkt-to-re
Protocol mlppp, Multilink bundle: si-1/0/0.1073756922
Service device pool: sipool-1, Dynamic profile: ml-bundle-prof
MTU: 1526, Generation: 15533, Route table: 0
Meaning
When a PPPoE MLPPP session is tunneled, the bundle and member link binding remains. Although the bundle IFL does not participate in the control and forwarding path, it remains in the user-interface.