Sobre el proyecto

# IPv6 Web Resource Checker (webres6) Una herramienta de línea de comandos y servicio web para comprobar la preparación solo-IPv6 de páginas o aplicaciones web. Carga un sitio web usando Selenium, extrae nombres de host y direcciones IP de los registros de rendimiento y determina si cada recurso es accesible a través de redes solo-IPv6. ## Características - Rastrea páginas web usando Selenium (Chromium) y extrae todos los nombres de host y direcciones IP del registro de rendimiento - Clasifica los recursos como listos para IPv6 según el uso de direcciones IPv6 nativas - Prueba la resolución DNS solo-IPv6 usando un resolutor personalizado basado en Unbound (dnsprobe) - Realiza consultas WHOIS sobre las direcciones IP encontradas para el análisis de infraestructura - Calcula puntuaciones de preparación solo-IPv6 y mantiene un marcador de resultados - Admite código de instrumentación personalizado de Selenium/Python - Gestiona la traducción NAT64 en el lado del servidor de la API - Exporta informes estructurados mediante la API REST como JSON - Almacena en caché y archiva resultados en Valkey o archivos planos - Divide nombres de dominio usando la lista de sufijos públicos ## Componentes - **Servidor de API** (`webres6-api`) — servidor basado en Flask con Selenium, dnsprobe y endpoints REST - **Cliente CLI** — herramienta de línea de comandos en Python para consultar la API y mostrar resultados - **Aplicación web** — frontend basado en jQuery servido por la API o como visor independiente - **Servidor MCP** — integración del Model Context Protocol para asistentes de IA ## Configuración ### Requisitos - Python 3.14+ para el servidor de la API - Python 3.11+ para el cliente CLI - Host de pila dual o solo-IPv6 con soporte NAT64 para Selenium - libunbound con enlaces de Python para el sondeo DNS ### Instalación CLI mediante uv: ``` uv tool install --from 'git+https://github.com/SAP/webres6#subdirectory=cli' webres6-cli ``` La configuración con Docker Compose construye contenedores de API, NGINX y Selenium. El despliegue en Kubernetes está disponible mediante el chart de Helm en el directorio `helm/`. ## Uso ### CLI ``` webres6 [options] URL ``` Las opciones incluyen captura de pantalla, exportación JSON, control de tiempo de espera, visualización de ASN y envío de puntuación al servidor. ### Aplicación web Introduce una URL en el campo de entrada y haz clic en **Analyze**. Los resultados y un marcador reciente aparecen a continuación. Se pueden arrastrar CSS personalizado y archivos de informes guardados a la ventana del navegador para su renderización. ### Demo Hay una instancia pública disponible en [webres6.dev.sap](https://webres6.dev.sap). ## Limitaciones - Requiere conectividad de pila dual en el host que ejecuta Selenium (o solo-IPv6 con NAT64) - Los hosts solo-IPv4 informarán todos los recursos como no disponibles - Happy Eyeballs de Chromium puede preferir IPv4 para hosts IPv6 con respuesta lenta - Sin autenticación, gestión de consentimiento de cookies ni soporte de retardo de JavaScript (se puede ampliar mediante instrumentación personalizada) - No oculta el tráfico de bots ## Licencia Copyright 2025 SAP SE o una empresa afiliada de SAP. Licenciado bajo la Apache License 2.0. Consulta [LICENSE](LICENSE) y [REUSE](https://api.reuse.software/info/github.com/SAP/webres6) para más detalles.