Difference between revisions of "ONE/Simple test setup"

From fd.io
< ONE
Jump to: navigation, search
m
m (Host)
Line 12: Line 12:
  
 
<pre>
 
<pre>
ip netns add vpp1
+
if [ -e ~/.vpputilrc ] ; then
 +
  . ~/.vpputilrc
 +
fi
 +
 +
pkill vpp
 +
 +
# delete previous incarnations if they exist
 +
 +
ip netns exec intervppns ifconfig vppbr down
 +
ip netns exec intervppns brctl delbr vppbr
 +
ip link del dev veth_vpp1 &> /dev/null
 +
ip link del dev veth_vpp2 &> /dev/null
 +
ip link del dev veth_intervpp1 &> /dev/null
 +
ip link del dev veth_intervpp2 &> /dev/null
 +
ip link del dev veth_odl &> /dev/null
 +
ip netns del vppns1 &> /dev/null
 +
ip netns del vppns2 &> /dev/null
 +
ip netns del intervppns &> /dev/null
 +
 +
if [ "$1" == "clean" ] ; then
 +
  exit 0;
 +
fi
 +
 +
ip netns add vppns1
 +
ip netns add vppns2
 +
ip netns add intervppns
 +
 +
ip link add veth_intervpp1 type veth peer name intervpp1
 +
ip link add veth_intervpp2 type veth peer name intervpp2
 +
ip link add veth_odl type veth peer name odl
 +
ip link set dev intervpp1 up
 +
ip link set dev intervpp2 up
 +
ip link set dev odl up
 +
ip link set dev veth_intervpp1 up netns intervppns
 +
ip link set dev veth_intervpp2 up netns intervppns
 +
ip link set dev veth_odl up netns intervppns
 +
 +
ip netns exec intervppns brctl addbr vppbr
 +
ip netns exec intervppns brctl addif vppbr veth_intervpp1
 +
ip netns exec intervppns brctl addif vppbr veth_intervpp2
 +
ip netns exec intervppns brctl addif vppbr veth_odl
 +
ip netns exec intervppns ifconfig vppbr up
 +
 +
# create and configure 1st veth pair
 +
ip link add veth_vpp1 type veth peer name vpp1
 
ip link set dev vpp1 up
 
ip link set dev vpp1 up
ip link set dev veth_vpp1 up netns vpp1
+
ip link set dev veth_vpp1 up netns vppns1
ip netns exec vpp1 \
+
 +
ip netns exec vppns1 \
 
   bash -c "
 
   bash -c "
 
     ip link set dev lo up
 
     ip link set dev lo up
Line 21: Line 66:
 
     ip route add 6.0.4.0/24 via 6.0.2.1
 
     ip route add 6.0.4.0/24 via 6.0.2.1
 
"
 
"
</pre>
+
 
+
# create and configure 2nd veth pair
<pre>
+
ip link add veth_vpp2 type veth peer name vpp2
ip netns add vpp2
+
 
ip link set dev vpp2 up
 
ip link set dev vpp2 up
ip link set dev veth_vpp2 up netns vpp2
+
ip link set dev veth_vpp2 up netns vppns2
ip netns exec vpp2 \
+
 +
ip netns exec vppns2 \
 
   bash -c "
 
   bash -c "
 
     ip link set dev lo up
 
     ip link set dev lo up
     ip addr add 6.0.4.2/24 dev veth_vpp1
+
     ip addr add 6.0.4.4/24 dev veth_vpp2
 
     ip route add 6.0.2.0/24 via 6.0.4.1
 
     ip route add 6.0.2.0/24 via 6.0.4.1
 
"
 
"
 +
 +
ifconfig odl 6.0.3.100/24
 +
ethtool --offload  odl rx off tx off
 +
 +
sudo $VPP_LITE_BIN \
 +
  unix { log /tmp/vpp1.log cli-listen \
 +
        localhost:5002 full-coredump \
 +
        exec /etc/vpp/lite/vpp1.config } \
 +
  api-trace { on } chroot {prefix xtr1}
 +
 +
sudo $VPP_LITE_BIN \
 +
  unix { log /tmp/vpp2.log cli-listen \
 +
        localhost:5003 full-coredump exec /etc/vpp/lite/vpp2.config } \
 +
  api-trace { on } chroot {prefix xtr2}
 
</pre>
 
</pre>
  

Revision as of 09:21, 6 May 2016

Intro

TBD description

requirements

topology

Setup

Host and vpp configs

Host

Create namespace and set up interface in linux

if [ -e ~/.vpputilrc ] ; then
  . ~/.vpputilrc
fi
 
pkill vpp
 
# delete previous incarnations if they exist
 
ip netns exec intervppns ifconfig vppbr down
ip netns exec intervppns brctl delbr vppbr
ip link del dev veth_vpp1 &> /dev/null
ip link del dev veth_vpp2 &> /dev/null
ip link del dev veth_intervpp1 &> /dev/null
ip link del dev veth_intervpp2 &> /dev/null
ip link del dev veth_odl &> /dev/null
ip netns del vppns1 &> /dev/null
ip netns del vppns2 &> /dev/null
ip netns del intervppns &> /dev/null
 
if [ "$1" == "clean" ] ; then
  exit 0;
fi
 
ip netns add vppns1
ip netns add vppns2
ip netns add intervppns
 
ip link add veth_intervpp1 type veth peer name intervpp1
ip link add veth_intervpp2 type veth peer name intervpp2
ip link add veth_odl type veth peer name odl
ip link set dev intervpp1 up
ip link set dev intervpp2 up
ip link set dev odl up
ip link set dev veth_intervpp1 up netns intervppns
ip link set dev veth_intervpp2 up netns intervppns
ip link set dev veth_odl up netns intervppns
 
ip netns exec intervppns brctl addbr vppbr
ip netns exec intervppns brctl addif vppbr veth_intervpp1
ip netns exec intervppns brctl addif vppbr veth_intervpp2
ip netns exec intervppns brctl addif vppbr veth_odl
ip netns exec intervppns ifconfig vppbr up
 
# create and configure 1st veth pair
ip link add veth_vpp1 type veth peer name vpp1
ip link set dev vpp1 up
ip link set dev veth_vpp1 up netns vppns1
 
ip netns exec vppns1 \
  bash -c "
    ip link set dev lo up
    ip addr add 6.0.2.2/24 dev veth_vpp1
    ip route add 6.0.4.0/24 via 6.0.2.1
"
 
# create and configure 2nd veth pair
ip link add veth_vpp2 type veth peer name vpp2
ip link set dev vpp2 up
ip link set dev veth_vpp2 up netns vppns2
 
ip netns exec vppns2 \
  bash -c "
    ip link set dev lo up
    ip addr add 6.0.4.4/24 dev veth_vpp2
    ip route add 6.0.2.0/24 via 6.0.4.1
"
 
ifconfig odl 6.0.3.100/24
ethtool --offload  odl rx off tx off
 
sudo $VPP_LITE_BIN \
  unix { log /tmp/vpp1.log cli-listen \
         localhost:5002 full-coredump \
         exec /etc/vpp/lite/vpp1.config } \
  api-trace { on } chroot {prefix xtr1}
 
sudo $VPP_LITE_BIN \
  unix { log /tmp/vpp2.log cli-listen \
         localhost:5003 full-coredump exec /etc/vpp/lite/vpp2.config } \
  api-trace { on } chroot {prefix xtr2}

vpp 1

interface

create host-interface name vpp1
set int state host-vpp1 up
set int ip address host-vpp1 6.0.2.1/24

lisp config

set int ip address GigabitEthernet2/4/0 6.0.2.1/24
set int state GigabitEthernet2/4/0 up

set int ip address GigabitEthernet2/5/0 6.0.3.1/24
set int state GigabitEthernet2/5/0 up

lisp gpe enable

lisp locator-set add ls1 iface GigabitEthernet2/5/0 p 1 w 1
lisp eid-table add eid 6.0.2.0/24 locator-set ls1
lisp map-resolver add 6.0.3.100

vpp 2

interface

create host-interface name vpp2
set int state host-vpp2 up
set int ip address host-vpp2 6.0.4.1/24

lisp config

set int ip address GigabitEthernet2/4/0 6.0.4.1/24
set int state GigabitEthernet2/4/0 up

set int ip address GigabitEthernet2/5/0 6.0.3.1/24
set int state GigabitEthernet2/5/0 up

lisp gpe enable

lisp locator-set add ls1 iface GigabitEthernet2/5/0 p 1 w 1
lisp eid-table add eid 6.0.4.0/24 locator-set ls1
lisp map-resolver add 6.0.3.100

Test

ip netns exec vpp1 ping 172.16.2.2