Hello Giovanni
Ah, I see… I believe that the confusion has to do more with the terminology used by the book rather than the actual topology.
On the one hand, we have the rule is that each VTEP is a leaf and cannot and should not connect to any other VTEP directly as far as VXLAN tunnels go. In the book they seem to have “violated” this rule by naming each of the logical entities “VTEP1” and “VTEP2” and connecting them together!
Now, when using vPC between two VTEPs, we can “bend the rules a bit” to allow two VTEPs to function as a single logical VTEP by creating a vPC between them. This is done by using an Anycast IP address for both VTEPs. In this sense, the VXLAN topology “sees” the two VTEPs as a single logical entity, even though they are two distinct entities connected via a vPC. So in essence, from the point of view of the VXLAN topology, the rule is not violated.
Now, the other thing that was not clear initially is the fact that each VTEP, as depicted within the diagram, is actually composed of multiple devices. This can be achieved assuming we’re using something like multilayer vPC. This is where you create a vPC between two pairs of vPC-connected devices. More about this can be found in this document:
(page 11, chapter titled Multilayer vPC for Aggregation and DCI)
As can be seen, the end system sees the two VTEPs as a single logical VTEP, and so does the VXLAN topology.
I hope this has been helpful!
Laz