| .. _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# |