- play_arrow Configuring Dynamic VLANs for Subscriber Access Networks
- play_arrow Dynamic VLAN Overview
- Subscriber Management VLAN Architecture Overview
- Dynamic 802.1Q VLAN Overview
- Static Subscriber Interfaces and VLAN Overview
- Pseudowire Termination: Explicit Notifications for Pseudowire Down Status
- Configuring an Access Pseudowire That Terminates into VRF on the Service Node
- Configuring an Access Pseudowire That Terminates into a VPLS Routing Instance
- play_arrow Configuring Dynamic Profiles and Interfaces Used to Create Dynamic VLANs
- Configuring a Dynamic Profile Used to Create Single-Tag VLANs
- Configuring an Interface to Use the Dynamic Profile Configured to Create Single-Tag VLANs
- Configuring a Dynamic Profile Used to Create Stacked VLANs
- Configuring an Interface to Use the Dynamic Profile Configured to Create Stacked VLANs
- Configuring Interfaces to Support Both Single and Stacked VLANs
- Overriding the Dynamic Profile Used for an Individual VLAN
- Configuring a VLAN Dynamic Profile That Associates VLANs with Separate Routing Instances
- Automatically Removing VLANs with No Subscribers
- Verifying and Managing Dynamic VLAN Configuration
- play_arrow Configuring Subscriber Authentication for Dynamic VLANs
- Configuring an Authentication Password for VLAN or Stacked VLAN Ranges
- Configuring Dynamic Authentication for VLAN Interfaces
- Subscriber Packet Type Authentication Triggers for Dynamic VLANs
- Configuring Subscriber Packet Types to Trigger VLAN Authentication
- Configuring VLAN Interface Username Information for AAA Authentication
- Using DHCP Option 82 Suboptions in Authentication Usernames for Autosense VLANs
- Using DHCP Option 18 and Option 37 in Authentication Usernames for DHCPv6 Autosense VLANs
- play_arrow Configuring VLANs for Households or Individual Subscribers Using ACI-Based Dynamic VLANs
- Agent Circuit Identifier-Based Dynamic VLANs Overview
- Configuring Dynamic VLANs Based on Agent Circuit Identifier Information
- Defining ACI Interface Sets
- Configuring Dynamic Underlying VLAN Interfaces to Use Agent Circuit Identifier Information
- Configuring Static Underlying VLAN Interfaces to Use Agent Circuit Identifier Information
- Configuring Dynamic VLAN Subscriber Interfaces Based on Agent Circuit Identifier Information
- Verifying and Managing Agent Circuit Identifier-Based Dynamic VLAN Configuration
- Clearing Agent Circuit Identifier Interface Sets
- play_arrow Configuring VLANs for Households or Individual Subscribers Using Access-Line-Identifier Dynamic VLANs
- Access-Line-Identifier-Based Dynamic VLANs Overview
- Configuring Dynamic VLANs Based on Access-Line Identifiers
- Defining Access-Line-Identifier Interface Sets
- Configuring Dynamic Underlying VLAN Interfaces to Use Access-Line Identifiers
- Configuring Static Underlying VLAN Interfaces to Use Access-Line Identifiers
- Configuring Dynamic VLAN Subscriber Interfaces Based on Access-Line Identifiers
- Verifying and Managing Configurations for Dynamic VLANs Based on Access-Line Identifiers
- Clearing Access-Line-Identifier Interface Sets
- play_arrow High Availability for Service VLANs
-
- play_arrow Configuring DHCP Subscriber Interfaces
- play_arrow VLAN and Demux Subscriber Interfaces Overview
- play_arrow Configuring Sets of Demux Interfaces to Provide Services to a Group of Subscribers
- play_arrow Configuring Dynamic Demux Interfaces That are Created by DHCP
- play_arrow Configuring DHCP Subscriber Interfaces over Aggregated Ethernet
- Static and Dynamic VLAN Subscriber Interfaces over Aggregated Ethernet Overview
- Static or Dynamic Demux Subscriber Interfaces over Aggregated Ethernet Overview
- Configuring a Static or Dynamic VLAN Subscriber Interface over Aggregated Ethernet
- Configuring a Static or Dynamic IP Demux Subscriber Interface over Aggregated Ethernet
- Configuring a Static or Dynamic VLAN Demux Subscriber Interface over Aggregated Ethernet
- Example: Configuring a Static Subscriber Interface on a VLAN Interface over Aggregated Ethernet
- Example: Configuring a Static Subscriber Interface on an IP Demux Interface over Aggregated Ethernet
- Example: Configuring IPv4 Static VLAN Demux Interfaces over an Aggregated Ethernet Underlying Interface with DHCP Local Server
- Example: Configuring IPv4 Dynamic VLAN Demux Interfaces over an Aggregated Ethernet Underlying Interface with DHCP Local Server
- Example: Configuring IPv6 Dynamic VLAN Demux Interfaces over an Aggregated Ethernet Underlying Interface with DHCP Local Server
- Example: Configuring IPv4 Dynamic Stacked VLAN Demux Interfaces over an Aggregated Ethernet Underlying Interface with DHCP Local Server
- play_arrow Using Dynamic Profiles to Apply Services to DHCP Subscriber Interfaces
- play_arrow Configuring DHCP IP Demux and PPPoE Demux Interfaces Over the Same VLAN
- play_arrow Providing Security for DHCP Interfaces Using MAC Address Validation
- play_arrow RADIUS-Sourced Weights for Targeted Distribution
- play_arrow Verifying Configuration and Status of Dynamic Subscribers
-
- play_arrow Configuring PPPoE Subscriber Interfaces
- play_arrow Configuring Dynamic PPPoE Subscriber Interfaces
- Subscriber Interfaces and PPPoE Overview
- Dynamic PPPoE Subscriber Interfaces over Static Underlying Interfaces Overview
- Configuring Dynamic PPPoE Subscriber Interfaces
- Configuring a PPPoE Dynamic Profile
- Configuring an Underlying Interface for Dynamic PPPoE Subscriber Interfaces
- Configuring the PPPoE Family for an Underlying Interface
- Ignoring DSL Forum VSAs from Directly Connected Devices
- Example: Configuring a Dynamic PPPoE Subscriber Interface on a Static Gigabit Ethernet VLAN Interface
- play_arrow Configuring PPPoE Subscriber Interfaces over Aggregated Ethernet Examples
- Example: Configuring a Static PPPoE Subscriber Interface on a Static Underlying VLAN Demux Interface over Aggregated Ethernet
- Example: Configuring a Dynamic PPPoE Subscriber Interface on a Static Underlying VLAN Demux Interface over Aggregated Ethernet
- Example: Configuring a Dynamic PPPoE Subscriber Interface on a Dynamic Underlying VLAN Demux Interface over Aggregated Ethernet
- play_arrow Configuring PPPoE Session Limits
- play_arrow Configuring PPPoE Subscriber Session Lockout
- play_arrow Configuring MTU and MRU for PPP Subscribers
- play_arrow Configuring PPPoE Service Name Tables
- Understanding PPPoE Service Name Tables
- Evaluation Order for Matching Client Information in PPPoE Service Name Tables
- Benefits of Configuring PPPoE Service Name Tables
- Creating a Service Name Table
- Configuring PPPoE Service Name Tables
- Assigning a Service Name Table to a PPPoE Underlying Interface
- Configuring the Action Taken When the Client Request Includes an Empty Service Name Tag
- Configuring the Action Taken for the Any Service
- Assigning a Service to a Service Name Table and Configuring the Action Taken When the Client Request Includes a Non-zero Service Name Tag
- Assigning an ACI/ARI Pair to a Service Name and Configuring the Action Taken When the Client Request Includes ACI/ARI Information
- Assigning a Dynamic Profile and Routing Instance to a Service Name or ACI/ARI Pair for Dynamic PPPoE Interface Creation
- Limiting the Number of Active PPPoE Sessions Established with a Specified Service Name
- Reserving a Static PPPoE Interface for Exclusive Use by a PPPoE Client
- Example: Configuring a PPPoE Service Name Table
- Example: Configuring a PPPoE Service Name Table for Dynamic Subscriber Interface Creation
- Troubleshooting PPPoE Service Name Tables
- play_arrow Changing the Behavior of PPPoE Control Packets
- play_arrow Monitoring and Managing Dynamic PPPoE for Subscriber Access
-
- play_arrow Configuring ATM for Subscriber Access
- play_arrow Configuring ATM to Deliver Subscriber-Based Services
- play_arrow Configuring PPPoE Subscriber Interfaces Over ATM
- play_arrow Configuring ATM Virtual Path Shaping on ATM MICs with SFP
- play_arrow Configuring Static Subscriber Interfaces over ATM
- play_arrow Verifying and Managing ATM Configurations
-
- play_arrow Troubleshooting
- play_arrow Contacting Juniper Networks Technical Support
- play_arrow Knowledge Base
-
- play_arrow Configuration Statements and Operational Commands
ON THIS PAGE
Example: Configuring Dynamic PPPoE MLPPP Subscribers
This example shows how to configure dynamic Point-to-Point Protocol over Ethernet (PPPoE) 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 PPPoE MLPPP subscribers, be sure you have:
If configuring a tunnel group using an inline service (
si
) interface, enabled the inline service (si
) interface for PPPoE subscribers. See Enabling Inline Service Interfaces for PPPoE and LNS Subscribers.Configured the inline service (
si
) interface for PPPoE 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 PPPoE 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 PPPoE MLPPP subscribers, you configure the dynamic pp0
member link IFLs using dynamic profiles. The pp0
member link dynamic profile includes the family mlppp
statement containing the dynamic profile name 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 terminates PPPoE sessions.
Topology

The following two domains are shown terminating traffic at the MX Series:
PPP domain—Contains data and voice traffic
MLPPP domain—Contains data traffic only
Configuration
To configure dynamic PPPoE MLPPP subscribers, perform these tasks:
- CLI Quick Configuration
- Configuring a Dynamic Profile for Dynamic pp0 Member Link IFL Without Mixed Mode Support
- Configuring a Dynamic Profile for Dynamic pp0 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 interfaces ge-1/0/0 flexible-vlan-tagging set interfaces ge-1/0/0 unit 600 encapsulation ppp-over-ether vlan-id 600 set interfaces ge-1/0/0 unit 600 pppoe-underlying-options dynamic-profile ml-pp0-member-prof set dynamic-profiles ml-pp0-member-prof set dynamic-profiles ml-pp0-member-prof interfaces “$junos-interface-ifd-name” unit “$junos-interface-unit” set dynamic-profiles ml-pp0-member-prof interfaces “$junos-interface-ifd-name” unit “$junos-interface-unit” pppoe-options underlying-interface "$junos-underlying-interface" server set dynamic-profiles ml-pp0-member-prof interfaces “$junos-interface-ifd-name” unit “$junos-interface-unit” ppp-options pap chap lcp-restart-timer 5000 set dynamic-profiles ml-pp0-member-prof interfaces “$junos-interface-ifd-name” unit “$junos-interface-unit” family mlppp bundle “$junos-bundle-interface-name” set dynamic-profiles ml-pp0-member-profinterfaces “$junos-interface-ifd-name” unit “$junos-interface-unit” family mlppp service-interface si-5/1/0 set dynamic-profiles ml-pp0-member-prof interfaces “$junos-interface-ifd-name” unit “$junos-interface-unit” family mlppp dynamic-profile ml-bundle-prof set dynamic-profiles ml-pp0-member-prof 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 dynamic-profiles ml-bundle-prof 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 Dynamic Profile for Dynamic pp0 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 configure the dynamic pp0
member link IFLs by using dynamic profiles and including the family mlppp
statement. 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 tunneled pp0
member link dynamic profile. 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 pp0 Member Link IFL With Mixed Mode Support for the additional configuration commands required.
The following example shows how to configure dynamic pp0
member link IFLs over flexible VLAN to support PPPoE MLPPP subscribers.
Create the Gigabit Ethernet underlying interface for the dynamic profile,
ge-1/0/0
and enable flexible VLAN tagging.[edit interfaces]
user@host#set ge-1/0/0 flexible vlan-tagging
For the
ge-1/0/0
interface, configure PPP over Ethernet encapsulation for VLAN 600.[edit interfaces ge-1/0/0]
user@host#set unit 600 encapsulation ppp-over-ether vlan-id 600
Configure the PPPoE underlying interface and set its dynamic profile.
[edit interfaces ge-1/0/0 unit 600]
user@host#set pppoe-underlying-options dynamic-profile ml-pp0-member-prof
Specify the dynamic profile that you previously set as the PPPoE underlying interface dynamic profile.
[edit dynamic-profiles]
user@host#set ml-pp0-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-pp0-member-prof]
user@host#set interfaces “$junos-interface-ifd-name” unit “$junos-interface-unit”
For the $junos-interface-ifd-name interface, configure the underlying interface for the PPPoE options and PPPoE server mode for a dynamic PPPoE logical interface in a dynamic profile.
[edit dynamic-profiles ml-pp0-member-prof interfaces “$junos-interface-ifd-name” unit “$junos-interface-unit”]
user@host#set pppoe-options underlying-interface "$junos-underlying-interface" server
Configure PPP-specific interface properties in a dynamic profile:
pap
,chap
, and set thelcp-restart-timer
to 5000.[edit dynamic-profiles ml-pp0-member-prof interfaces “$junos-interface-ifd-name” unit “$junos-interface-unit”]
user@host#set ppp-options pap chap lcp-restart-timer 5000
Enable MLPPP support for dynamic PPPoE 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 subscriber interface.[edit dynamic-profiles ml-pp0-member-prof interfaces “$junos-interface-ifd-name” unit “$junos-interface-unit”]
user@host#set family mlppp bundle “$junos-bundle-interface-name”
Specify the service interface for the dynamic PPPoE MLPPP subscribers.
[edit dynamic-profiles ml-pp0-member-prof interfaces “$junos-interface-ifd-name” unit “$junos-interface-unit” family mlppp]
user@host#set service-interface si-5/1/0
Specify the dynamic profile name for the bundle.
[edit dynamic-profiles ml-pp0-member-prof interfaces “$junos-interface-ifd-name” unit “$junos-interface-unit” family mlppp]
user@host#set dynamic-profile ml-bundle-prof
Enable support for PPPoE tunneled subscribers and the LAC 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.
content_copy zoom_out_map[edit] user@host# commit
Configuring a Dynamic Profile for Dynamic pp0 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.
Configure dynamic
pp0
member link IFLs over flexible VLAN to support PPPoE MLPPP subscribers. See Configuring a Dynamic Profile for Dynamic pp0 Member Link IFL Without Mixed Mode Support, steps 1 through 4.Specify the dynamic profile that you used to create the dynamic PPPoE MLPPP member link.
[edit dynamic-profiles]
user@host#set ml-pp0-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-pp0-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-pp0-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-pp0-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-pp0-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-pp0-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
Configure the basic settings for the dynamic profile. See Configuring a Dynamic Profile for Dynamic pp0 Member Link IFL Without Mixed Mode Support, steps 5 through 11.
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-pp0-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-pp0-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-pp0-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-pp0-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-pp0-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.
content_copy zoom_out_map[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 underlying 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.
content_copy zoom_out_map[edit] user@host# commit
Results
From configuration mode, confirm your configuration by entering the show dynamic-profiles
command with the sub-hierarchy levels interfaces
. If the output does not display the intended configuration, repeat the instructions in this example to correct the configuration.
user@host# show interfaces ge-1/0/0 interfaces { ge-1/0/0 { flexible- vlan-tagging; unit 600 { encapsulation ppp-over-ether; vlan-id 600; pppoe-underlying-options { dynamic-profile ml-pp0-member-prot; } } } }
Dynamic profile for dynamic PPPoE member link IFL without mixed mode:
user@host# show dynamic-profiles mlp-pp0-member-profile dynamic-profile mlp-pp0-member-profile { interface $"$junos-interface-ifd-name" { unit "$junos-interface-unit" { pppoe-options { underlying-interface "$junos-underlying-interface"; server; } ppp-options { pap; chap; lcp-restart-timer 5000; } family mlppp { bundle $junos-bundle-interface-name; service-interface si-5/1/0; dynamic-profile ml-bundle-prof; } family inet } } }
Dynamic profile for dynamic PPPoE member link IFL with mixed mode:
user@host# show dynamic-profiles mlp-pp0-member-profile dynamic-profile ml-pp0-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" { pppoe-options { underlying-interface "$junos-underlying-interface"; server; } ppp-options { pap; chap; lcp-restart-timer 5000; } family mlppp { bundle $junos-bundle-interface-name; service-interface si-5/1/0; 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; } } } } } }
Verification
Confirm that the configuration is working properly.
- Verifying the Subscriber Information
- Verifying Mixed Mode Support with a Dynamic MLPPP-Capable Subscriber
- Verifying Tunneled PPPoE MLPPP Interfaces
Verifying the Subscriber Information
Purpose
Verify that the subscriber information for dynamic MLPPP over PPPoE is correct.
Action
user@host> show subscribers extensive
Type: PPPoE
User Name: dual-stack-v4v6-user@example.com
Logical System: default
Routing Instance: default
Interface: pp0.1073741824
Interface type: Dynamic
Underlying Interface: ge-1/1/0.3000
Dynamic Profile Name: DS-lac-mlppp-link-ipv6
MAC Address: 00:00:5E:00:53:02
State: Active
PPP State: Tunneled
Local IP Address: 198.51.100.21
Remote IP Address: 198.51.100.22
Radius Accounting ID: 5
Session ID: 5
Bundle Session ID: 6
VLAN Id: 3000
Login Time: 2013-03-28 15:42:30 PDT
Type: MLPPP
Logical System: default
Routing Instance: default
Interface: si-1/1/0.1073741825
Interface type: Dynamic
Underlying Interface: si-1/1/0.1073741825
Dynamic Profile Name: DS-mlppp-bundle-ipv6
State: Active
PPP State: Tunneled
Local IP Address: N/A
Remote IP Address: N/A
Radius Accounting ID: 6
Session ID: 6
Underlying Session ID: 5
Login Time: 2013-03-28 15:42:30 PDT
Meaning
When a PPPoE MLPPP session is tunneled, the bundle and member link binding is maintained. The PPP State
setting for both bundle and member link is set to Tunneled
. Although there is no NCP negotiation over the bundle, the bundle session remains active.
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: 198.51.100.11, 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 PPPoE MLPPP Interfaces
Purpose
Verify that the PPPoE MLPPP 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.