Node. The second host is used as Open Daylight Controller Node. And the third one is used as
 OpenStack Compute Node.
 
-For exemplary purpose, we give them hostnames ``opnfv-odl-controller``,
-``opnfv-os-controller``, and ``opnfv-os-compute`` respectively.
+For exemplary purpose, we assume:
+
+* The hostname of OpenStack Controller+Network+Compute Node is ``opnfv-os-controller``, and the host IP address
+  is ``192.168.0.10``
+* The hostname of OpenStack Compute Node is ``opnfv-os-compute``, and the host IP address is ``192.168.0.20``
+* The hostname of Open Daylight Controller Node is ``opnfv-odl-controller``, and the host IP address is
+  ``192.168.0.30``
+* We use ``opnfv`` as username to login.
+* We use ``devstack`` to install OpenStack Kilo. Please note that OpenStack Liberty can be used as well.
 
 The underlay network topology of those 3 hosts are shown as follows in :numref:`s2-figure2`:
 
 
 
 For exemplary purpose, we assume:
 
-* The hostname of Open Daylight Controller Node is ``opnfv-odl-controller``
+* The hostname of Open Daylight Controller Node is ``opnfv-odl-controller``, and the host IP address is
+  ``192.168.0.30``
 * CentOS 7 is installed
 * We use ``opnfv`` as username to login.
 * Java 7 is installed in directory ``/usr/lib/jvm/java-1.7.0-openjdk-1.7.0.85-2.6.1.2.el7_1.x86_64/``
 
 * Ubuntu 14.04 or Fedora 21 is installed
 * We use ``opnfv`` as username to login.
 * We use ``devstack`` to install OpenStack Kilo. Please note that although the instructions are based on
-OpenStack Kilo, they can be applied to Liberty in the same way.
+  OpenStack Kilo, they can be applied to Liberty in the same way.
 
 **OS-N-0**: Login to OpenStack Controller Node with username ``opnfv``
 
 
 * Ubuntu 14.04 or Fedora 21 is installed
 * We use ``opnfv`` as username to login.
 * We use ``devstack`` to install OpenStack Kilo. Please note that although the instructions are based on
-OpenStack Kilo, they can be applied to Liberty in the same way.
+  OpenStack Kilo, they can be applied to Liberty in the same way.
 
 **OS-M-0**: Login to OpenStack Compute Node with username ``opnfv``
 
 
 
 .. code-block:: bash
 
-    sudo ip addr del <External IP address of opnfv-os-controller> dev eth1
+    sudo ip addr del 198.59.156.113/24 dev eth1
     sudo ovs-vsctl add-port br-ex eth1
     sudo ifconfig eth1 up
-    sudo ip addr add <External IP address of opnfv-os-controller> dev br-ex
+    sudo ip addr add 198.59.156.113/24 dev br-ex
     sudo ifconfig br-ex up
-    sudo ip route add default via <Default gateway IP address of opnfv-os-controller> dev br-ex
+    sudo ip route add default via 198.59.156.1 dev br-ex
 
-Please note that **this can be automated in /etc/network/interfaces**.
+Please note that:
+
+* Please note that the IP address ``198.59.156.113`` and related subnet and gateway addressed in the command
+  below are for exemplary purpose. **Please replace them with the IP addresses of your actual network**.
+* **this can be automated in /etc/network/interfaces**.
 
 **SETUP-SVM-4**: Verify that ``br-ex`` now has the original external IP address, and that the default route is on
 ``br-ex``
            valid_lft forever preferred_lft forever
         inet6 fe80::543e:28ff:fe70:4426/64 scope link
            valid_lft forever preferred_lft forever
+    opnfv@opnfv-os-controller:~/devstack$
     opnfv@opnfv-os-controller:~/devstack$ ip route
     default via 198.59.156.1 dev br-ex
-    10.134.156.0/24 dev eth0  proto kernel  scope link  src 10.134.156.113
+    192.168.0.0/24 dev eth0  proto kernel  scope link  src 192.168.0.10
     192.168.122.0/24 dev virbr0  proto kernel  scope link  src 192.168.122.1
     198.59.156.0/24 dev br-ex  proto kernel  scope link  src 198.59.156.113
 
 
 Please **note** that ``/opt/stack/opnfv_os_ipv6_poc/metadata.txt`` is used to enable the ``vRouter`` to automatically
 spawn a ``radvd``, and:
+
 * Act as an IPv6 vRouter which advertises the RA (Router Advertisements) with prefix ``2001:db8:0:2::/64`` on its
-internal interface (``eth1``).
+  internal interface (``eth1``).
 * Advertise RA (Router Advertisements) with just route information on its eth0 interface so that ``ipv6-router`` can
-automatically add a downstream route to subnet ``2001:db8:0:2::/64`` whose next hop would be the ``eth0`` interface
-of ``vRouter``.
+  automatically add a downstream route to subnet ``2001:db8:0:2::/64`` whose next hop would be the ``eth0`` interface
+  of ``vRouter``.
 
 **SETUP-SVM-20**: Verify that ``Fedora22`` image boots up successfully and vRouter has ``ssh`` keys properly injected
 
     sysctl -w net.ipv6.conf.$router_interface.accept_ra_rt_info_max_plen=64
 
 **SETUP-SVM-29**: Please note that after the vRouter successfully initializes and starts sending RA (Router
-Advertisement) message (**SETUP-SVM-20**), you would see an IPv6 route to the ``2001:db8:0:2::/64`` prefix
+Advertisement) message, you would see an IPv6 route to the ``2001:db8:0:2::/64`` prefix
 (subnet) reachable via LLA (Link Local Address) ``fe80::f816:3eff:fe11:1111`` of ``eth0`` interface of the
 ``vRouter``. You can execute the following command to list the IPv6 routes.
 
 
 
 * A two-node setup of OpenStack environment is used as shown in :numref:`s1-figure1`
 * The hostname of OpenStack Controller+Network+Compute Node is ``opnfv-os-controller``, and the host IP address
-is ``192.168.0.10``
+  is ``192.168.0.10``
 * The hostname of OpenStack Compute Node is ``opnfv-os-compute``, and the host IP address is ``192.168.0.20``
 * Ubuntu 14.04 is installed
 * We use ``opnfv`` as username to login.
 
 .. code-block:: bash
 
-    cp /opt/stack/local.conf.controller ~/devstack/local.conf
+    cp /opt/stack/opnfv_os_ipv6_poc/local.conf.controller ~/devstack/local.conf
 
 **OS-NATIVE-N-3**: If you want to modify any ``devstack`` configuration, update ``local.conf`` now.
 
 
 .. code-block:: bash
 
-    cp /opt/stack/local.conf.compute ~/devstack/local.conf
+    cp /opt/stack/opnfv_os_ipv6_poc/local.conf.compute ~/devstack/local.conf
+
+Please **note** that you need to change the IP address of ``SERVICE_HOST`` to point to your actual IP
+address of OpenStack Controller 
 
 **OS-NATIVE-M-3**: If you want to modify any ``devstack`` configuration, update ``local.conf`` now.
 
     firewall_driver = nova.virt.firewall.NoopFirewallDriver
 
 *********************************
-Set Up Service VM as Ipv6 vRouter
+Set Up Service VM as IPv6 vRouter
 *********************************
 
 **OS-NATIVE-SETUP-1**: Now we assume that OpenStack multi-node setup is up and running. The following
     opnfv@opnfv-os-controller:~/devstack$
     opnfv@opnfv-os-controller:~/devstack$ ip route
     default via 198.59.156.1 dev br-ex
-    10.134.156.0/24 dev eth0  proto kernel  scope link  src 10.134.156.113
+    192.168.0.0/24 dev eth0  proto kernel  scope link  src 192.168.0.10
     192.168.122.0/24 dev virbr0  proto kernel  scope link  src 192.168.122.1
     198.59.156.0/24 dev br-ex  proto kernel  scope link  src 198.59.156.113
 
 
 environment. There are three scenarios.
 
 * Scenario 1 is pre-OPNFV environment, i.e. a native OpenStack environment
-without Open Daylight Controller.
+  without Open Daylight Controller.
 * Scenario 2 is an OPNFV environment where OpenStack is integrated with
-Open Daylight Official Lithium Release. In this setup we use ODL for "Layer 2 connectivity"
-and Neutron L3 agent for "Layer 3 routing". Because of a bug, which got fixed recently
-and is not part of ODL SR3, we will have to manually execute certain commands to simulate
-an external IPv6 Router in this setup.
+  Open Daylight Official Lithium Release. In this setup we use ODL for "Layer 2 connectivity"
+  and Neutron L3 agent for "Layer 3 routing". Because of a bug, which got fixed recently
+  and is not part of ODL SR3, we will have to manually execute certain commands to simulate
+  an external IPv6 Router in this setup.
 * Scenario 3 is similar to Scenario 2. However, we use an Open Daylight Lithium
-controller which is built from the latest stable/Lithium branch which includes the fix.
-In this scenario, we can fully automate the setup similar to Scenario 1.
+  controller which is built from the latest stable/Lithium branch which includes the fix.
+  In this scenario, we can fully automate the setup similar to Scenario 1.
 
 .. toctree::
    :numbered:
 
 Scenario 3 - OpenStack + Open Daylight Lithium with Patch of Bug Fix
 ===============================================================
 
-Scenario 3 is the environment of OpenStack + Open Daylight Lithium, however, Lithium is patched with a bug fix of
-net-virt provider implementation that throws Java exception. Because Lithium still does not support IPv6 L3 Routing, we
-need to enable Neutron L3 Agent instead of Open Daylight L3 function, while we still use Open Daylight for L2 switching.
+Scenario 3 is the environment of OpenStack + Open Daylight Lithium,
+which is similar to Scenario 2. However, we use an Open Daylight Lithium
+controller which is built from the latest stable/Lithium branch that includes the fix of a bug.
+In this scenario, we can fully automate the setup similar to Scenario 1.
 
 .. toctree::
    :numbered: