Skip to content

HyperTechDevelopment/MAC-Validator

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 

Repository files navigation

MAC Address Validator

Python Tkinter License Platform

🔍 Ferramenta profissional de validação e diagnóstico de endereços MAC


📋 Visão Geral

O MAC Address Validator é uma aplicação desktop especializada na validação rigorosa de endereços MAC (Media Access Control). Diferente de validadores genéricos, esta ferramenta detecta nuances específicas de formatação, identifica erros comuns e fornece diagnósticos detalhados — ideal para equipes de redes, segurança e auditoria.

🎯 Por que usar?

Endereços MAC mal formatados causam falhas silenciosas em:

  • Listas de controle de acesso (ACLs)
  • Bases de dados de inventário de ativos
  • Configurações de DHCP e filtros de rede
  • Sistemas de rastreabilidade de dispositivos

✨ Funcionalidades

Categoria Descrição
🔍 Validação de Formato Verifica rigorosamente o padrão XX:XX:XX:XX:XX:XX
📊 Detecção de Separadores Identifica uso incorreto de -, , ou ausência de separadores
🔄 Detecção de Duplicatas Conta ocorrências e alerta sobre MACs repetidos
💡 Correção Inteligente Reconhece padrões de erro e sugere correções

🚀 Instalação & Uso

Pré-requisitos

  • Python 3.8+ (Tkinter incluído na instalação padrão)

Executando

python mac_validator.py

Formatos Suportados

Formato Exemplo Status
Duas pontos (padrão) 00:1A:2B:3C:4D:5E ✅ Valid
Hífen 00-1A-2B-3C-4D-5E ❌ Detectado
Sem separador 001A2B3C4D5E ❌ Detectado
Vírgula interna 00:1A,2B:3C:4D:5E ⚠️ Erro
Separados por vírgula 00:1A:2B:3C:4D:5E, 00:2B:3C:4D:5E ✅ Processado

📊 Categorias de Resultado

Aba Ícone Descrição
Valid Endereços no formato correto XX:XX:XX:XX:XX:XX
Duplicates 🔁 Endereços que aparecem mais de uma vez
Malformed Formato inválido com diagnóstico detalhado
Wrong Comma ⚠️ Vírgula posicionada incorretamente
Double Comma ⚠️ Duplo separador ,, detectado

💡 Exemplo Prático

Entrada

00:1A:2B:3C:4D:5E
00:2B:3C:4D:5E:6F
00:1A:2B:3C:4D:5E
00-3C-4D-5E-6F-7A
00:1A,2B:3C:4D:5E:6F
001A2B3C4D5E
00:2B:3C:4D:5E:6F,, 00:3C:4D:5E:6F:7A

Saída Esperada

Aba Resultados
Valid 00:2B:3C:4D:5E:6F
Duplicates 00:1A:2B:3C:4D:5E (aparece 2 vezes)
Malformed 00-3C-4D-5E-6F-7A (usa hífen), 001A2B3C4D5E (sem separadores)
Wrong Comma 00:1A,2B:3C:4D:5E:6F (vírgula dentro do MAC)
Double Comma 00:2B:3C:4D:5E:6F (duplo separador próximo)

🎨 Design System

Dark-mode com tipografia editorial e inspiração em interfaces modernas:

Elemento Cor
Fundo principal #1a1a1a
Fundo de entrada/saída #2a2a2a
Cor de destaque #007aff
Texto principal #ffffff
Texto secundário #888888

🛠️ Arquitetura

Classe Principal: MACValidator

Método Responsabilidade
__init__(root) Inicializa a janela e widgets
extract_macs(raw_text) Extrai MACs do texto bruto
validate_macs() Orquestra validação e classificação
populate_tab(tab, items) Preenche abas com resultados

Fluxo de Validação

Entrada de Texto
       ↓
extract_macs() → Lista bruta de MACs
       ↓
validate_macs()
       ├─→ Verifica vírgula interna (comma_wrong)
       ├─→ Verifica duplo separador (comma_dup)
       └─→ Valida formato com regex
              ├─→ Grupos incorretos → Malformed
              ├─→ Formato inválido → Malformed
              ├─→ Duplicata → Duplicates
              └─→ Formato correto → Valid

Expressão Regular

mac_pattern = re.compile(r'^([0-9A-Fa-f]{2}:){5}[0-9A-Fa-f]{2}$')

🤝 Contribuindo

Contribuições são bem-vindas! Siga estas diretrizes:

  1. Mantenha o padrão dark-first da interface
  2. Documente novas funcionalidades
  3. Teste com diferentes tamanhos de entrada

📄 Licença

MIT License — veja o arquivo LICENSE para detalhes.


Feito com foco em qualidade de código e experiência do usuário.

About

Validador de MAC

Resources

Stars

Watchers

Forks

Releases

No releases published

Contributors

Languages