IPv6 Address for the PPP Link

Document created by mathaker on Jul 24, 2014Last modified by linyan on Nov 4, 2015
Version 4Show Document
  • View in full screen mode

In this example we show how you may do a DHCP request to the Cisco Comm Module (CM) from the Application Module (AM) host over the PPP link.  This note does NOT apply to the IE SDK implementations, only to the NIC/PPP implementations of the Cisco CM. 

For illustration purposes we assume you are using Linux OS on the AM.  To do the reqest, you will use the open source "dibbler" linux client.

The DHCP address for your PPP link will have to be requested by your AM host.  You will need to request a DHCP address using "rapid commit", renewal message is not supported. The Comm Module will service this request and reply with a IPv6 lease AND will include DHCP option 17.  Option 17 contains a list of options, with each option identifying the IPv6 address of a head-end application server. Each option is uniquely identified by an Option Code, which is an unsigned 16-bit integer. The first option recognized by Option Code 1 is reserved for the CG-NMS address -- you can ignore this address.  Depending on the Option code determined by the customer deployment, the correct option code needs to be decoded to find the IPv6 Address of your Collection Engine or Application Server at the head end. As this option code will vary between deployments, it is required for the option code to be configurable in the CGE device.

Home Page for Dibbler client: DHCPv6: Dibbler - a portable DHCPv6

Follow the procedure below for installing and configuring the Dibbler client.

  • The User Guide for Dibbler is available in the link here: http://klub.com.pl/dhcpv6/doc/dibbler-user.pdf. Refer to installation and usage guide for your Operating system (Windows or Linux distributions supported).
  • Install using apt-get or RPM.  After install, add a directory:

mkdir /var/lib/dibbler

  • Next, configure the /etc/dibbler/client.conf file similar to following:

log-level 7

#Configure RFC compliance to ensure that /128 prefix is assigned



# To perform stateless (i.e. options only) configuration, uncomment

# this line below and remove any "ia" keywords from interface definitions

# stateless

#duid-type duid-en 34360 0x0000012998635412c89a22738c61d46f416f26


iface ppp0 {

# ask for address  


    t1 10  

    t2 10}  

  rapid-commit yes

  # ask for options  

  option dns-server  

  option domain


  • Establish ppp session.  Start pppd.  See instructions here: PPP to Comm Module
  • Then issue this command:

dibbler-client run

  • After the dhcp reply is received, use "ifconfig" to check ppp0 parameters, and you should see the newly assigned address.
  • Make sure to add a default route to your Application module through the ppp interface. For Ubuntu:

ip -6 route add default via fe80::1 dev ppp0

The above command assumes the link-local IPv6 address of the Communications Module is fe80::1. Please substitute this with the link-local IPv6 address of the PPP interface of the Communications module, if different. Also, note that this command will not add the default route persistently to the routing table.


For Application module to implement the dhcp client function, below are some notes:

Using the UART serial interface, CG-Mesh will support IPv6 over PPP (RFC 5072) using PPP in HDLC-like Encapsulation (RFC 1662).



Application Module  <-> Cisco NIC

Fe80::2 (546)<->Fe80::1 (547)