Red de conocimiento informático - Aprendizaje de programación - La máquina virtual KVM y el host están conectados directamente a través del par veth

La máquina virtual KVM y el host están conectados directamente a través del par veth

El proceso se reproduce de la siguiente manera:

1. Cree una VM e instale centOS. El proceso se omite

2. Cree un par veth.

p>

3. Utilice virt-manager para crear una tarjeta de red para la VM y conéctela a veth-centOS. No es necesario configurar nada más, todo está predeterminado.

4. Configure la dirección IP de la red realtek ethernet en la máquina virtual centOS, 192.168.1/24, me pregunto por qué se llama realtek ethernet. En cuanto a por qué apareció Realtek Ethernet, parece estar relacionado con KVM o QEMU. Más tarde, utilicé el método anterior para agregar una red y el nombre se convirtió en PCI Ethernet. Olvidémoslo por ahora.

Entonces ifconfig vio lo siguiente:

¡Por qué se llama ens9! ! ¡Muy extraño! ! ¡Todos son problemas! ! !

5. ¡Entonces ocurrió un milagro! ¡Haga ping a 192.168.1.100! ¡Entiendo! Los resultados son los siguientes:

6. Resumen

¿Por qué sucede esto? Se necesita más investigación, tal vez esto sea solo un fenómeno superficial y ¡todavía quedan muchas preguntas!

¡Entonces, seguro! ¡Algo salió mal! ! !

El proceso se reproduce de la siguiente manera:

1. Crear una segunda máquina virtual VM2, instalada redhat

2. Crear un par veth

3. Luego repita las operaciones relevantes en la primera parte anterior y configure la IP de la máquina virtual en 192.168.1.103/24

4. Haga ping a 192.168.1.102 en el redhat de la máquina virtual, pero no ¡No trabajo! Luego haga ping a 192.168.1.100, ¡pero tampoco funciona! Vale, admito que mi conocimiento básico de redes es muy pobre, pero realmente no puedo entenderlo

5. Luego, volví a centOS e hice ping a 192.168.1.102, ¡y funcionó! Sin habla. .

¿Por qué es esto? !

Para que la lectura sea más clara, ¡decidí revertir todo lo anterior y comenzar de nuevo!

El proceso se reproduce de la siguiente manera:

1. Cree 3 VM e instale centOS, redhat y ubuntu respectivamente

2. Cree 3 quintos pares y configure ellos en diferentes segmentos de red, son los siguientes:

3. Agregue NIC a las VM respectivamente y conéctelas al veth correspondiente a la VM. Esta vez, seleccione virtio para el modelo de dispositivo. que la velocidad de la red es más rápida

4. Comience a probar la conectividad de la red. Los resultados son los siguientes

veth0←→conexión centOS

veth1←→conexión redhat.

veth2←→conexión ubuntu

No se puede hacer ping a otras conexiones

Este resultado es bastante satisfactorio

5. Resumen

¿Por qué debería configurarse en diferentes segmentos de red? No puedo entenderlo

Este intento es similar al tercer intento, excepto que el veth del host no establece una dirección IP. El proceso específico es el siguiente:

1. Se omite el proceso de creación de una máquina virtual. Aprobado

2. Configure los pares veth

3. Configure las IP de las dos tarjetas de red recién agregadas en la máquina virtual centOS. a 192.168.4.3/24 y 192.168.5.3 respectivamente /24

4. Haga ping a las dos direcciones IP anteriores en el mismo segmento de red en la máquina virtual, como 192.168.4.5 y 192.168.5.4<. /p>

5. Utilice Wireshark para capturar el paquete, vea el estado de la colección de paquetes de veth3 y veth4, la captura de pantalla es la siguiente. El resultado es que se recibe un paquete ARP.

El resultado del ping 192.168.4.4 se captura en veth3

El resultado del ping 192.168.5.4 se captura en veth4

6. Resumen

La solicitud ARP de la máquina virtual se envía directamente al host a través del par veth, eso es todo