Código executável completo e demonstrações práticas de redes e servidores web.


🗺️ Fluxo de Funcionamento

flowchart TD
    OSI["Modelo OSI (7 Camadas)"] --> TCPIP["Pilha TCP/IP (4 Camadas)"]
    TCPIP --> APP["1. Aplicação (HTTP, DNS, SSH)"]
    TCPIP --> TRANS["2. Transporte (TCP Conexão Segura vs UDP Baixa Latência)"]
    TCPIP --> NET["3. Internet (IPv4 / IPv6, Roteamento BGP)"]
    TCPIP --> LINK["4. Acesso à Rede (Ethernet, Wi-Fi, MAC Address)"]
    
    style OSI fill:#e1f5fe,stroke:#03a9f4,stroke-width:1px
    style TCPIP fill:#e8f5e9,stroke:#4caf50,stroke-width:2px

📄 Código de Demonstração (simulador_resolucao_dns.py)

# simulador_resolucao_dns.py
import socket
import pytest

def resolver_dominio(dominio: str) -> str:
    try:
        return socket.gethostbyname(dominio)
    except socket.gaierror:
        return "0.0.0.0"

def test_resolucao_dns_valida():
    # Loopback local
    ip = resolver_dominio("localhost")
    assert ip in ("127.0.0.1", "::1")

🚀 Como Executar no Terminal

pytest simulador_resolucao_dns.py -v

🖥️ Saída Esperada do Terminal

============================= test session starts =============================
platform win32 -- Python 3.12.0, pytest-8.2.0
collected 1 item

simulador_resolucao_dns.py .                                             [100%]

============================== 1 passed in 0.02s ==============================