[Contents] [Prev] [Next] [Index] [Report an Error]

# Combined and Independent IPv4 and IPv6 Services in a Dual Stack Overview

Internet Protocol version 6 (IPv6) is designed to enhance IP addressing and maintain other IPv4 functions that work well. Organizations worldwide are developing new applications to take advantage of the many feature enhancements within IPv6 to help bring back end-to-end controlled communications across a transparent network infrastructure. To ensure optimum performance, such applications implement a dual-stack architecture in which IPv4 and IPv6 protocols share a common transport and framing layer.

A dual-stack implementation supports both IPv4 and IPv6 hosts to help provide a smooth transition to all parts of a enterprise network. With this flexible method of implementation, providers can carry IPv6 traffic over their existing core networks and customers can roll out IPv6 to more sites.

The PPP link between the customer premises equipment (CPE) and the provider edge (PE) device or E-series router equipment might require both IPv4 and IPv6 protocols for transmission of data. Such networks require that PE devices run a dual stack of IPv4 and IPv6 services. In this release, the Service Manager application on the E-series router supports authentication, service selection, and service activation and deactivation to subscribers for both IPv4 and IPv6 protocols in a dual stack configuration.

You can configure services in a dual stack for IPv4 and IPv6 either independently or as a single entity. Service Manager only tracks JUNOSe objects that are passed back in the env.setResult method when a service definition is executed. In an IPv6 environment, you must modify the service definition macro file to include the objects that the Service Manager requires to categorize a service as IPv4, IPv6, or a combination of both IPv4 and IPv6.

You can use the service-interface-type object in the service definition macro file to specify whether a service must be defined for IPv4 or IPv6. Configuring the service-interface-type object is not mandatory if a service is required only for IPv4 or L2TP subscribers. However, you must specify the service-interface-type object when a service is required for IPv6 subscribers or IPv4 and IPv6 subscribers in a dual stack. After you create a new service definition file with the service-interface-type object and install it on the router, the Service Manager determines whether a service must be tagged as IPv4, IPv6, or a combination of the two by parsing the objects passed using the macro environment command, env.setResult. The service-interface-type object can be configured with one of the following values:

- ipv4—Specifies that the service session profile must be applied to IPv4 interfaces only. This object is optional only when IPv4 or L2TP subscribers are in a network.
- l2tp—Specifies that the service session profile must be applied to L2TP interfaces. This object is optional only when IPv4 or L2TP subscribers are in a network.
- ipv4-ipv6—Specifies that the service session profile must be applied to both IPv4 and IPv6 interfaces in a dual stack. You must configure this object when IPv6 subscribers or IPv4/IPv6 subscribers in a dual stack are in a network.
- ipv6—Specifies that the service session profile must be applied to IPv6 interfaces only. You must configure this object when IPv6 subscribers or IPv4 and IPv6 subscribers in a dual stack are in a network.

When you create the service definition, include the following service attribute in the service definition if you want the service to be defined for IPv4 interfaces only. The profile identifier returned from the activate-profile object is applied to IPv4 interfaces.

`

<# env.setResult("service-interface-type", ipv4 ) #>

`

To configure a service macro to be used for IPv6 interfaces only, specify the following object in the macro definition file. The profile identifier returned from the activate-profile object is applied to IPv6 interfaces.

`

<# env.setResult("service-interface-type", ipv6 ) #>

`

To configure a service macro to be used for IPv4 and IPv6 interfaces in a dual stack, specify the following object in the macro definition file. The profile identifier returned from the activate-profile object is applied to both IPv4 and IPv6 interfaces.

`

<# env.setResult("service-interface-type", ipv4-ipv6 ) #>

`

[Contents] [Prev] [Next] [Index] [Report an Error]