> For the complete documentation index, see [llms.txt](https://adavyshin.gitbook.io/networks/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://adavyshin.gitbook.io/networks/vxlan-evpn-fabric/lab-1.-znakomstvo-s-vxlan.md).

# Lab 1. Знакомство с VxLAN

⚠️ В лабораторных работах используется образ Arista vEOS. Логин для входа `admin` и без пароля. В качестве хостовых устройств VPCS образ, добавленный в GNS3 по умолчанию.

При первом запуске коммутаторы Arista vEOS будут пытаться загрузиться с помощью ZTP, для отключения ZTP функционала переходим в привилегированный режим и используем команду `zerotouch disable`, после которой коммутатор уйдёт в перезагрузку и перестанет писать в журнал логи об ошибке получения адреса по DHCP.

1. Открываем в GNS3 новый проект
2. Собираем инфраструктуру согласно следующему дизайну

<figure><img src="/files/byLQ0PqUkjMJtVCmgxg3" alt=""><figcaption></figcaption></figure>

<table><thead><tr><th width="123.39990234375">Host</th><th width="125.39990234375">Interface</th><th width="122.4000244140625">Link to...</th><th>Type</th><th>VLAN/IP</th></tr></thead><tbody><tr><td>VTEP1</td><td>Ethernet1</td><td>Host1</td><td>Access</td><td>VLANID 10</td></tr><tr><td>VTEP1</td><td>Ethernet2</td><td>Underlay</td><td>Routed</td><td>192.168.1.1/24</td></tr><tr><td>VTEP1</td><td>Loopback0</td><td></td><td>Routed</td><td>1.1.1.1/32</td></tr><tr><td>Underlay</td><td>Ethernet1</td><td>VTEP1</td><td>Routed</td><td>192.168.1.254/24</td></tr><tr><td>Underlay</td><td>Ethernet2</td><td>VTEP2</td><td>Routed</td><td>192.168.2.254/24</td></tr><tr><td>VTEP2</td><td>Ethernet1</td><td>Host2</td><td>Access</td><td>VLANID 1010</td></tr><tr><td>VTEP2</td><td>Ethernet2</td><td>Underlay</td><td>Routed</td><td>192.168.2.1/24</td></tr><tr><td>VTEP2</td><td>Loopback0</td><td></td><td>Routed</td><td>2.2.2.2/32</td></tr></tbody></table>

3. 🔧  Конфигурация <kbd>Host1</kbd>

```
ip 10.0.0.101/24
```

4. 🔧 Конфигурация <kbd>Host2</kbd>

```
ip 10.0.0.102/24
```

5. 🔧 Конфигурация <kbd>Underlay</kbd>

```powershell
configure terminal
!
hostname Underlay
!
interface Ethernet1
 description {Link to VTEP1}
 no switchport
 ip address 192.168.1.254/24
 no sh 
!
interface Ethernet2
 description {Link to VTEP2}
 no switchport
 ip address 192.168.2.254/24
 no sh
!
ip route 1.1.1.1/32 192.168.1.1 name VTEP1
ip route 2.2.2.2/32 192.168.2.1 name VTEP2
```

6. 🔧 Конфигурация <kbd>VTEP1</kbd>

```powershell
configure terminal
!
hosname VTEP1
!
interface Ethernet1
  description {Link to Host1}
  switchport access vlan 10
  spanning-tree portfast edge
!
interface Ethernet2
  description {Link to Underlay}
  no switchport
  ip address 192.168.1.1/24
!
interface Loopback0
  description {VTEP Source Interface}
  ip address 1.1.1.1/32
!
ip routing
!
ip route 2.2.2.2/32 192.168.1.254 name VTEP2
```

7. 🔧 Конфигурация <kbd>VTEP2</kbd>

```powershell
configure terminal
!
hostname VTEP2
!
interface Ethernet1
  description {Link to Host2}
  switchport access vlan 1010
  spanning-tree portfast edge
!
interface Ethernet2
  description {Link to Underlay}
  no switchport
  ip address 192.168.2.1/24
!
interface Loopback0
  description {VTEP Source Interface}
  ip address 2.2.2.2/32
!
ip routing
!
ip route 1.1.1.1/32 192.168.2.254 name VTEP1
```

8. Проверяем доступность Loopback-интерфейсов VTEP-устройств

```
ping 2.2.2.2 source Loopback0 
```

Теперь перейдём к самой настройке VxLAN-туннеля.

📖 Устройства, терминирующие на себе VxLAN-туннели называют `Virtual Tunnel End Point` (далее - VTEP).&#x20;

&#x20;При настройке VxLAN-интерфейса нам необходимо указать IP-адрес отправителя инкапсулированных пакетов, UDP-порт получателя, указать соответствие локальный подсетей с VNI-идентификатором и указать куда распространяются пакеты.&#x20;

В нашем случае на левой стороне в качестве клиентской подсети выступит L2-сегмент с VLAN ID #10, а на правой стороне L2-сегментом выступает подсеть с VLAN ID #1010. Этим примером, хотел показать, что не обязательно с&#x20;

9. 🔧 Открываем консоль <kbd>VTEP1</kbd> и применяем конфигурацию

```powershell
interface Vxlan1
   vxlan source-interface Loopback0
   vxlan udp-port 4789
   vxlan vlan 10 vni 10010
   vxlan flood vtep 2.2.2.2
```

10. 🔧 На <kbd>VTEP2</kbd> настраиваем VxLAN интерфейс&#x20;

```powershell
interface Vxlan1
   vxlan source-interface Loopback0
   vxlan udp-port 4789
   vxlan vlan 1010 vni 10010
   vxlan flood vtep 1.1.1.1
```

11. Запуcтим Wireshark дамп на линках между <kbd>Underlay</kbd> и одним из <kbd>VTEP-устройств</kbd>, для этого правой кнопкой кликаем на провод и нажимаем `Start Capture`. Должно открыть окно Wireshark.
12. Проверяем доступность с одного хоста до другого. Начнём с <kbd>Host1</kbd>

```
ping 10.0.0.102
```

> Host1> ping 10.0.0.102 -c 4
>
> 84 bytes from 10.0.0.102 icmp\_seq=1 ttl=64 time=4.401 ms> \
> 84 bytes from 10.0.0.102 icmp\_seq=2 ttl=64 time=4.876 ms> \
> 84 bytes from 10.0.0.102 icmp\_seq=3 ttl=64 time=6.955 ms> \
> 84 bytes from 10.0.0.102 icmp\_seq=4 ttl=64 time=4.471 ms

13. На <kbd>Host2</kbd> запускаем ping до хоста <kbd>Host1</kbd>

```
ping 10.0.0.101
```

14. Теперь давайте откроем окно с Wireshark и более детально посмотрим на заголовки пакетов в нижнем окне

<figure><img src="/files/eVA8Obg9gxzMsYo3fcH2" alt=""><figcaption></figcaption></figure>

Обратите внимание, что `Ethernet-кадр` отправленный Host1 упакован внутрь `Virtual eXtensible Local Area Network` - заголовка, тот в свою очередь в `UDP-дейтаграмму`, а потом в Underlay IP-пакет, где отправитель - `1.1.1.1` и получатель `2.2.2.2`.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://adavyshin.gitbook.io/networks/vxlan-evpn-fabric/lab-1.-znakomstvo-s-vxlan.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
