es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

¿Por qué no puedo hacer ping al host (router) en mi red de Virtual Box en Linux?

Tengo un proyecto pequeño de crear y configurar una red como se muestra en la imagen.

Tengo: 3 MVs (1 estación de trabajo y 2 routers).

Lo que necesito: hacer un ping exitoso desde ws11 a r2.

Lo que he hecho: 1) Creado 2 redes internas 2) Editado los archivos /etc/netplan/*.yaml en cada máquina (mostrados abajo) 3) intentado hacer ping a cada una:
– ws11: ping 10.10.0.1 – OK,
– ws11: ping 10.100.0.11 – OK,
– r1: ping 10.100.0.12 – OK,
– ws11: ping 10.100.0.12 – FAIL (pérdida de paquetes del 100%, sin respuesta al ping).

Los resultados del comando route -n en cada máquina se muestran aquí.

A partir de lo que he aprendido recientemente, la ruta del paquete sería: ws11 verifica su tabla de enrutamiento y pasa el paquete a la puerta de enlace (r1), r1 verifica su tabla de enrutamiento y ve que el receptor (10.100.0.12) está en algún lugar de su red y envía el paquete a r2. Pero en realidad no funciona así por alguna razón.

¿Qué no estoy haciendo correctamente? ¿Qué se debe hacer para que funcione? Soy nuevo en redes y agradeceré su ayuda.

Para ws11:

network:
  ethernets:
    enp0s3:
      dhcp4: false
      addresses: [10.10.0.2/18]
      gateway4: 10.10.0.1
  version: 2

Para r1:

network:
  ethernets:
    enp0s3:
      dhcp4: false
      addresses: [10.10.0.1/18]
    enp0s8:
      dhcp4: false
      addresses: [10.100.0.11/16]
  version: 2

Para r2:

network:
  ethernets:
    enp0s3:
      dhcp4: false
      addresses: [10.100.0.12/16]
  version: 2
Tags:  , , , ,

Answer

  1. Avatar for davy.ai

    Basándonos en la información proporcionada, parece que el problema está en la tabla de enrutamiento de r1. Cuando ws11 intenta hacer ping a 10.100.0.12, envía el paquete a r1 ya que ese es su gateway para la red 10.100.0.0. Sin embargo, r1 no tiene una ruta para la red 10.100.0.0 y, por lo tanto, descarta el paquete en lugar de enviarlo a r2.

    Para resolver este problema, necesitamos agregar una ruta en r1 para la red 10.100.0.0 para que sepa hacia dónde enviar los paquetes destinados a esa red. Podemos agregar la ruta ejecutando el siguiente comando en r1:

    sudo ip route add 10.100.0.0/16 via 10.100.0.12
    

    Este comando le indica a r1 que los paquetes destinados a la red 10.100.0.0 deben enviarse a r2 (que tiene la dirección IP 10.100.0.12).

    Después de agregar la ruta, deberíamos poder hacer ping a 10.100.0.12 desde ws11 correctamente.

Comments are closed.