This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision Next revision Both sides next revision | ||
ipv6_opnfv_project:create_networks [2015/10/23 10:17] Sridhar Gaddam |
ipv6_opnfv_project:create_networks [2015/12/24 14:33] Sridhar Gaddam |
||
---|---|---|---|
Line 1: | Line 1: | ||
- | ===== Step 5: Creating Networks and Subnets ===== | + | ===== Step 4: Creating Networks and Subnets ===== |
OPNFV POC OpenStack Setup Instructions. | OPNFV POC OpenStack Setup Instructions. | ||
Line 86: | Line 86: | ||
5. Download ''fedora20'' image which would be used as vRouter. | 5. Download ''fedora20'' image which would be used as vRouter. | ||
- | glance image-create --name 'Fedora20' --disk-format qcow2 --container-format bare --is-public true --copy-from http://cloud.fedoraproject.org/fedora-20.x86_64.qcow2 | + | glance image-create --name 'Fedora22' --disk-format qcow2 --container-format bare --is-public true --copy-from https://download.fedoraproject.org/pub/fedora/linux/releases/22/Cloud/x86_64/Images/Fedora-Cloud-Base-22-20150521.x86_64.qcow2 |
6. Create a keypair. | 6. Create a keypair. | ||
Line 92: | Line 92: | ||
nova keypair-add vRouterKey > ~/vRouterKey | nova keypair-add vRouterKey > ~/vRouterKey | ||
- | 7. Copy the contents of the following url to ''metadata.txt'' (i.e., metadata which enables IPv6 router functionality inside vRouter) | + | 7. Create some Neutron ports that would be used for vRouter and the two VMs. |
- | http://fpaste.org/276989/39903414/ | + | neutron port-create --name eth0-vRouter --mac-address fa:16:3e:11:11:11 ipv4-int-network2 |
- | + | neutron port-create --name eth1-vRouter --mac-address fa:16:3e:22:22:22 ipv4-int-network1 | |
- | 8. Boot the vRouter using ''Fedora20'' image on the Compute node (hostname: opnfv-odl-ubuntu) | + | neutron port-create --name eth0-VM1 --mac-address fa:16:3e:33:33:33 ipv4-int-network1 |
+ | neutron port-create --name eth0-VM2 --mac-address fa:16:3e:44:44:44 ipv4-int-network1 | ||
+ | | ||
+ | 8. Boot the vRouter using ''Fedora22'' image on the Compute node (hostname: opnfv-odl-ubuntu) | ||
- | nova boot --image Fedora20 --flavor m1.small --user-data=./metadata.txt --availability-zone nova:opnfv-odl-ubuntu --nic net-id=$(neutron net-list | grep -w ipv4-int-network2 | awk '{print $2}') --nic net-id=$(neutron net-list | grep -w ipv4-int-network1 | awk '{print $2}') --key-name vRouterKey vRouter | + | nova boot --image Fedora22 --flavor m1.small --user-data /opt/stack/opnfv_os_ipv6_poc/metadata.txt --availability-zone nova:opnfv-odl-ubuntu --nic port-id=$(neutron port-list | grep -w eth0-vRouter | awk '{print $2}') --nic port-id=$(neutron port-list | grep -w eth1-vRouter | awk '{print $2}') --key-name vRouterKey vRouter |
- | 9. Verify that Fedora20 image boots up successfully and the ssh keys are properly injected. | + | 9. Verify that Fedora22 image boots up successfully and the ssh keys are properly injected. |
''Note: It may take few minutes for the necessary packages to get installed and ssh keys to be injected.'' | ''Note: It may take few minutes for the necessary packages to get installed and ssh keys to be injected.'' | ||
Line 138: | Line 141: | ||
# Configure the IPv6 address on the <qr-xxx> iface. | # Configure the IPv6 address on the <qr-xxx> iface. | ||
- | router-interface=$(ip a s | grep -w "global qr-*" | awk '{print $7}') | + | router_interface=$(ip a s | grep -w "global qr-*" | awk '{print $7}') |
- | ip -6 addr add 2001:db8:0:1::1 dev $router-interface | + | ip -6 addr add 2001:db8:0:1::1 dev $router_interface |
# Copy the following contents to some file (say ''/tmp/br-ex.radvd.conf'') | # Copy the following contents to some file (say ''/tmp/br-ex.radvd.conf'') | ||
- | interface $router-interface | + | interface $router_interface |
{ | { | ||
AdvSendAdvert on; | AdvSendAdvert on; | ||
Line 159: | Line 162: | ||
$radvd -C /tmp/br-ex.radvd.conf -p /tmp/br-ex.pid.radvd -m syslog | $radvd -C /tmp/br-ex.radvd.conf -p /tmp/br-ex.pid.radvd -m syslog | ||
- | You will also have to add an ipv6 route which points to the ''eth0'' interface of vRouter. This is necessary for the ipv6 router to know that ''2001:db8:0:2::/64'' is reachable via the ''eth0'' interface of vRouter. | + | Configure the $router_interface proc entries to process the Router Advts from vRouter and automatically add a downstream route pointing to the LLA of the vRouter eth0 iface. |
- | + | ||
- | ip -6 route add 2001:db8:0:2::/64 via <LLA-of-eth0-iface-on-vRouter> dev <qr-iface> | + | |
- | # Verify that the route is properly added. | + | sysctl -w net.ipv6.conf.$router_interface.accept_ra=2 |
+ | sysctl -w net.ipv6.conf.$router_interface.accept_ra_rt_info_max_plen=64 | ||
+ | Note: After the vRouter successfully initializes and starts sending Router Advts, you would see an IPv6 route to the ''2001:db8:0:2::/64'' prefix reachable via LLA of vRouter eth0 iface. You can execute the following command to list the IPv6 routes. | ||
ip -6 route show | ip -6 route show | ||
Line 191: | Line 194: | ||
{{:ipv6_opnfv_project:setup-os_odl.png}} | {{:ipv6_opnfv_project:setup-os_odl.png}} | ||
- | ODL DLUX UI would show the two nodes as shown below. | + | [[http://199.188.118.108:8181/index.htm| ODL DLUX UI]] would display the two nodes as shown below. |
{{:ipv6_opnfv_project:odl-dlux_ipv6_poc.png}} | {{:ipv6_opnfv_project:odl-dlux_ipv6_poc.png}} |