aboutsummaryrefslogtreecommitdiffstats
path: root/extras/vagrant/WELCOME
blob: eb6aa2fdebc2fa6047f03a2ecfab5aca9a5a854d (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
VPP has now been built, installed, and started.

To give it a spin, we can create a tap interface and try a simple ping
(with trace).

Make sure you have run:

$ vagrant ssh

To get to the vagrant VM:

vagrant@localhost:~$

Confirm that vpp is running with

vagrant@localhost:~$ sudo status vpp
vpp start/running, process 25202

To create the tap:

vagrant@localhost:~$ sudo vppctl tap connect foobar
Created tap-0 for Linux tap 'foobar'
vagrant@localhost:~$ sudo vppctl show int

To assign it an ip address (and 'up' the interface):

vagrant@localhost:~$ sudo vppctl set int ip address tap-0 192.168.1.1/24
vagrant@localhost:~$ sudo vppctl set int state tap-0 up

To turn on packet tracing for the tap interface:
vagrant@localhost:~$ sudo vppctl trace add tapcli-rx 10

Now, to set up and try the other end:
vagrant@localhost:~$ sudo ip addr add 192.168.1.2/24 dev foobar
vagrant@localhost:~$ ping -c 3 192.168.1.1

To look at the trace:
vagrant@localhost:~$ sudo vppctl show trace

And to stop tracing:

vagrant@localhost:~$ sudo vppctl clear trace

Other fun things to look at:

The vlib packet processing graph:
vagrant@localhost:~$ sudo vppctl show vlib graph

which will produce output like:

           Name                      Next                    Previous
ip4-icmp-input                  error-punt [0]               ip4-local
                                ip4-icmp-echo-request [1]
                                vpe-icmp4-oam [2]

To read this, the first column (Name) is the name of the node.
The second column (Next) is the name of the children of that node.
The third column (Previous) is the name of the parents of this node.

To see this README again:
cat /vagrant/README