arrow_back

Introducción a Herramientas de redes

Unirse Acceder
Test and share your knowledge with our community!
done
Get access to over 700 hands-on labs, skill badges, and courses

Introducción a Herramientas de redes

Lab 1 hora 15 minutos universal_currency_alt 1 crédito show_chart Introductorio
Test and share your knowledge with our community!
done
Get access to over 700 hands-on labs, skill badges, and courses

GSP016

Labs de autoaprendizaje de Google Cloud

Descripción general

En este lab práctico, aprenderás a realizar tareas básicas de redes en Google Cloud (incluidas instancias de Compute Engine), y en qué puede diferir Google Cloud de una configuración local. Desarrollarás una red y 3 subredes, lo que generará este entorno de estado final:

Entorno de estado final compuesto por tres subredes: subnet-us-central, subnet-europe-west y asia-test-01

Los ejercicios del lab que realizarás están ordenados para reflejar una experiencia común de desarrollador en la nube:

  1. Configurar tu entorno de lab y aprender a trabajar con tu entorno de Google Cloud
  2. Implementar una red común con subredes y varias regiones utilizando herramientas comunes de código abierto para explorar tu red en todo el mundo
  3. Probar y supervisar tu red y tus instancias

Qué aprenderás

  • Conceptos básicos y constructos de las redes de Google Cloud
  • Cómo configurar redes predeterminadas y creadas por el usuario
  • Cómo medir las características de rendimiento y latencia
  • Configuraciones de seguridad básicas de acceso, firewall y enrutamiento

Requisitos previos

  • Conocimiento básico de Compute Engine
  • Conocimiento básico de herramientas de redes y TCP/IP
  • Conocimiento básico de la línea de comandos de Unix/Linux

Configuración y requisitos

Antes de hacer clic en el botón Comenzar lab

Lee estas instrucciones. Los labs son cronometrados y no se pueden pausar. El cronómetro, que comienza a funcionar cuando haces clic en Comenzar lab, indica por cuánto tiempo tendrás a tu disposición los recursos de Google Cloud.

Este lab práctico te permitirá realizar las actividades correspondientes en un entorno de nube real, no en uno de simulación o demostración. Para ello, se te proporcionan credenciales temporales nuevas que utilizarás para acceder a Google Cloud durante todo el lab.

Para completar este lab, necesitarás lo siguiente:

  • Acceso a un navegador de Internet estándar (se recomienda el navegador Chrome)
Nota: Usa una ventana de navegador privada o de Incógnito para ejecutar este lab. Así evitarás cualquier conflicto entre tu cuenta personal y la cuenta de estudiante, lo que podría generar cargos adicionales en tu cuenta personal.
  • Tiempo para completar el lab: Recuerda que, una vez que comienzas un lab, no puedes pausarlo.
Nota: Si ya tienes un proyecto o una cuenta personal de Google Cloud, no los uses en este lab para evitar cargos adicionales en tu cuenta.

Cómo iniciar su lab y acceder a la consola de Google Cloud

  1. Haga clic en el botón Comenzar lab. Si debe pagar por el lab, se abrirá una ventana emergente para que seleccione su forma de pago. A la izquierda, se encuentra el panel Detalles del lab que tiene estos elementos:

    • El botón Abrir la consola de Google
    • Tiempo restante
    • Las credenciales temporales que debe usar para el lab
    • Otra información para completar el lab, si es necesaria
  2. Haga clic en Abrir la consola de Google. El lab inicia recursos y abre otra pestaña en la que se muestra la página de acceso.

    Sugerencia: Ordene las pestañas en ventanas separadas, una junto a la otra.

    Nota: Si ve el diálogo Elegir una cuenta, haga clic en Usar otra cuenta.
  3. Si es necesario, copie el nombre de usuario del panel Detalles del lab y péguelo en el cuadro de diálogo Acceder. Haga clic en Siguiente.

  4. Copie la contraseña del panel Detalles del lab y péguela en el cuadro de diálogo de bienvenida. Haga clic en Siguiente.

    Importante: Debe usar las credenciales del panel de la izquierda. No use sus credenciales de Google Cloud Skills Boost. Nota: Usar su propia Cuenta de Google podría generar cargos adicionales.
  5. Haga clic para avanzar por las páginas siguientes:

    • Acepte los términos y condiciones.
    • No agregue opciones de recuperación o autenticación de dos factores (esta es una cuenta temporal).
    • No se registre para obtener pruebas gratuitas.

Después de un momento, se abrirá la consola de Cloud en esta pestaña.

Nota: Para ver el menú con una lista de los productos y servicios de Google Cloud, haga clic en el Menú de navegación que se encuentra en la parte superior izquierda de la pantalla. Ícono del menú de navegación

Activa Cloud Shell

Cloud Shell es una máquina virtual que cuenta con herramientas para desarrolladores. Ofrece un directorio principal persistente de 5 GB y se ejecuta en Google Cloud. Cloud Shell proporciona acceso de línea de comandos a tus recursos de Google Cloud.

  1. Haz clic en Activar Cloud Shell Ícono de Activar Cloud Shell en la parte superior de la consola de Google Cloud.

Cuando te conectes, habrás completado la autenticación, y el proyecto estará configurado con tu PROJECT_ID. El resultado contiene una línea que declara el PROJECT_ID para esta sesión:

Your Cloud Platform project in this session is set to YOUR_PROJECT_ID

gcloud es la herramienta de línea de comandos de Google Cloud. Viene preinstalada en Cloud Shell y es compatible con la función de autocompletado con tabulador.

  1. Puedes solicitar el nombre de la cuenta activa con este comando (opcional):
gcloud auth list
  1. Haz clic en Autorizar.

  2. Ahora, el resultado debería verse de la siguiente manera:

Resultado:

ACTIVE: * ACCOUNT: student-01-xxxxxxxxxxxx@qwiklabs.net To set the active account, run: $ gcloud config set account `ACCOUNT`
  1. Puedes solicitar el ID del proyecto con este comando (opcional):
gcloud config list project

Resultado:

[core] project = <project_ID>

Resultado de ejemplo:

[core] project = qwiklabs-gcp-44776a13dea667a6 Nota: Para obtener toda la documentación de gcloud, consulta la guía con la descripción general de gcloud CLI en Google Cloud.

Información sobre las regiones y zonas

Algunos recursos de Compute Engine se encuentran en regiones o zonas. Una región es una ubicación geográfica específica donde puedes ejecutar tus recursos. Cada región tiene una o más zonas. Por ejemplo, la región “us-central1” corresponde a una región en el centro de Estados Unidos que tiene las zonas us-central1-a, us-central1-b, us-central1-c y us-central1-f.

Regiones Zonas
Oeste de EE.UU. us-west1-a, us-west1-b
EE.UU. central us-central1-a, us-central1-b, us-central1-d, us-central1-f
Este de EE.UU. us-east1-b, us-east1-c, us-east1-d
Europa Occidental europe-west1-b, europe-west1-c, europe-west1-d
Asia oriental asia-east1-a, asia-east1-b, asia-east1-c

Los recursos ubicados en una zona se denominan recursos zonales. Las instancias de máquinas virtuales y los discos persistentes se alojan en una zona. Un disco persistente y una instancia de máquina virtual deben ubicarse en la misma zona para poder conectarlos. De forma similar, para asignar una dirección IP estática a una instancia, ambas deben ubicarse en la misma región.

Obtén más información sobre las regiones y zonas, y revisa una lista completa de ellas en la documentación de Regiones y zonas de la página de Compute Engine.

Conceptos sobre redes de Google Cloud

Las redes de Google Cloud Platform proporcionan conexiones de datos desde tus recursos en la nube (principalmente instancias de Compute Engine) y hacia ellos. Es fundamental que protejas tus redes para garantizar la seguridad de tus datos y controlar el acceso a tus recursos.

Google Cloud Platform admite proyectos, redes y subredes para proporcionar un aislamiento flexible y lógico de los recursos no relacionados.

Proyectos - Redes - Ventana Subredes

Los proyectos son los contenedores más externos y se usan para agrupar los recursos que tienen un mismo límite de confianza. Muchos desarrolladores asignan proyectos a equipos, debido a que cada proyecto tiene sus propias políticas de acceso (IAM) y listas de miembros. Además, los proyectos sirven para recopilar información de cuotas y facturación que muestra el consumo de recursos. Los proyectos tienen redes con subredes, reglas de firewall y rutas (consulta los siguientes diagramas de la arquitectura para ver ejemplos).

Mapa del proyecto

Las redes conectan directamente tus recursos entre sí y con el mundo exterior. Las redes con firewall también contienen las políticas de acceso para las conexiones entrantes y salientes. Las redes pueden ser globales (con escalabilidad horizontal en varias regiones) o regionales (con latencia baja en una sola región).

Las subredes permiten agrupar recursos relacionados, como instancias de Compute Engine, en espacios de direcciones RFC 1918 privados. Las subredes solo pueden ser regionales. Una subred se puede configurar en modo automático o personalizado.

  • Las redes en modo automático tienen una subred por región, que cuenta con una puerta de enlace y un rango de IP predeterminado. Estas subredes se crean automáticamente cuando generas la red en modo automático, y cada subred tiene el mismo nombre que la red general.
  • Las redes en modo personalizado no generan subredes en el momento de su creación. Para crear una instancia en una red en modo personalizado, primero debes generar una subred en esa región y, a continuación, especificar el rango de IP. Una red en modo personalizado puede tener cero, una o muchas subredes por región.

Configura tu región y zona

Algunos recursos de Compute Engine se encuentran en regiones y zonas. Una región es una ubicación geográfica específica donde puedes ejecutar tus recursos. Cada región tiene una o más zonas.

Ejecuta los siguientes comandos de gcloud en la consola de Cloud para establecer la región y la zona predeterminadas de tu lab:

gcloud config set compute/zone "{{{project_0.startup_script.primary_zone | Zone}}}" export ZONE=$(gcloud config get compute/zone) gcloud config set compute/region "{{{project_0.startup_script.primary_region | Region}}}" export REGION=$(gcloud config get compute/region)

Tarea 1. Revisa la red predeterminada

Cuando se crea un proyecto nuevo, una configuración de red predeterminada proporciona a cada región una red con subredes automáticas. Puedes crear hasta cuatro redes adicionales en un proyecto. Las redes adicionales pueden ser redes con subredes automáticas, redes con subredes personalizadas o redes heredadas.

A cada instancia creada dentro de una subred se le asigna una dirección IPv4 del rango de esa subred.

  • Revisa tu red. Haz clic en el menú de navegación > Red de VPC.

En la página de redes de VPC se muestra una lista de redes con su información asociada, como rangos de direcciones IP y puertas de enlace

Firewalls

Si deseas obtener más información para usar reglas de firewall para aislar subredes, consulta la documentación de subredes y reglas de firewall.

Cada red tiene un firewall predeterminado que bloquea todo el tráfico entrante a las instancias. Para permitir que ingrese tráfico a una instancia, debes crear reglas de "permiso" para el firewall. Además, el firewall predeterminado permite el tráfico desde las instancias, a menos que lo configures para bloquear las conexiones de salida con una configuración de firewall de "salida". Por lo tanto, según la configuración predeterminada, puedes crear reglas de "permiso" para el tráfico que deseas que ingrese y reglas de "denegación" para el tráfico al que deseas restringir su salida. También puedes crear una política de denegación predeterminada para la salida y prohibir completamente las conexiones externas.

En general, se recomienda configurar la regla de firewall menos permisiva que sea compatible con el tipo de tráfico que intentas pasar. Por ejemplo, si necesitas permitir que llegue tráfico a algunas instancias, pero restringir su llegada a otras, crea reglas que solo permitan el tráfico a las instancias deseadas. Esta configuración más restrictiva es más predecible que una regla de firewall amplia que permite el tráfico a todas las instancias. Si deseas tener reglas de "denegación" que anulen ciertas reglas de "permiso", puedes configurar niveles de prioridad en cada regla, y la regla con la prioridad más baja se evaluará primero. Crear conjuntos grandes y complejos de reglas de anulación puede causar el permiso o bloqueo incorrecto del tráfico.

La red predeterminada creó automáticamente reglas de firewall, que se muestran a continuación. Ningún tipo de red creada manualmente creó reglas de firewall en forma automática. Para todas las redes, excepto la predeterminada, debes crear las reglas de firewall que necesites.

Las reglas de firewall de entrada creadas automáticamente para la red predeterminada son las siguientes:

default-allow-internal

Permite conexiones de red de cualquier protocolo y puerto entre instancias de la red.

default-allow-ssh

Permite conexiones SSH de cualquier fuente a cualquier instancia de la red a través del puerto TCP 22.

default-allow-rdp

Permite conexiones RDP de cualquier fuente a cualquier instancia de la red a través del puerto TCP 3389.

default-allow-icmp

Permite el tráfico ICMP de cualquier fuente a cualquier instancia de la red.

  • Para revisar las reglas de firewall predeterminadas, en la consola, haz clic en el menú de navegación > Red de VPC > Firewall.

En la página Firewall, se muestra una lista de reglas de firewall con sus tipos, destinos, filtros, protocolos/puertos, prioridades y redes correspondientes

Ruta de red

Todas las redes tienen rutas creadas automáticamente a Internet (ruta predeterminada) y a los rangos de IP de la red. Los nombres de las rutas se generan automáticamente y se verán diferentes en cada proyecto.

  • Para revisar las rutas predeterminadas, haz clic en el menú de navegación > Red de VPC > Rutas.

En la página Rutas, se muestra una lista de rutas con sus descripciones, rangos de IP de destino, niveles de prioridad y redes correspondientes

Tarea 2. Crea una red personalizada

Crea una nueva red con rangos de subredes personalizadas

Cuando asignes manualmente rangos de subredes, primero crea una red personalizada con subredes y, luego, crea las subredes que desees dentro de una región. No tienes que especificar subredes para todas las regiones de inmediato, o puedes directamente no hacerlo, pero no puedes crear instancias en regiones sin subredes definidas.

Cuando crees una subred nueva, su nombre debe ser único en ese proyecto para esa región, incluso entre las redes. El mismo nombre puede aparecer dos veces en un proyecto, siempre que cada uno se encuentre en una región diferente. Debido a que es una subred, no hay un rango IPv4 de nivel de red o una IP de puerta de enlace, por lo que no se mostrará ninguno.

Puedes crear tu red personalizada con Console o con Cloud Shell. Te mostraremos ambos casos, pero debes decidir qué método usar mientras haces este lab. Por ejemplo, no puedes abordar una sección usando las instrucciones para la consola y, luego, hacer la misma sección usando la línea de comandos de gcloud.

Tarea 3. Crea una red personalizada con la consola

Nota: Si prefieres usar la línea de comandos, omite esta sección y continúa con Crea una red personalizada con Cloud Shell.
  1. Para crear una red personalizada, haz clic en el menú de navegación > Red de VPC.

  2. Haz clic en Crear red de VPC y asígnale el nombre taw-custom-network.

  3. En la pestaña Personalizada, crea lo siguiente:

    • Nombre de la subred: subnet-
    • Región:
    • Rango de direcciones IP: 10.0.0.0/16
  4. Haz clic en Listo.

    El cuadro de diálogo Crear una red de VPC propagado

  5. Ahora haz clic en Agregar subred y agrega 2 subredes más a sus regiones respectivas:

    • subnet-, , 10.1.0.0/16
    • subnet-, , 10.2.0.0/16
  6. Haz clic en Crear para finalizar.

En este punto, la red tiene rutas a Internet y a cualquier instancia que puedas crear. Sin embargo, no tiene reglas de firewall que permitan el acceso a instancias, ni siquiera desde otras instancias. Para permitir el acceso, debes crear reglas de firewall.

Dirígete a la sección Agrega reglas de firewall.

Tarea 4. Crea una red personalizada con Cloud Shell

Nota: Si acabas de crear una red con la consola, no hagas el mismo ejercicio con Cloud Shell. En su lugar, vuelve a realizar el lab para practicar el uso de la línea de comandos de gcloud.
  • Ingresa el siguiente comando en Cloud Shell para crear la red personalizada:
gcloud compute networks create taw-custom-network --subnet-mode custom

Resultado:

NAME MODE IPV4_RANGE GATEWAY_IPV4 taw-custom-network custom Instances on this network will not be reachable until firewall rules are created. As an example, you can allow all internal traffic between instances as well as SSH, RDP, and ICMP by running: $ gcloud compute firewall-rules create --network taw-custom-network --allow tcp,udp,icmp --source-ranges $ gcloud compute firewall-rules create --network taw-custom-network --allow tcp:22,tcp:3389,icmp

Ahora, crea subredes para tu nueva red personalizada. Crearás tres.

  1. Crea subnet- con un prefijo IP:
gcloud compute networks subnets create subnet-{{{project_0.startup_script.primary_region | Region}}} \ --network taw-custom-network \ --region {{{project_0.startup_script.primary_region | Region}}} \ --range 10.0.0.0/16

Resultado:

Created [https://www.googleapis.com/compute/v1/projects/cloud-network-module-101/regions/{{{project_0.startup_script.primary_region | Region}}}/subnetworks/subnet-{{{project_0.startup_script.primary_region | Region}}}]. NAME REGION NETWORK RANGE subnet-{{{project_0.startup_script.primary_region | Region}}} {{{project_0.startup_script.primary_region | Region}}} taw-custom-network 10.0.0.0/16
  1. Crea subnet- con un prefijo IP:
gcloud compute networks subnets create subnet-{{{project_0.startup_script.secondary_region | Region}}} \ --network taw-custom-network \ --region {{{project_0.startup_script.secondary_region | Region}}} \ --range 10.1.0.0/16

Resultado:

Created [https://www.googleapis.com/compute/v1/projects/cloud-network-module-101/regions/{{{project_0.startup_script.secondary_region | Region}}}/subnetworks/subnet-{{{project_0.startup_script.secondary_region | Region}}}]. NAME REGION NETWORK RANGE subnet-{{{project_0.startup_script.secondary_region | Region}}} {{{project_0.startup_script.secondary_region | Region}}} taw-custom-network 10.1.0.0/16
  1. Crea subnet- con un prefijo IP:
gcloud compute networks subnets create subnet-{{{project_0.startup_script.third_region | Region}}} \ --network taw-custom-network \ --region {{{project_0.startup_script.third_region | Region}}} \ --range 10.2.0.0/16

Resultado:

Created [https://www.googleapis.com/compute/v1/projects/cloud-network-module-101/regions/{{{project_0.startup_script.third_region | Region}}}/subnetworks/subnet-{{{project_0.startup_script.third_region | Region}}}]. NAME REGION NETWORK RANGE subnet-{{{project_0.startup_script.secondary_region | Region}}} {{{project_0.startup_script.secondary_region | Region}}} taw-custom-network 10.2.0.0/16
  1. Haz una lista de tus redes:
gcloud compute networks subnets list \ --network taw-custom-network

Si creaste una red con subredes automáticas en la sección anterior, también se incluirán esas subredes en la lista.

Resultado:

NAME REGION NETWORK RANGE subnet-{{{project_0.startup_script.third_region | Region}}} {{{project_0.startup_script.third_region | Region}}} taw-custom-network 10.1.0.0/16 subnet-{{{project_0.startup_script.secondary_region | Region}}} {{{project_0.startup_script.secondary_region | Region}}} taw-custom-network 10.2.0.0/16 subnet-{{{project_0.startup_script.primary_region | Region}}} {{{project_0.startup_script.primary_region | Region}}} taw-custom-network 10.0.0.0/16

En este punto, la red tiene rutas a Internet y a cualquier instancia que puedas crear. Sin embargo, no tiene reglas de firewall que permitan el acceso a instancias, ni siquiera desde otras instancias. Para permitir el acceso, debes crear reglas de firewall.

Tarea 5. Agrega reglas de firewall

Para permitir el acceso a instancias de VM, debes aplicar reglas de firewall. Usaremos una etiqueta de instancia para aplicar la regla de firewall a tus instancias de VM. La regla de firewall se aplicará a cualquier VM que use la misma etiqueta de instancia.

Nota: Las redes y los firewalls usan las etiquetas de instancias para aplicar determinadas reglas de firewall a las instancias de VM etiquetadas. Por ejemplo, si hay varias instancias que realizan la misma tarea, como entregar un sitio web grande, puedes etiquetar esas instancias con una palabra o término en común y, luego, usar esa etiqueta para permitir el acceso HTTP a esas instancias con una regla de firewall.

Las etiquetas también se reflejan en el servidor de metadatos, por lo que puedes usarlas para las aplicaciones que se ejecutan en tus instancias.
  • Para empezar, abre el firewall para permitir las solicitudes HTTP de Internet. Luego, agrega más reglas de firewall. Las reglas de firewall se pueden agregar usando la consola o Cloud Shell.

Agrega reglas de firewall por medio de la consola

  1. En la consola, ve a Redes de VPC en el menú y haz clic en la red taw-custom-networking:

Se destaca taw-custom-networking en la página Redes de VPC

  1. Haz clic en la pestaña Firewalls y, luego, en Agregar regla de firewall.

Se destaca la pestaña Reglas de firewall y el botón Agregar regla de firewall en la página de detalles de las redes de VPC

  1. Ingresa la siguiente información:

Campo

Valor

Comentarios

Nombre

nw101-allow-http

Nombre de la nueva regla

Destinos

Etiquetas de destino especificadas

Instancias a las que se aplica la regla de firewall

Etiquetas de destino

http

La etiqueta que creamos

Filtro de origen

Rangos IPv4

Abriremos el firewall para cualquier dirección IP de Internet.

Rangos IPv4 de origen

0.0.0.0/0

Abrirás el firewall para cualquier dirección IP de Internet.

Protocolos y puertos

Selecciona Protocolos y puertos especificados, marca la casilla tcp y escribe 80

Solo HTTP

Tu pantalla se verá de la siguiente manera:

El cuadro de diálogo Crear una regla de firewall completado

  1. Haz clic en Crear y espera a que el comando funcione correctamente. A continuación, crearás las reglas de firewall adicionales que necesitarás.

Agrega reglas de firewall con Cloud Shell

Nota: Si acabas de crear una red con la consola, no hagas el mismo ejercicio con Cloud Shell. En su lugar, vuelve a realizar el lab para practicar el uso de la línea de comandos de gcloud.
  • Para crear reglas de firewall en Cloud Shell, ejecuta lo siguiente:
gcloud compute firewall-rules create nw101-allow-http \ --allow tcp:80 --network taw-custom-network --source-ranges 0.0.0.0/0 \ --target-tags http

Resultado:

El resultado en el que el nombre es nw101-allow-http, la red es taw-custom-network, la dirección es entrada, el nivel de prioridad es 1,000 y el estado permitido es tcp:80

Crea reglas de firewall adicionales

Estas reglas de firewall adicionales permitirán el ICMP, la comunicación interna, el SSH y el RDP. Puedes crearlas usando la consola (o Cloud Shell). Recuerda usar un solo método para cada tipo de regla de firewall. No puedes usar ambos.

  • ICMP

Campo

Valor

Comentarios

Nombre

nw101-allow-icmp

Nombre de la nueva regla

Destinos

Etiquetas de destino especificadas

Selecciona una opción del menú desplegable Destinos

Etiquetas de destino

reglas

etiqueta

Filtro de origen

Rangos IPv4

Abriremos el firewall para cualquier dirección IP de esta lista.

Rangos IPv4 de origen

0.0.0.0/0

Abriremos el firewall para cualquier dirección IP de Internet.

Protocolos y puertos

Selecciona Protocolos y puertos especificados, otros protocolos y luego escribe icmp

Los protocolos y puertos a los que se aplica el firewall

(Comandos de Cloud Shell)

gcloud compute firewall-rules create "nw101-allow-icmp" --allow icmp --network "taw-custom-network" --target-tags rules
  • Comunicación interna

Campo

Valor

Comentarios

Nombre

nw101-allow-internal

Nombre de la nueva regla

Destinos

Todas las instancias en la red

Selecciona una opción del menú desplegable Destinos

Filtro de origen

Rangos IPv4

El filtro utilizado para aplicar la regla a fuentes de tráfico específicas

Rangos IPv4 de origen

10.0.0.0/16,

10.1.0.0/16,

10.2.0.0/16

Abriremos el firewall para cualquier dirección IP de Internet.

Protocolos y puertos

Selecciona Protocolos y puertos especificados, tcp y escribe 0-65535. Luego, marca udp y escribe 0-65535. A continuación, marca Otros protocolos y escribe icmp

Permite Tcp:0-65535, udp:0-65535,icmp

(Comandos de Cloud Shell)

gcloud compute firewall-rules create "nw101-allow-internal" --allow tcp:0-65535,udp:0-65535,icmp --network "taw-custom-network" --source-ranges "10.0.0.0/16","10.2.0.0/16","10.1.0.0/16"
  • SSH

Campo

Valor

Comentarios

Nombre

nw101-allow-ssh

Nombre de la nueva regla

Destinos

Etiquetas de destino especificadas

ssh

Etiquetas de destino

ssh

Las instancias a las que aplicas la regla de firewall

Filtro de origen

Rangos IPv4

El filtro utilizado para aplicar la regla a fuentes de tráfico específicas

Rangos IPv4 de origen

0.0.0.0/0

Abriremos el firewall para cualquier dirección IP de Internet.

Protocolos y puertos

Selecciona Protocolos y puertos especificados, marca la casilla tcp y, luego, escribe 22

Permite tcp:22

(Comandos de Cloud Shell)

gcloud compute firewall-rules create "nw101-allow-ssh" --allow tcp:22 --network "taw-custom-network" --target-tags "ssh"
  • RDP

Campo

Valor

Comentarios

Nombre

nw101-allow-rdp

Nombre de la nueva regla

Destinos

Todas las instancias en la red

Selecciona una opción del menú desplegable Destinos

Filtro de origen

Rangos IPv4

Filtra direcciones IP

Rangos IPv4 de origen

0.0.0.0/0

Abriremos el firewall para cualquier dirección IP de Internet.

Protocolos y puertos

Selecciona Protocolos y puertos especificados, marca la casilla tcp y, luego, escribe 3389

Permite tcp:3389

(Comandos de Cloud Shell)

gcloud compute firewall-rules create "nw101-allow-rdp" --allow tcp:3389 --network "taw-custom-network"
  • Usa la consola para revisar las reglas de firewall en tu red. Se verá de la siguiente manera:

La página Reglas de firewall con pestañas en el cuadro de diálogo de detalles de la red de VPC

Nota: ¿Qué sucede con esas rutas que veo en la consola de redes?

Las Herramientas de redes de Google Cloud utilizan rutas para dirigir paquetes entre subredes y hacia Internet. Cada vez que se crea una subred (o se crea previamente) en tu red, se crean rutas en cada región automáticamente para permitir el enrutamiento de paquetes entre subredes. Estas no se pueden modificar.

Se pueden crear rutas adicionales para enviar tráfico a una instancia, una puerta de enlace VPN o una puerta de enlace de Internet predeterminada. Estas rutas se pueden modificar para adaptar la arquitectura de red deseada. Las rutas y los firewalls trabajan en conjunto para garantizar que tu tráfico llegue adonde necesita.

Haz clic en Revisar mi progreso para verificar el objetivo.

Crear una red personalizada, subredes y reglas de firewall

Tarea 6. Conéctate a las VMs de tu lab y comprueba la latencia

  • Haz clic en Redes de VPC en el menú de la izquierda para ver toda tu red. La red taw-custom-network tiene tres subredes y se aplicaron las reglas de firewalls.

Deberías ver lo siguiente:

En la página Red de VPC se muestra una lista de redes y las subredes, el modo, los rangos de direcciones IP, las puertas de enlace, las reglas de firewall y los estados de enrutamiento dinámico global correspondientes

Los próximos pasos son crear una VM en cada subred y asegurarse de que puedas conectarte a ellas.

Cómo crear una VM en cada zona

En esta sección del lab, trabajarás en Cloud Shell.

  1. Ejecuta estos comandos para crear una instancia llamada us-test-01 en la subred subnet-:
gcloud compute instances create us-test-01 \ --subnet subnet-{{{project_0.startup_script.primary_region | Region}}} \ --zone {{{project_0.startup_script.primary_zone | ZONE}}} \ --machine-type e2-standard-2 \ --tags ssh,http,rules

Asegúrate de anotar la IP externa para usarla más adelante en este lab.

Resultado:

Created [https://www.googleapis.com/compute/v1/projects/cloud-network-module-101/zones/{{{project_0.startup_script.primary_zone | ZONE}}}/instances/us-test-01]. NAME ZONE MACHINE_TYPE PREEMPTIBLE INTERNAL_IP EXTERNAL_IP STATUS us-test-01 {{{project_0.startup_script.primary_zone | ZONE}}} e2-standard-2 10.0.0.2 104.198.230.22 RUNNING
  1. Ahora crea las VMs us-test-02 y us-test-03 en sus subredes correlacionadas:
gcloud compute instances create us-test-02 \ --subnet subnet-{{{project_0.startup_script.secondary_region | REGION}}} \ --zone {{{project_0.startup_script.secondary_zone | ZONE}}} \ --machine-type e2-standard-2 \ --tags ssh,http,rules gcloud compute instances create us-test-03 \ --subnet subnet-{{{project_0.startup_script.third_region | REGION}}} \ --zone {{{project_0.startup_script.third_zone | ZONE}}} \ --machine-type e2-standard-2 \ --tags ssh,http,rules

Haz clic en Revisar mi progreso para verificar el objetivo.

Crear tres instancias en zonas especificadas para traceroute y pruebas de rendimiento

Verifica que puedas conectarte a tu VM

Ahora, haz algunos ejercicios para probar la conexión a tus VM.

  1. Vuelve a la consola y dirígete a Compute Engine.

  2. Haz clic en el botón SSH correspondiente a la instancia us-test-01. Se abrirá una conexión SSH a la instancia en una nueva ventana.

  3. En la ventana SSH de us-test-01, ingresa los siguientes comandos para usar un eco de ICMP en us-test-02, y agrega la dirección IP externa para la VM en línea:

ping -c 3 <us-test-02-external-ip-address> Nota: Puedes ubicar la IP externa de tus máquinas virtuales en la pestaña del navegador de Compute Engine en el campo IP externa.

La columna de IP externa destacada con tres direcciones IP

Tus direcciones IP serán diferentes a las de la imagen.
  1. Ejecuta este comando para usar un eco de ICMP en us-test-03, y agrega la dirección IP externa para la VM en línea:
ping -c 3 <us-test-03-external-ip-address>

Resultado de ejemplo:

PING 35.187.149.67 (35.187.149.67) 56(84) bytes of data. 64 bytes from 35.187.149.67: icmp_seq=1 ttl=76 time=152 ms 64 bytes from 35.187.149.67: icmp_seq=2 ttl=76 time=152 ms 64 bytes from 35.187.149.67: icmp_seq=3 ttl=76 time=152 ms
  1. Ahora comprueba que SSH también funcione para las instancias us-test-02 y us-test-03. Prueba un eco de ICMP en us-test-01.

Haz ping para medir la latencia

Haz ping para medir la latencia entre instancias de todas las regiones.

  • Para observar la latencia desde la región central de EE.UU. hasta la región de Europa occidental, ejecuta el siguiente comando después de abrir una ventana SSH en us-test-01:
ping -c 3 us-test-02.{{{project_0.startup_script.secondary_zone | ZONE}}}

Resultado del comando:

PING us-test-02.{{{project_0.startup_script.secondary_zone | ZONE}}}.c.cloud-network-module-101.internal (10.2.0.2) 56(84) bytes of data. 64 bytes from us-test-02.{{{project_0.startup_script.secondary_zone | ZONE}}}.c.cloud-network-module-101.internal (10.2.0.2): icmp_seq=1 ttl=64 time=105 ms 64 bytes from us-test-02.{{{project_0.startup_script.secondary_zone | ZONE}}}.c.cloud-network-module-101.internal (10.2.0.2): icmp_seq=2 ttl=64 time=104 ms 64 bytes from us-test-02.{{{project_0.startup_script.secondary_zone | ZONE}}}.c.cloud-network-module-101.internal (10.2.0.2): icmp_seq=3 ttl=64 time=104 ms

La latencia que recibes es el “tiempo de ida y vuelta” (RTT), esto es el tiempo que tarda el paquete en llegar desde us-test-01 hasta us-test-02.

Para probar la conectividad, el ping utiliza mensajes de solicitud y respuesta de eco de ICMP.

Nota: Aspectos que debes considerar

¿Cuál es la latencia que observas entre las regiones? ¿Qué esperarías en condiciones óptimas? ¿Qué tiene de especial la conexión de “us-test-02” con “us-test-03”?
Nota: Sobre el DNS interno, ¿cómo se proporciona el DNS a las instancias de VM?

Cada instancia tiene un servidor de metadatos que también actúa como agente de resolución de DNS para esa instancia. Se realizan búsquedas de DNS para encontrar nombres de instancias. El servidor de metadatos almacena toda la información de DNS para la red local y consulta los servidores DNS públicos de Google respecto a cualquier dirección fuera de la red local.

Un nombre de dominio completamente calificado (FQDN) interno para una instancia se ve de esta manera: hostName.[ZONE].c.[PROJECT_ID].internal.

Siempre puedes conectarte de una instancia a otra con este FQDN. Si quieres conectarte a una instancia utilizando, por ejemplo, solo hostName, necesitas información del agente de resolución de DNS interno que se proporciona como parte de Compute Engine.

Tarea 7. Pruebas con traceroute y de rendimiento

Ejercicio opcional

Traceroute es una herramienta que se usa para seguir la ruta entre dos hosts. Un traceroute puede ser un primer paso útil para descubrir varios tipos de problemas de red. Los ingenieros de asistencia o de red a menudo solicitan un traceroute cuando están diagnosticando problemas de red.

Nota: Funcionalidad

Traceroute muestra todos los saltos de capa 3 (capa de enrutamiento) entre los hosts. Esto se logra con el envío de paquetes al destino remoto con el aumento progresivo del valor de TTL (tiempo de actividad), comenzando en 1. El campo TTL es un campo en el paquete de IP que disminuye de a uno en cada enrutador. Una vez que el TTL llega a cero, el paquete se descarta, y se muestra un mensaje ICMP de TTL excedido al remitente. Este enfoque se usa para evitar bucles de enrutamiento; los paquetes no pueden repetirse continuamente porque el campo TTL, finalmente, disminuirá a 0. Esto solo debería suceder en situaciones anormales, ya que, según la configuración predeterminada, el SO establece el TTL con un valor alto (64, 128, 255 o similares).

Por lo tanto, traceroute primero envía paquetes con un valor TTL de 1, luego con un valor TTL de 2, etc., lo que hará que estos paquetes caduquen en el primer, segundo, etc. enrutador de la ruta. A continuación, recupera la IP/host de origen del mensaje ICMP de TTL excedido para mostrar el nombre/IP del salto intermedio. Una vez que el TTL sea lo suficientemente alto, el paquete llega al destino, y el destino responde.

El tipo de paquete enviado varía según la implementación. En Linux, los paquetes UDP se envían a un puerto alto sin utilizar. Entonces, el destino final responde con un mensaje de ICMP de “Port Unreachable”. De forma predeterminada, Windows y la herramienta mtr usan solicitudes de eco ICMP (como ping), por lo que el destino final responde con una respuesta de eco ICMP.

Ahora, prueba configurar un traceroute en una de tus máquinas virtuales.

  1. Para este paso, vuelve a usar las VMs de us-test-01 y de us-test-02 y establece una conexión SSH a ambas.

  2. Instala estas herramientas de rendimiento en la ventana SSH para us-test-01:

sudo apt-get update sudo apt-get -y install traceroute mtr tcpdump iperf whois host dnsutils siege traceroute www.icann.org
  1. Ahora prueba hacerlo con otros destinos y también desde otras fuentes:

    • VM en la misma región o en otra (eu1-vm, asia1-vm, w2-vm)
    • www.wikipedia.org
    • www.adcash.com
    • bad.horse (funciona mejor si aumenta al máximo el TTL, para el traceroute -m 255 bad.horse)
    • Cualquier otra opción que se te pueda ocurrir
  2. Para detener traceroute, presiona Ctrl + C en la ventana SSH y regresa a la línea de comandos.

Nota: Aspectos que debes considerar

¿Qué observas en los diferentes traceroutes?

Tarea 8. Usa iperf para probar el rendimiento

Entre dos hosts

Ejercicio opcional

Cuando uses iperf para probar el rendimiento entre dos hosts, debes configurar un lado como servidor iperf para que acepte conexiones.

Nota: Los siguientes comandos transfieren gigabytes de tráfico entre regiones, que se cobran según las tarifas de salida de Internet. Ten en cuenta esto cuando los uses. Si no estás en un proyecto de la lista de entidades permitidas o en la prueba gratuita, te recomendamos omitir esta sección o darle una lectura rápida (los costos deben ser inferiores a $1).

Haz una prueba muy sencilla:

  1. Establece una conexión SSH a us-test-02 y, luego, instala las herramientas de rendimiento:
sudo apt-get update sudo apt-get -y install traceroute mtr tcpdump iperf whois host dnsutils siege
  1. Establece una conexión SSH a us-test-01 y ejecuta lo siguiente:
iperf -s #run in server mode
  1. En la conexión SSH a us-test-02, ejecuta iperf:
iperf -c us-test-01.{{{project_0.startup_script.primary_zone | ZONE}}} #run in client mode

Verás algunos resultados como estos:

Client connecting to eu-vm, TCP port 5001 TCP window size: 45.0 KByte (default) [ 3] local 10.20.0.2 port 35923 connected with 10.30.0.2 port 5001 [ ID] Interval Transfer Bandwidth [ 3] 0.0-10.0 sec 298 MBytes 249 Mbits/sec
  1. En us-test-01, usa Ctrl + C para detener la sesión del servidor cuando termines.

Entre las VMs dentro de una región

Ejercicio opcional

Ahora implementarás otra instancia (us-test-04) en una zona diferente de us-test-01. Verás que, dentro de una región, el ancho de banda está restringido por el límite de salida de 2 Gbit/s por núcleo.

  1. En Cloud Shell, crea us-test-04:
gcloud compute instances create us-test-04 \ --subnet subnet-{{{project_0.startup_script.primary_region | REGION}}} \ --zone {{{project_0.startup_script.primary_zone_1 | ZONE}}} \ --tags ssh,http
  1. Establece una conexión SSH a us-test-04 y, luego, instala herramientas de rendimiento:
sudo apt-get update sudo apt-get -y install traceroute mtr tcpdump iperf whois host dnsutils siege

Entre las regiones, se alcanzan límites mucho más bajos, principalmente debido a los límites en el tamaño de la ventana de TCP y al rendimiento de transmisión única. Puedes aumentar el ancho de banda entre hosts utilizando otros parámetros, como UDP.

  1. En la conexión SSH a us-test-02, ejecuta lo siguiente:
iperf -s -u #iperf server side
  1. En la conexión SSH a us-test-01, ejecuta lo siguiente:
iperf -c us-test-02.{{{project_0.startup_script.secondary_zone | ZONE}}} -u -b 2G #iperf client side - send 2 Gbits/s

Esto debería lograr una mayor velocidad entre la UE y los EE.UU. Se pueden lograr velocidades aún más altas ejecutando muchos iperfs de TCP en paralelo. Probemos esto.

  1. En la ventana SSH de us-test-01, ejecuta lo siguiente:
iperf -s
  1. En la ventana SSH de us-test-02, ejecuta lo siguiente:
iperf -c us-test-01.{{{project_0.startup_script.primary_zone | ZONE}}} -P 20

El ancho de banda combinado debería ser muy cercano al ancho de banda máximo alcanzable.

  1. Prueba algunas combinaciones más. Si usas Linux en tu laptop, puedes hacer pruebas allí (también puedes probar iperf3, que está disponible para muchos SO, pero esto no forma parte del lab).

Como puedes ver, para alcanzar el ancho de banda máximo, no basta con solo ejecutar una transmisión de TCP (por ejemplo, copia de archivos); necesitas tener varias sesiones de TCP en paralelo. Estos son los motivos: parámetros de TCP, como el tamaño de la ventana, y funciones como Slow Start.

Para obtener más información sobre este y todos los demás temas de TCP/IP, consulta el recurso TCP/IP Illustrated.

Las herramientas como bbcp pueden ayudar a copiar archivos lo más rápido posible, ya que paralelizan las transferencias y usan el tamaño de ventana configurable.

Tarea 9. Pon a prueba tus conocimientos

Finaliza el lab

Cuando completes el lab, haz clic en Finalizar lab. Tu cuenta y los recursos que usaste se quitaron de la plataforma del lab.

Tendrás la oportunidad de calificar tu experiencia en el lab. Selecciona la cantidad de estrellas que corresponda, ingresa un comentario y haz clic en Enviar.

La cantidad de estrellas indica lo siguiente:

  • 1 estrella = Muy insatisfecho
  • 2 estrellas = Insatisfecho
  • 3 estrellas = Neutral
  • 4 estrellas = Satisfecho
  • 5 estrellas = Muy satisfecho

Puedes cerrar el cuadro de diálogo si no deseas proporcionar comentarios.

Para enviar comentarios, sugerencias o correcciones, usa la pestaña Asistencia.

Realiza tu próximo lab

Continúa tu aprendizaje sobre las redes en la nube con Redes de VPC múltiples o consulta las sugerencias a continuación:

Cuando tengas todo listo, intenta realizar la Quest Networking fundamentals in the Google Cloud.

Capacitación y certificación de Google Cloud

Recibe la formación que necesitas para aprovechar al máximo las tecnologías de Google Cloud. Nuestras clases incluyen habilidades técnicas y recomendaciones para ayudarte a avanzar rápidamente y a seguir aprendiendo. Para que puedas realizar nuestros cursos cuando más te convenga, ofrecemos distintos tipos de capacitación de nivel básico a avanzado: a pedido, presenciales y virtuales. Las certificaciones te ayudan a validar y demostrar tus habilidades y tu conocimiento técnico respecto a las tecnologías de Google Cloud.

Actualización más reciente del manual: 11 de septiembre de 2023

Prueba más reciente del lab: 11 de septiembre de 2023

Copyright 2024 Google LLC. All rights reserved. Google y el logotipo de Google son marcas de Google LLC. Los demás nombres de productos y empresas pueden ser marcas de las respectivas empresas a las que estén asociados.