89 lines
3.8 KiB
ReStructuredText
89 lines
3.8 KiB
ReStructuredText
|
.. _vhost03:
|
||
|
|
||
|
Bridge the Interfaces
|
||
|
---------------------
|
||
|
|
||
|
To connect the 2 interfaces we put them on an L2 bridge.
|
||
|
|
||
|
Use the "set interface l2 bridge" command.
|
||
|
|
||
|
.. code-block:: console
|
||
|
|
||
|
vpp# set interface l2 bridge VirtualEthernet0/0/0 100
|
||
|
vpp# set interface l2 bridge TenGigabitEthernet86/0/0 100
|
||
|
vpp# show bridge
|
||
|
BD-ID Index BSN Age(min) Learning U-Forwrd UU-Flood Flooding ARP-Term BVI-Intf
|
||
|
100 1 0 off on on on on off N/A
|
||
|
vpp# show bridge 100 det
|
||
|
BD-ID Index BSN Age(min) Learning U-Forwrd UU-Flood Flooding ARP-Term BVI-Intf
|
||
|
100 1 0 off on on on on off N/A
|
||
|
|
||
|
Interface If-idx ISN SHG BVI TxFlood VLAN-Tag-Rewrite
|
||
|
VirtualEthernet0/0/0 3 1 0 - * none
|
||
|
TenGigabitEthernet86/0/0 1 1 0 - * none
|
||
|
vpp# show vhost
|
||
|
|
||
|
Bring the Interfaces Up
|
||
|
-----------------------
|
||
|
|
||
|
We can now bring all the pertinent interfaces up. We can then we will then be able to communicate
|
||
|
with the VM from the remote system running Linux.
|
||
|
|
||
|
Bring the interfaces up with :ref:`setintstate` command.
|
||
|
|
||
|
.. code-block:: console
|
||
|
|
||
|
vpp# set interface state VirtualEthernet0/0/0 up
|
||
|
vpp# set interface state TenGigabitEthernet86/0/0 up
|
||
|
vpp# sh int
|
||
|
Name Idx State Counter Count
|
||
|
TenGigabitEthernet86/0/0 1 up rx packets 2
|
||
|
rx bytes 180
|
||
|
TenGigabitEthernet86/0/1 2 down
|
||
|
VirtualEthernet0/0/0 3 up tx packets 2
|
||
|
tx bytes 180
|
||
|
local0 0 down
|
||
|
|
||
|
Ping from the VM
|
||
|
----------------
|
||
|
|
||
|
The remote Linux system has an ip address of "10.0.0.2" we can now reach it from the VM.
|
||
|
|
||
|
Use the "virsh console" command to attach to the VM. "ctrl-D" to exit.
|
||
|
|
||
|
.. code-block:: console
|
||
|
|
||
|
$ virsh console iperf-server3
|
||
|
Connected to domain iperf-server3
|
||
|
Escape character is ^]
|
||
|
|
||
|
Ubuntu 16.04.3 LTS iperfvm ttyS0
|
||
|
.....
|
||
|
|
||
|
root@iperfvm:~# ping 10.0.0.2
|
||
|
64 bytes from 10.0.0.2: icmp_seq=1 ttl=64 time=0.285 ms
|
||
|
64 bytes from 10.0.0.2: icmp_seq=2 ttl=64 time=0.154 ms
|
||
|
64 bytes from 10.0.0.2: icmp_seq=3 ttl=64 time=0.159 ms
|
||
|
64 bytes from 10.0.0.2: icmp_seq=4 ttl=64 time=0.208 ms
|
||
|
|
||
|
|
||
|
On VPP you can now see the packet counts increasing. The packets from the VM are seen as **rx packets**
|
||
|
on **VirtualEthernet0/0/0**, they are then bridged to **TenGigabitEthernet86/0/0** and are seen leaving the
|
||
|
system as **tx packets**. The reverse is true on the way in.
|
||
|
|
||
|
.. code-block:: console
|
||
|
|
||
|
vpp# sh int
|
||
|
Name Idx State Counter Count
|
||
|
TenGigabitEthernet86/0/0 1 up rx packets 16
|
||
|
rx bytes 1476
|
||
|
tx packets 14
|
||
|
tx bytes 1260
|
||
|
TenGigabitEthernet86/0/1 2 down
|
||
|
VirtualEthernet0/0/0 3 up rx packets 14
|
||
|
rx bytes 1260
|
||
|
tx packets 16
|
||
|
tx bytes 1476
|
||
|
local0 0 down
|
||
|
vpp#
|