quinta-feira, 14 de março de 2013

TCP/IP

O endereço IP é um endereço lógico utilizado para identificar uma máquina na rede. É composto por 32 bits na notação binária. 
É dividido em duas partes: identificação de rede (prefixo) e identificação de host (sufixo).
A identificação de rede é comum a todas as máquinas ligadas ao mesmo domínio de broadcast. A identificação de host serve para identificar dentro do domínio uma máquina em particular. É um sistema parecido com a numeração dos telefones, onde telefones do mesmo bairro possuem o mesmo prefixo.

O endereço IP pode ser configurado de duas maneiras: estático (pelo administrador da máquina ou usuário com direitos para tal) e dinâmico (atribuído por um servidor DHCP).

Configuração do Endereço IP estático


Configuração do Endereço IP DHCP




A notação em decimal 192.168.1.8 por exemplo, possui um valor em binário igual a:

11000000.10101000.00000001.00001000 (192.168.1.8)


Tabela auxiliar:

128  64   32   16    8     4     2    1

128 192 224 240 248 252 254 255


Uso da tabela acima:

Converter 200 de decimal para binário
 7      6    5    4   3   2   1   0
128  64  32  16  8   4   2   1

128 192 224 240 248 252 254 255
 1      1     0     0     1     0     0     0

1*2^7=2*2*2*2*2*2*2=128
1*2^6=2*2*2*2*2*2=64
0*2^5=2*2*2*2*2=0

1*2^3=2*2*2=8

128+64+8=200

Classes de endereço IP

Foram criadas considerando que na época do início do TCP/IP, as empresas que tinham muitas máquinas eram em pouca quantidade e a maioria das empresas eram pequenas e tinham poucas máquinas.

Para definir a classe usa-se a tabela abaixo e o 1º octeto do endereço IP:


Classe   1º octeto   SM                  NR redes         NR hosts / rede
A          1-126       255.0.0.0            126                  16.777.214
B          128-191   255.255.0.0        16.384             65.534
C          192-223   255.255.255.0    2.097.152        254

Por exemplo, o endereço 15.240.238.51, pertence à classe A, pois o 1º octeto 15 encontra-se entre o intervalo 1 até 126 inclusive.



um endereço IP é formado de 2 partes, prefixo e sufixo, ou Net ID e Host ID.

Dado o endereço 15.240.0.23

Separamos o endereço acima em suas 2 partes, da seguinte maneira:

prefixo ou Net ID: 15.0.0.0 essa é a parte comum a todas as máquinas ligadas na mesma LAN. O sufixo ou Host ID: 240.0.23

15.0.0.1

15.0.0.2

15.0.0.3
....

15.0.0.255

15.0.1.0
15.0.1.1
15.0.1.2
15.0.1.3
...
15.0.1.255
15.0.2.0
15.0.2.1
15.0.2.2
15.0.2.3
..
15.0.2.255
15.0.3.0


************************************************


Classe B

prefixo.prefixo.sufixo.sufixo
189.50.0.0(identificação da rede inteira nas tabelas de roteamento)
189.50.0.1

...
189.50.255.255 (identificação de broadcast dentro da rede)

digite no cmd, ipconfig, depois diga qual é o prefixo e o sufixo de sua máquina.
172.16==prefixo

3.3==sufixo
2.87
2.72
2.89

prefixo==identificação da rede

sufixo==identificação do host
189.50.0.1
255.255.0.0

bits no total=32
--------.--------.--------.-------- total de 32 bits
bits para sufixo
prefixo.prefixo.--------.--------=16

Cálculo da quantidade de hosts:65534
2^16-2=65534
*******************************************

O endereço IP 200.144.32.8 pertence a classe C

um endereço IP é formado de 2 partes, prefixo e sufixo, ou Net ID e Host ID.

Separando o endereço acima em suas 2 partes, temos:

prefixo ou Net ID: 200.144.32.0 essa é a parte comum a todas as máquinas ligadas na mesma LAN. O sufixo ou Host ID: 8
200.144.32.0 é usado para identificar a rede inteira nas tabelas de roteamento
200.144.32.1
200.144.32.2
200.144.32.3
200.144.32.4
200.144.32.5
200.144.32.6
...
200.144.32.254
200.144.32.255 é usado para broadcast, para uma máquina enviar um pacote para todas as máquinas.




************************************************
o endereço que começa por 127.0.0.1 é usado para auto-teste ou loopback, permite verificar se o TCP/IP comunica-se com a placa de rede local.
Testando, abrir o prompt de comando e digitar:

ping 127.0.0.1

ping localhost
**************************************************************


Objetivo da máscara de sub-rede: dividir o endereço IP em duas partes, a saber:prefixo==identificação da rede e sufixo==identificação do host
189.50.0.1
255.255.0.0

prefixo:189.50
sufixo:0.1

regra para máscara(chamada de valor máximo contínuo): a máscara em binário é formada sempre por uma sequência de 1s e em seguida de 0s.
Ex.: 255.0.0.0
11111111.00000000.00000000.00000000
255.255.0.0
11111111.11111111.00000000.00000000
255.255.255.0
11111111.11111111.11111111.00000000
****************************************
192.168.1.8
255.255.255.0
11111111.11111111.11111111.00000000


bits no total=32
--------.--------.--------.--------
bits para sufixo
--------.--------=16
**************************
Cálculo AND lógico feito pelo protocolo IP para calcular se dois hosts são locais (comunicação é direta, sem uso de router) ou remotos (indireta usa router):

1)hosts locais
ex.:
micro1:192.168.1.8/255.255.255.0 micro2:192.168.1.22


11000000.10101000.00000001.00001000 (192.168.1.8)
11111111.11111111.11111111.00000000 (255.255.255.0)
===================================
11000000.10101000.00000001.00000000(prefixo da rede de origem)

1 and 1==1
qualquer outra combinação resulta em zero


11000000.10101000.00000001.00010110 (192.168.1.22)
11111111.11111111.11111111.00000000 (255.255.255.0)
===================================
11000000.10101000.00000001.00000000(prefixo da rede de destino)
O protocolo IP aciona o ARP para determinar o MAC de destino pois estão na mesma LAN.

2) hosts remotos
micro1:192.168.1.8/255.255.255.0 micro2:15.216.111.13
11000000.10101000.00000001.00001000 (192.168.1.8)
11111111.11111111.11111111.00000000 (255.255.255.0)
===================================
11000000.10101000.00000001.00000000(prefixo da rede de origem)


00001111.11011000.01101111.00001101
11111111.11111111.11111111.00000000 (255.255.255.0)
===================================
00001111.11011000.01101111.00000000(prefixo da rede de destino)
O protocolo IP aciona o ARP para determinar o MAC do router pois estão em LAN diferentes.
******************************************
Exemplo de máscara personalizada:
Uma empresa usa o endereço de rede 172.16.0.0 255.255.0.0 ou /16
O admin vai dividir a rede em 12 subredes.
2^1=2;2^2=4;2^3=8;2^4=16 chegou ao valor igual ou superior mais próximo de 12.
11111111.11111111. 11110000. 00000000 (4 bits na mais alta ordem obtidos em 2^4)
255.255.240.0 ou /20 (16+4)

1)172.16.0.0/20
Servidor SQL=172.16.0.1
Outros 172.16.0.2
172.16.0.2
172.16.15.254
172.16.15.255>> broadcast
2^12-2=4094 hosts
2) 172.16.X.0/20
11110000; 10000 convertendo de binário para decimal resulta em 16 que é o número a ser incrementado para obter cada rede.Posição do bit: 2^0;2^1;2^2;2^3;2^4=16
2) 172.16.16.0/20

3) 172.16.32.0/20
4) 172.16.48.0/20
5) 172.16.64.0/20

*********************************************
Classe C:     200.150.20.0/24
Pede-se: dividir 5 sub-redes, contendo 20 máquinas cada uma.
Qual será a máscara personalizada?
200.150.20.0/24
2^3=8; 3 é o número mágico
11111111. 11111111. 11111111.11100000
255.255.255.224 ou /27
Quantos hosts? 2^5-2=30 hosts; 5 é o número de zeros
100000 convertido para decimal, resulta em 32 (2^5)

1ª rede

200.150.20.0/27
200.150.20.1
200.150.20.2
200.150.20.3
200.150.20.4
até
200.150.20.30
200.150.20.31>> broadcast

 rede

200.150.20.32/27

 rede

200.150.20.64/27

 rede

200.150.20.96/27

 rede

200.150.20.128/27


Valores que podem ser usados na máscara:
128-192-224-240-248-252-254-255 (na máscara só pode existir uma sequência de uns)

****************************************************

Notação CIDR ou notação barra( / ):172.16.30.100/20 (20 é a quantidade de 1s da máscara)

11111111.11111111.11110000.00000000
255.255.240.0
******************************************
4 máquinas

w.x.y.z/
2^2=4
32 bits -2=30
w.x.y.z/30
255.255.255.252 (é = a 30 uns em binário)
***************************
192.168.1.8/255.255.255.0 e 192.168.1.22/255.255.255.0 (locais)


172.16.3.65/255.255.0.0 e 172.16.3.67/255.255.0.0 comunicação direta, feita pelo switch

192.168.1.8 e 15.216.111.13 (remotos) comunicação indireta, feita pelo router


*************************


Norma técnica RFC 1918, site  www.ietf.org

Espaço de endereços privados

A IANA (Internet Assigned Numbers Authority) reservou três blocos de endereço IP para uso em redes locais privadas 

     10.0.0.0        -   10.255.255.255  (10/8 prefix)
     172.16.0.0      -   172.31.255.255  (172.16/12 prefix)
     192.168.0.0     -   192.168.255.255 (192.168/16 prefix)

Usando esses endereços empresas podem acessar a Internet através de apenas um endereço válido, público na Internet, fornecido por um provedor, propiciando desta maneira uma economia de endereços IP.


Os roteadores que conectam a LAN à Internet, fazem uso do protocolo NAT (Network Address Translator), para alterar o endereço local do pacote pelo endereço válido na Internet, fornecido pelo provedor. Dessa forma, todos os PCs da rede local que acessam a Internet utilizam o mesmo endereço IP de origem, que é o endereço fornecido pelo provedor.

Por exemplo, um PC da LAN é identificado pelo endereço IP 10.0.0.50 e o endereço IP da interface WAN do roteador é 201.13.46.222, ao acessar um site da Internet definido pelo endereço IP 200.147.67.142, o endereço IP de origem que acessará o site será 201.13.46.222. Ao entrar no roteador conectado à LAN o endereço de origem é 10.0.0.50 e ao sair, após ser traduzido pelo NAT será 201.13.46.222.
Ao retornar do Web Server o pacote será novamente traduzido para que atinja corretamente o PC existente dentro da LAN que requisitou acesso à página web.
Quando à segurança o NAT evita que o endereço IP interno, seja exposto na Internet, elevando dessa forma a proteção às máquinas da LAN.