NSLOOKUP uma ferramenta muito poderosa…

O nslookup é uma das ferramentas que mais informação nos pode dar na internet.
De acordo com o tipo de perguntas que fazemos podemos ter respostas muito interessantes.
Podemos como tudo, usa-la para o mal ou para o bem.
Um administrador de sistemas que não proteja no seu servidor de DNS, pode ver exposta informação que não deveria ser do conhecimento público.

Aqui deixo alguns dos parâmetros que podem ser usados com o nslookup.

A sintaxe é simples, basta abrir uma janela de cmd no windows e escrever nslookup. Depois podemos definir qual o tipo de respostas que desejamos ter.
Para isso escrevemos Set type=tipo de resposta
A lista dos vários tipos é a seguinte:
A – Endereço de ip do computador.
Any – Todos os tipos de dados.
CNAME – Nome canónico para um alias.
GID – Identificador de um grupo para um nome de grupo.
HINFO – Indica o tipo de CPU e sistema Operativo
MB – Nome de domínio de Caixa de correio
MG – Específica um elemento de um grupo de e-mail
MINFO – Informações sobre uma caixa de correio ou uma lista de distribuição.
MR – Mail Rename Domain Name
MX – Mail Exchanger ( relay de e-mail ou aquele que processa os emails para um determinado domínio).
NS – Nome de um servidor de DNS para uma determinada zona ou domínio.
PTR – Dá-nos um nome do computador caso a pergunta seja um endereço de ip ou então devolve um novo apontador para nova informação.
SOA – Especifica a Start-of-Authority para uma zona de DNS.
TXT – Informação de texto.
UID – Identificador de utilizador.
UINFO – Informação de Utilizador.
WKS – Um serviço bem conhecido.

Agora testem no vosso servidor pessoal e nos públicos de algum domínio que conheçam. Vejam as diferenças e validem o que está certo ou errado na vossa opinião.

Para mais conhecimento podem sempre consultar o RFC – 1035

Comandos Básicos de um Router / Switch da Cisco

Existem comandos iguais para qualquer router / switch da cisco que nos servem para aceder e ver as várias configurações efectuadas no nosso equipamento.

Router>Show – Quando associado a outro comando / função serve para ver o estado dessa função / commando.

Router>? – Lista todos os comandos disponiveis
Router>c? – Lista todos os comandos disponiveis começados por “c”

Router>enable – Entra no chamado modo enable ou priviligiado
Router#Config Terminal – Entra no modo de configuração do equipamento
Router#Exit – Andamos 1 nivel para trás, se tivermos em modo configuração passamos para o modo priviligiado.
Router#Logout – Mesmo que exit.
Router#Setup – Entramos em modo startup para a linha de comandos


Estes são alguns dos comandos básicos para configurar equipamentos cisco.

 

Descodificar um Pacote TCP/IP (TCP apenas)

O TCP é a outra parte que vem agarrada ao protocolo IP. 🙂

O TCP é encontrado na segunda parte de uma frame TCP/IP.
No pacote anteriormente analisado no texto “Descodificar um pacote TCP/IP (IP Apenas) reparamos que o TCP é o pedaço assinalado a azul.

00 4f 4e 0e b2 45 00 1a 80 d8 43 ef 08 00 45 0000 28 5a b1 40 00 80 06 00 00 c0 a8 64 65 c0 a8 64 01 c0 43 1f 90 b0 d8 c2 30 ea 48 e1 3a 50 1040 29 49 d2 00 00

O pedaço assinalado em azul dá-nos conta de toda a informação sobre o TCP.

Os 2 primeiros bytes indicam a porta de origem (porta onde se iniciou o pedido).
c0 43 1f 90 b0 d8 c2 30 ea 48 e1 3a 50 1040 29 49 d2 00 00

c0 43 é em decimal 49219.

A porta de Destino é a:
c0 43 1f 90 b0 d8 c2 30 ea 48 e1 3a 50 1040 29 49 d2 00 00

1f90 = em decimal 8080 🙂 endereço de um proxy? 🙂

O numero sequencial que vem de seguida serve para controlar a fragmentação dos pacotes bem como a ordem porque eles são enviados…

c0 43 1f 90 b0 d8 c2 30 ea 48 e1 3a 50 1040 29 49 d2 00 00

O numero de reconhecimento, como sabem um computador quando acaba de receber uma sequência de pacotes tcp responde com um ack+1 relativamente ao pacote recebido. Este numero é indicado pelos seguintes bytes.

c0 43 1f 90 b0 d8 c2 30 ea 48 e1 3a 50 1040 29 49 d2 00 00

Depois vem o tamanho do cabeçalho: 5

c0 43 1f 90 b0 d8 c2 30 ea 48 e1 3a 50 1040 29 49 d2 00 00

As flags podem ser URG, ACK, PSH, RST, SYN, e FIN

c0 43 1f 90 b0 d8 c2 30 ea 48 e1 3a 50 1040 29 49 d2 00 00
Neste caso o 010 representa em binário 010000 e é uma flag tipo ACK.

O tamanho da janela vem de seguida,
c0 43 1f 90 b0 d8 c2 30 ea 48 e1 3a 50 1040 29 49 d2 00 00
Que em decimal representa cerca de 16425. Que representa o tamanho máximo que a origem consegue enviar.

O “checksun”
c0 43 1f 90 b0 d8 c2 30 ea 48 e1 3a 50 1040 29 49 d2 00 00 e por fim os 0000 que representa o ponteiro de urgência, certos pacotes podem passar á “frente da fila” e ser processados primeiro. a Flag URG indica que esses dados existem e o ponteiro indica a posição deles dentro da área de dados.

Tabela para Calculo de subnets

Este quadro tem por objectivo facilitar o calculo de subnets ou numero de hosts total possível nas redes dependendo do seu numero de bits, ou valor absoluto.

Valor da “Subnet Mask”128192224240248250254255

Numero de Bits Necessario para H 8 7 6 5 4 3 2 1
Número de Hosts 256 128 64 32 16 8 4 2 NA
Numero de Bits Necessario para N 1 2 3 4 5 6 7 8
Valor da “Subnet Mask” 0 128 192 224 240 248 252 254 255
Numero de Redes Validas 1 2 4 8 16 32 64 128 N/A

 

O número de hosts refere-se a hosts totais, validos e invalidos.

Exemplo:

Queremos saber o valor uma subnet para uma rede que vai alojar 10 computadores.
Para isso é nos atribuída a rede 192.168.1.0 para dividir.
Para alojar 10 computadores a formula de calculo seria a seguinte: 2^n-2=10 sendo N o numero de bits que necessitamos de ter para cumprir o requisito.

N=4

Significa que algures na mascara em binário firmaríamos com 4 bits para a rede e 4 bits para os hosts.
NNNNHHHH

Entao a nossa rede teria uma “subnet mask” de 2^7+2^6+2^5+2^4=128+64+32+16=240

Vamos ver como o Quadro nos pode ajudar.

Quando nos pedem 10 hosts temos de procurar no quadro onde o 10 pode estar incluído rapidamente notamos que so pode estar no valor 16.  Assinalado a verde também se poderia ir pelo numero de bits necessário 4

Depois basta descer a coluna e temos o valor da “Subnet Mask” 240 e o numero de redes 16 com aquela subnet.

Numero de Bits Necessario para H 8 7 6 5 4 3 2 1
Número de Hosts 256 128 64 32 16 8 4 2 NA
Numero de Bits Necessario para N 1 2 3 4 5 6 7 8
Valor da “Subnet Mask” 0 128 192 224 240 248 252 254 255
Numero de Redes Validas 1 2 4 8 16 32 64 128 N/A

 

 

Binary "ANDing"

É o processo pelo qual é feita uma muliplicação entre dois numeros binarios. (Na numeração decimal).

Então temos

0 and 0 = 0
1 and 0 = 0
0 and 1 = 0
1 and 1 = 1

Utiliza-se o anding quando se compara ip’s com a sua subnet mask para saber qual a rede a que o ip pertence.

Ex:
Qual a rede a que pertence o IP 192.168.100.115 com subnet Mask de 255.255.255.240?

  1. Converter ambos os endereços para binario.

192.168.100.115 = 11000000.10101000.01100100.01110011

255.255.255.240 = 11111111.11111111.11111111.11110000

2. Realizar o AND

192.168.100.115 = 11000000.10101000.01100100.01110011
255.255.255.240 = 11111111 .11111111 .11111111 .11110000

Resultado = 11000000.10101000.01100100.01110000

Converter o resultado para decimal novamente:

11000000.10101000.01100100.01110000 = 192.168.100.112

O endereço de IP pertence á rede 192.168.100.112 quando uma subnet mask 255.255.255.240 é usada.

Protocolos alem do 06 (TCP)

Aqui estão uma lista de protocolos alem do 06 só para matar a curiosidade.
E … Estão em decimal por isso há que fazer contas… 🙂

0 HOPOPT, IPv6 Hop-by-Hop Option.RFC 1883
1 ICMP, Internet Control Message Protocol.RFC 792
2 IGAP, IGMP for user Authentication Protocol.IGMP, Internet Group Management Protocol.RGMP, Router-port Group Management Protocol.

3 GGP, Gateway to Gateway Protocol.

4 IP in IP encapsulation.

5 ST, Internet Stream Protocol.

6 TCP, Transmission Control Protocol.

7 UCL, CBT.

8 EGP, Exterior Gateway Protocol.

9 IGRP, Interior Gateway Routing Protocol.

10 BBN RCC Monitoring.

11 NVP, Network Voice Protocol.

12 PUP.

13 ARGUS.

14 EMCON, Emission Control Protocol.

15 XNET, Cross Net Debugger.

16 Chaos.

17 UDP, User Datagram Protocol.

18 TMux, Transport Multiplexing Protocol.

19 DCN Measurement Subsystems.

20 HMP, Host Monitoring Protocol.

21 Packet Radio Measurement.

22 XEROX NS IDP.

23 Trunk-1.

24 Trunk-2.

25 Leaf-1.

26 Leaf-2.

27 RDP, Reliable Data Protocol.

28 IRTP, Internet Reliable Transaction Protocol.

29 ISO Transport Protocol Class 4.

30 NETBLT, Network Block Transfer.

31 MFE Network Services Protocol.

32 MERIT Internodal Protocol.

33 DCCP, Datagram Congestion Control Protocol.

34 Third Party Connect Protocol.

35 IDPR, Inter-Domain Policy Routing Protocol.

36 XTP, Xpress Transfer Protocol.

37 Datagram Delivery Protocol.

38 IDPR, Control Message Transport Protocol.

39 TP++ Transport Protocol.

40 IL Transport Protocol.

41 IPv6 over IPv4.

42 SDRP, Source Demand Routing Protocol.

43 IPv6 Routing header.

44 IPv6 Fragment header.

45 IDRP, Inter-Domain Routing Protocol.

46 RSVP, Reservation Protocol.

47 GRE, General Routing Encapsulation.

48 DSR, Dynamic Source Routing Protocol.

49 BNA.

50 ESP, Encapsulating Security Payload.

51 AH, Authentication Header.

52 I-NLSP, Integrated Net Layer Security TUBA.

53 SWIPE, IP with Encryption.

54 NARP, NBMA Address Resolution Protocol.

55 Minimal Encapsulation Protocol.

56 TLSP, Transport Layer Security Protocol using Kryptonet key management.

57 SKIP.

58 ICMPv6, Internet Control Message Protocol for IPv6.MLD, Multicast Listener Discovery.

59 IPv6 No Next Header.

60 IPv6 Destination Options.

61 Any host internal protocol.

62 CFTP.

63 Any local network.

64 SATNET and Backroom EXPAK.

65 Kryptolan.

66 MIT Remote Virtual Disk Protocol.

67 Internet Pluribus Packet Core.

68 Any distributed file system.

69 SATNET Monitoring.

70 VISA Protocol.

71 Internet Packet Core Utility.

72 Computer Protocol Network Executive.

73 Computer Protocol Heart Beat.

74 Wang Span Network.

75 Packet Video Protocol.

76 Backroom SATNET Monitoring.

77 SUN ND PROTOCOL-Temporary.

78 WIDEBAND Monitoring.

79 WIDEBAND EXPAK.

80 ISO-IP.

81 VMTP, Versatile Message Transaction Protocol.

82 SECURE-VMTP

83 VINES.

84 TTP.

85 NSFNET-IGP.

86 Dissimilar Gateway Protocol.

87 TCF.

88 EIGRP.

89 OSPF, Open Shortest Path First Routing Protocol.MOSPF, Multicast Open Shortest Path First.

90 Sprite RPC Protocol.

91 Locus Address Resolution Protocol.

92 MTP, Multicast Transport Protocol.

93 AX.25.

94 IP-within-IP Encapsulation Protocol.

95 Mobile Internetworking Control Protocol.

96 Semaphore Communications Sec. Pro.

97 EtherIP.

98 Encapsulation Header.

99 Any private encryption scheme.

100 GMTP.

101 IFMP, Ipsilon Flow Management Protocol.

102 PNNI over IP.

103 PIM, Protocol Independent Multicast.

104 ARIS.

105 SCPS.

106 QNX.

107 Active Networks.

108 IPPCP, IP Payload Compression Protocol.

109 SNP, Sitara Networks Protocol.

110 Compaq Peer Protocol.

111 IPX in IP.

112 VRRP, Virtual Router Redundancy Protocol.

113 PGM, Pragmatic General Multicast.

114 any 0-hop protocol.

115 L2TP, Level 2 Tunneling Protocol.

116 DDX, D-II Data Exchange.

117 IATP, Interactive Agent Transfer Protocol.

118 ST, Schedule Transfer.

119 SRP, SpectraLink Radio Protocol.

120 UTI.
121 SMP, Simple Message Protocol.
122 SM.
123 PTP, Performance Transparency Protocol.
124 ISIS over IPv4.
125 FIRE.
126 CRTP, Combat Radio Transport Protocol.
127 CRUDP, Combat Radio User Datagram.
128 SSCOPMCE.

129 IPLT.

130 SPS, Secure Packet Shield.

131 PIPE, Private IP Encapsulation within IP.

132 SCTP, Stream Control Transmission Protocol.

133 Fibre Channel.

134 RSVP-E2E-IGNORE.

135 Mobility Header.

136 UDP-Lite, Lightweight User Datagram Protocol.

137 MPLS in IP.

138 MANET Protocols.

139 HIP, Host Identity Protocol.

140-252

253254
Experimentation and testing.

255
reserved.

Descodificar um Pacote TCP/IP (IP apenas)

Bem aqui fica uma informação de como descodificar um pacote TCP/IP.

Vamos imaginar que com um TCPDUMP temos um pacote capturado e queremos ler a sua informação…

Este é um exemplo de uma frame que navegava na rede em exadecimal.

00 4f 4e 0e b2 45 00 1a 80 d8 43 ef 08 00 45 00
00 28 5a b1 40 00 80 06 00 00 c0 a8 64 65 c0 a8
64 01 c0 43 1f 90 b0 d8 c2 30 ea 48 e1 3a 50 10
40 29 49 d2 00 00

Ora bem o inicio da frame indica-nos qual o MAC de Destino.

00 4f 4e 0e b2 45 00 1a 80 d8 43 ef 08 00 45 00
00 28 5a b1 40 00 80 06 00 00 c0 a8 64 65 c0 a8
64 01 c0 43 1f 90 b0 d8 c2 30 ea 48 e1 3a 50 10
40 29 49 d2 00 00

O segundo indica-nos qual o MAC de Origem

00 4f 4e 0e b2 45 00 1a 80 d8 43 ef 08 00 45 00
00 28 5a b1 40 00 80 06 00 00 c0 a8 64 65 c0 a8
64 01 c0 43 1f 90 b0 d8 c2 30 ea 48 e1 3a 50 10
40 29 49 d2 00 00

O proximo valor indica-nos o tipo de pacote que vai dentro da frame.
Neste caso 0x0800 que representa o IP.

00 4f 4e 0e b2 45 00 1a 80 d8 43 ef 08 00 45 00
00 28 5a b1 40 00 80 06 00 00 c0 a8 64 65 c0 a8
64 01 c0 43 1f 90 b0 d8 c2 30 ea 48 e1 3a 50 10
40 29 49 d2 00 00

Bem agora chegamos ao protocolo ip.
O protocolo ip é representado pelo conjunto em baixo indicado.

00 4f 4e 0e b2 45 00 1a 80 d8 43 ef 08 00 45 00
00 28 5a b1 40 00 80 06 00 00 c0 a8 64 65 c0 a8
64 01
c0 43 1f 90 b0 d8 c2 30 ea 48 e1 3a 50 10
40 29 49 d2 00 00

O primeiro valor deste conjunto exadecimal indica qual a versão de IP (versão 4).
00 4f 4e 0e b2 45 00 1a 80 d8 43 ef 08 00 45 000
00 28 5a b1 40 00 80 06 00 00 c0 a8 64 65 c0 a8
64 01 c0 43 1f 90 b0 d8 c2 30 ea 48 e1 3a 50 10
40 29 49 d2 00 00

O segundo caracter indica-nos qual o IHL. (Internet Header Lenght)
Que nos indica qual o tamanho do Header do Pacote IP. Significa também que é de 20bytes e é o valor minimo para um pacote IP.

00 4f 4e 0e b2 45 00 1a 80 d8 43 ef 08 00 45 00
00 28 5a b1 40 00 80 06 00 00 c0 a8 64 65 c0 a8
64 01 c0 43 1f 90 b0 d8 c2 30 ea 48 e1 3a 50 10
40 29 49 d2 00 00

O campo 00 logo de seguida é utilizado para serviços diferenciados ou como alguem lhe gosta de chamar tipo de serviços. RFC 1349… não vou falar muito deste hoje 🙂

Depois vem o tamanho do “datagram” que é de 0028 em exadecimal que transformado para decimal é de 40bits. (Podem usar a calculadora do windows para isto).

00 4f 4e 0e b2 45 00 1a 80 d8 43 ef 08 00 45 00
00 28 5a b1 40 00 80 06 00 00 c0 a8 64 65 c0 a8
64 01 c0 43 1f 90 b0 d8 c2 30 ea 48 e1 3a 50 10
40 29 49 d2 00 00

A identificação é indicada por 5a b1 logo no conjunto seguinte. É usado para distinguir um datagram de outro.

Depois vem o indicador de “flags” o :
00 4f 4e 0e b2 45 00 1a 80 d8 43 ef 08 00 45 00
00 28 5a b1 40 00 80 06 00 00 c0 a8 64 65 c0 a8
64 01 c0 43 1f 90 b0 d8 c2 30 ea 48 e1 3a 50 10
40 29 49 d2 00 00

é utilizado para a fragmentação dos pacotes.

Agora vem o tempo de vida do datagram.
Neste caso é:

00 4f 4e 0e b2 45 00 1a 80 d8 43 ef 08 00 45 00
00 28 5a b1 40 00 80 06 00 00 c0 a8 64 65 c0 a8
64 01 c0 43 1f 90 b0 d8 c2 30 ea 48 e1 3a 50 10
40 29 49 d2 00 00

E quanto é 80 de hexa para decimal?
é 128…
Quando este valor chega a zero é descartado.

Depois vem o TCP Ou pelo menos o indicador que dentro do ip vem o protocolo TCP…

00 4f 4e 0e b2 45 00 1a 80 d8 43 ef 08 00 45 00
00 28 5a b1 40 00 80 06 00 00 c0 a8 64 65 c0 a8
64 01 c0 43 1f 90 b0 d8 c2 30 ea 48 e1 3a 50 10
40 29 49 d2 00 00

Quase no fim vem o headerCheck Sum que é representado pelos seguintes numeros:
00 00 logo a seguir ao protocolo.

E por fim o que nos faltava para isto ser válido o ip de origem…. Que é
00 4f 4e 0e b2 45 00 1a 80 d8 43 ef 08 00 45 00
00 28 5a b1 40 00 80 06 00 00 c0 a8 64 65 c0 a8
64 01 c0 43 1f 90 b0 d8 c2 30 ea 48 e1 3a 50 10
40 29 49 d2 00 00

que fazendo as contas em decimal é de 192.168.100.101

e o ip de Destino que fazendo as contas é o 192.168.100.1
00 4f 4e 0e b2 45 00 1a 80 d8 43 ef 08 00 45 00
00 28 5a b1 40 00 80 06 00 00 c0 a8 64 65 c0 a8
64 01
c0 43 1f 90 b0 d8 c2 30 ea 48 e1 3a 50 10
40 29 49 d2 00 00

E acabamos a parte do IP num proximo post vem a parte do TCP que são o resto dos numeros hexadecimais que faltam analizar.

00 4f 4e 0e b2 45 00 1a 80 d8 43 ef 08 00 45 00
00 28 5a b1 40 00 80 06 00 00 c0 a8 64 65 c0 a8
64 01 c0 43 1f 90 b0 d8 c2 30 ea 48 e1 3a 50 10
40 29 49 d2 00 00

CISCO + Activação de SSH

Há duas forma de activar a ligação SSH num equipamento CISCO A primeira usando o Hostname e o Domain Name a segunda utilizando um par de chaves RSA. 1 – usando o Hostname e o Domain Name.

->Enable
-->Config Terminal
-->Hostname HRouter
-->IP Domain-Name HJFR-INFO.com
--->Crypto Key Generate RSA

2 – Utilizando um par de chaves RSA

->enable
-->configure terminal
-->ip ssh rsa keypair-name hjfrKey
-->crypto key Generate rsa usage-keys label sshkeys modulus 2048

Devemos escolher qual o o numero de bits a usar na cifragem, nunca escolher um valor inferior a 2048. Depois só temos de configurar as opções do ssh:

--->ip ssh version 2 
--->ip ssh time-out 10--->ip ssh authentication-retries 6

Configurar o equipamento para autenticação de utilizadores utilizando chaves RSA.

Router> enable
Router# configure terminal
Router(config)# hostname HRouter
Router(config)# ip domain-name HJFR-INFO.COM
Router(config)# crypto key generate rsa
Router(config)# ip ssh pubkey-chain
Router(conf-ssh-pubkey)# username hjfr
Router(conf-ssh-pubkey-user)# key-string
Router(conf-ssh-pubkey-data)# exit
Router(conf-ssh-pubkey-data)# key-hash ssh-rsa hjfrKey
Router(conf-ssh-pubkey-data)# end

Para ver o estado podemos usar o comando: show ip ssh

Em caso de duvidas sobre as opções do ssh usar o comando: ssh ?

Como Subnetar uma Rede IPV4

IPV4

Existem várias classes de redes.

Classe A do endreço 0 ao 127 ( em que o “zero” é um endereço inválido e o 127 é reservádo para o loopback address)
Ex: Testem fazer um ping 127.0.0.1 a ver o que acontece…
Classe B do endreço 128 ao endereço 191
Classe C do endereço 192 ao endereço 223
Classe D do endereço 224 ao endereço 239
Classe E do endereço 240 ao endereço 255

A maneira de conseguirmos qual o tipo de rede que temos em mão é conseguida pela conversão do seu primeiro octeto de decimal para binario.

Ai reparamos que as redes de Classe A se iniciam por um 0xxxxxxx as de Classe B se iniciam por 10xxxxxx as de Classe C iniciam-se por 110xxxxx por fim a D por 1110xxxx e a E 1111xxxx

Destas 5 classes apenas usamos as 3 primeiras dependendo da situação a D e a E são reservadas.
Sendo a D reservada para multicasting e a E para utilização futura.

Conversão de Binario para Decimal

Um octeto tem 8 possições possiveis que podem conter 0 ou 1.
Ex: 00000000 ou 11111111 ou 01001001

Se lermos as possições da direita para a esquerda “11111111” podemos dizer que a primeira seria o equivalente a 2 elevado a 0 a segunda de 2 elevado a 1 e a terceira de 2 elevado a 3 e assim sucessivamente até 2 elevado a 8.
Ai temos o seguinste calculo
2^0 = 1
2^1 = 2
2^2 = 4
2^3 = 8
2^4 = 16
2^5 = 32
2^6 = 64
2^7 = 128

Ora se tivermos um octeto do tipo 11111111 sabemos que o seu valor em decimal é de 255 pois 1+2+4+8+16+32+64+128 é igual a 255.

Um endereço de rede é constituido por 4 octetos do tipo xxxxxxxx.xxxxxxxx.xxxxxxxx.xxxxxxxx onde os “x” é substituido por 1 ou por 0.

Imaginemos agora que este octeto é dividido em “hosts” e em “networks” em que podemos ter:
NNNNNNNN.NNNNNNNN.HHHHHHHH.HHHHHHHH

em que os N representam as redes possiveis e os H representam os computadores possiveis.

Como o espaço dos 4 octetos é limitado quando queremos aumentar o numero de redes “N” teremos de pedir espaço emprestado aos hosts “H” e quando queremos aumentar o numero de computadores teremos de pedir espaço emprestado ás redes.

Então temos a seguinte formula
2^N temos o numero total de redes que podemos ter.
2^H temos o numero de “Hosts” que podemos ter por cada uma das redes.

Mas como nem todas as redes são válidas e nem todos os “hosts” possiveis são válidos então temos a seguinte formula:

2^N-2 para o numero de redes válidas (todas as redes que tenham endereçamentos a começar por 00 são inválidas ver inicio do texto parte das classes).
2^H-2 para o numero de hosts válidos por cada rede. (O primeiro endereço de cada rede é o endereço que identifica a rede e é constituido por tudo a zeros no espaço dos H e o ultimo endereço é o endereço de broadcast e é constituido por tudo a uns no esapço dos H).

Então com base nisto tenho uma hipotetica rede de classe C em que o endereçamento 192.168.100.0/24

O “/24” representa o numero de bits marcados com 1 que identifica a subnet, ou seja temos 24 “uns” para identificar a rede.
11111111.11111111.1111111.00000000
NNNNNNNN.NNNNNNNN.NNNNNNNN.HHHHHHHH
como vimos anteriormente quando temos um octeto todo a uns isto em decimal representa 255.255.255.0 e esta é a nossa subnet.

Voltando á rede

192.168.100.0/24 quero saber quantos bits de Hosts “H” que tenho de pedir emprestado para criar 9 subnets válidas.

Numero de redes = 9

2^N-2 maior ou igual a 9

N = 4

2^4 = 16 – 2 = 14 Redes válidas

Então necessitamos de pedir 4 “H’s” emprestados para defenir a nossa nova subnet.
Ficando a nossa Subnet Classe C dividida em 14 subnets diferentes das quais apenas 9 vão ser usadas por nós.

NNNNNNNN.NNNNNNNN.NNNNNNN.NNNNHHHH
11111111.11111111.1111111.11110000

192.168.100.0
255.255.255.240

Então obtemos o seguinte endereçamento.

hhhhnnnn
11110000

o primeiro endereço seria para a rede 000010000 que corresponde ao numeoro da rede porque o espaço dos h está a 0. (A rede seria 16)
O primeiro endereço válido seria para o 00010001 que corresponde ao endereço 192.168.100.17 o ultimo válido seria 00011110 que corresponde ao 192.168.100.30 o Endereço de Broadcast é o 00011111 que corresponde ao 192.168.100.31

O segundo endereço da rede corresponde ao 00100000 que é a rede 32
O primeiro válido seria o 00100001 que seria o 192.168.100.33 e o ultimo válido seria o 00101110 que é o 192.168.100.46 e o de broadcast é o 47.

Então com base nisto temos as seguintes redes:

SUBNET | Endereço de Rede | Intervalo de Endereços Válidos | Broadcast
0 | 192.168.100.0/28 | 192.168.100.1 ao 14 (INVALIDA) | 192.168.1.15
1 | 192.168.100.16/28 | 17 ao 30 | 192.168.1.31
2 | 192.168.100.32/28 | 33 ao 46 | 47
3 | 192.168.100.48/28 | 49 ao 62 | 63
4 | 192.168.100.64/28 | 65 ao 78 | 79
5 | 192.168.100.80/28 | 81 ao 94 | 95
6 | 192.168.100.96/28 | 97 ao 110 | 111
7 | 192.168.100.112/28 | 113 ao 126 | 127
8 | 192.168.100.128/28 | 129 ao 142 | 143
9 | 192.168.100.144/28 | 145 ao 158 | 159
10 | 192.168.100.160/28 | 161 ao 174 | 175
11 | 192.168.100.176/28 | 177 ao 190 | 191
12 | 192.168.100.192/28 | 193 ao 206 | 207
13 | 192.168.100.208/28 | 209 ao 222 | 223
14 | 192.168.100.224/28 | 225 ao 238 | 239
15 | 192.168.100.240/28 | 241 ao 254 | 255

Então temos todas as redes possiveis em que escolhemos 9 e as outra ficariam para uso futuro.