Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

# Mount IPv6 device with ODL RestConf

## Prerequisites

Table of Contents

Prerequisites on CCSDK, SDNC, OpenDaylight

1. feature:install odl-netconf-clustered-topology
2. feature:install odl-restconf-all#

Mount request (HTTP/RestConf)

PUT http://localhost:8181/restconf/config/network-topology:network-topology/topology/topology-netconf/node/ipv6-device

...

- Accept: application/josn
- Content-Type: application/json```

Body

Code Block
languagejs
{

...


  "node": [

...


    {
      "node-id": "ipv6-device",

...


      "netconf-node-topology:reconnect-on-changed-schema": false,

...


      "netconf-node-topology:password": "admin",

...


      "netconf-node-topology:username": "admin",

...


      "netconf-node-topology:sleep-factor": 1.5,

...


      "netconf-node-topology:port": 12600,

...


      "netconf-node-topology:tcp-only": false,

...


      "netconf-node-topology:connection-timeout-millis": 20000,

...


      "netconf-node-topology:max-connection-attempts": 0,

...


      "netconf-node-topology:host": "::1",

...


      "netconf-node-topology:between-attempts-timeout-millis": 2000,

...


      "netconf-node-topology:keepalive-delay": 120

...


    }
  ]
}


Please note the "host" - "::1" is localhost in IPv6 format.##

Check Connection Status

GET http://localhost:8181/restconf/operational/network-topology:network-topology/topology/topology-netconf/node/ipv6-device

- Accept: application/xml
- Content-Type: application/xml###

Expected result body

...

Code Block
languagejs
{

...


  "node": [

...


    {
      "node-id": "ipv6-device",

...


      "netconf-node-topology:unavailable-capabilities":

...

 {
        "unavailable-capability": [...]

...


      },

...


      "netconf-node-topology:available-capabilities":

...

 {
        "available-capability": [...]

...


      },

...


      "netconf-node-topology:host": "0:0:0:0:0:0:0:1",

...


      "netconf-node-topology:clustered-connection-status":

...

 {
        "netconf-master-node": "akka.tcp://opendaylight-cluster-data@127.0.0.1:2550"

...


      },

...


      "netconf-node-topology:connection-status": "connected",

...


      "netconf-node-topology:port": 12600

...


    }
  ]
}

Note: using ipv6: fe80::20c:29ff:fef8:337c worked as well.#

Docker and IPv6

See: https://docs.docker.com/v17.09/engine/userguide/networking/default_network/ipv6/#how-ipv6-works-on-docker#

Docker-compose an IPv6

See https://collabnix.com/enabling-ipv6-functionality-for-docker-and-docker-compose/

Please note: version: "2.4" works fine but 3.x not - see https://docs.docker.com/compose/compose-file/
... and the following not (2019-12-21):```

Code Block
If IPv6 addressing is desired, the enable_ipv6 option must be set,

...

 
and you must use a version 2.x Compose file.

...

 
IPv6 options do not currently work in swarm mode.

...


{{:ht:howto:docker-compose-ipv6.png?800|}}

# Image Added

Kubernetes and IPv6

Please see: https://kubernetes.io/docs/concepts/services-networking/dual-stack/

...