Algorítimo para listar todos os IPs da rede

Hehe olha o projeto crescendo! :smiley:

Faz assim:
Nos octetos da máscara, vai contando (da esquerda para a direita) todos os que estão com valor true.

Se estiver entre 8 e 15 bits ligados, é classe A
Entre 16 e 23, é classe B
A partir de 24, é classe C

Assim:
255.255.255.0 = 11111111.11111111.11111111.00000000 = 24 bits ligados = classe C
255.255.192.0 = 11111111.11111111.11000000.00000000 = 18 bits ligados = classe B *
E assim por diante.

  • A classe B “normal” seria 255.255.0.0 (16 bits), nesse exemplo ela foi dividida em sub-redes… acho que ainda é considerado classe B.

Vc pode ir testando os bits dos Bitsets em loop, é só entender como ele funciona que fica simples.

Para saber a quantidade de redes possíveis para aquela máscara, é só fazer (2) elevado a (quantidade de bits ligados na mascara)
E a quantidade de hosts é (2) elevado a (quantidade de bits desligados na mascara) menos 2.

Esse menos 2 é porque numa rede sempre se “perde” o primeiro e o último IPs, que são os endereços da rede e de broadcast, respectivamente.
[/quote]

OK

Agora ja tenho uma noção de como realizar estas definiçoes e conforme for depois posto o codigo.

Krak, defini o timeout para 20 milissegundos e 6 horas depois cancelei o processo, pois tava na metade ainda…kkkk

passei o final de semana tentando entender um pouco mais do código do gomesrod, a lógica utilizada foi excelente… parabéns

labavel, se conseguir fazer isso será uma boa… obrigado pela ajuda…

Talvez dividir o trabalho entre algumas Threads possa ajudar a ficar mais rápido, é só testar bastante para saber se não vai sobrecarregar os recursos da máquina… mas é claro que ainda vai ser um processo longo.

[quote=softlesk]a lógica utilizada foi excelente… parabéns[/quote]:oops:

vou tentar…