Subnet, VPC, Route Table, Route
- Subnet, VPC, Route Table, Route
1. VPC (Virtual Private Cloud)
Uma VPC é uma rede virtual privada que permite que você crie uma rede isolada dentro da AWS. É como um ambiente de rede que simula uma rede local, mas operando na nuvem. Dentro de uma VPC, você pode controlar IPs, sub-redes, roteamento e segurança, definindo as regras para como os recursos (como EC2, RDS, etc.) se comunicam entre si e com o mundo externo (Internet).
- Endereço IP: Quando você cria uma VPC, você define um range de endereços IP (IPv4 ou IPv6) por meio de uma CIDR block (ex:
10.0.0.0/16), que será dividido em subnets (sub-redes).
2. Subnet (Sub-redes)
Uma subnet é uma subdivisão dentro da VPC. Ela permite segmentar a rede em blocos menores e mais gerenciáveis.
-
Subnets Públicas: São subnets que têm uma rota para a Internet por meio de um Internet Gateway. Recursos, como instâncias EC2, que precisam se comunicar diretamente com a Internet ficam nessas subnets.
-
Subnets Privadas: São subnets que não têm acesso direto à Internet. Elas são usadas para recursos internos, como bancos de dados, onde o acesso externo não é necessário ou desejado. Elas se conectam ao mundo externo através de outros recursos, como um NAT Gateway ou VPC peering.
3. ACL (Access Control List)
Um Network ACL é uma camada de segurança opcional que atua como um firewall de rede para controlar o tráfego de entrada e saída de subnets. Funciona com regras de permissão e negação, aplicáveis a nível de subnet.
-
Regras de Entrada e Saída: ACLs permitem definir regras explícitas para permitir ou negar tráfego em portas específicas, protocolos ou IPs de origem/destino.
-
Ações: As ACLs podem ter duas ações: Allow (permitir) e Deny (negar), e são aplicadas a todo o tráfego que entra ou sai de uma subnet.
-
Ordem das Regras: As regras de ACL são numeradas e avaliadas na ordem de prioridade (da menor para a maior).
4. Routing Table (Tabela de Roteamento)
A tabela de roteamento define para onde o tráfego da VPC ou de uma subnet deve ser enviado. Toda subnet deve estar associada a uma tabela de roteamento. A tabela de roteamento contém "rotas" que dizem para onde o tráfego deve ser direcionado, seja internamente na VPC ou externamente.
- Destinos e Gateways: Cada rota na tabela tem um destination (destino), que é um intervalo de IPs, e um target (alvo), que pode ser outro recurso dentro da AWS, como um Internet Gateway, um NAT Gateway, ou uma instância EC2 específica.
5. Routes (Rotas)
As rotas dentro de uma tabela de roteamento definem o caminho que o tráfego deve seguir. Cada rota mapeia um bloco CIDR para um "target" específico.
-
Rota para a Internet: Em uma subnet pública, uma rota pode ser algo como "0.0.0.0/0" com target para um Internet Gateway (IGW). Isso indica que todo o tráfego não-local deve ir para a Internet.
-
Rota para Subnets Privadas: Em uma subnet privada, as rotas internas podem se comunicar diretamente entre si (por exemplo, o tráfego entre
10.0.1.0/24e10.0.2.0/24dentro da VPC).
Conectando tudo:
-
VPC e Subnets: A VPC é a rede principal. As subnets são divisões dessa rede, podendo ser públicas ou privadas. Cada subnet está associada a uma tabela de roteamento.
-
Subnets e Routing Table: Cada subnet está vinculada a uma tabela de roteamento, que define para onde vai o tráfego originado de dentro dela. Uma subnet pública, por exemplo, terá uma tabela de roteamento que inclui uma rota para um Internet Gateway. Uma subnet privada pode usar um NAT Gateway para acessar a Internet.
-
ACL e Subnets: As ACLs estão associadas a subnets e controlam o tráfego de entrada e saída de forma global, ou seja, aplicando regras para todos os recursos dentro da subnet.
-
Routing Table e Routes: As rotas na tabela de roteamento determinam como o tráfego será direcionado. Se uma instância em uma subnet pública quiser acessar a Internet, a rota "0.0.0.0/0" apontará para o Internet Gateway.
-
VPC e Segurança: Além de ACLs, você pode usar grupos de segurança (security groups) associados diretamente a instâncias, que são outro mecanismo de controle de tráfego, mais focado em níveis de instância.
Exemplo Prático:
- Você cria uma VPC com CIDR
10.0.0.0/16. - Dentro dessa VPC, cria duas subnets:
10.0.1.0/24(subnet pública) e10.0.2.0/24(subnet privada). - A subnet pública tem uma rota para um Internet Gateway que permite o tráfego de e para a Internet.
- A subnet privada pode se conectar à Internet através de um NAT Gateway, mas não aceita conexões iniciadas da Internet.
- ACLs são usadas para definir regras de segurança para essas subnets, enquanto grupos de segurança são usados para controlar o tráfego em nível de instância.