Entendendo TCP/IP (parte 2) - Endereços IP

Esse é o segundo artigo sobre TCP/IP que escrevo. No primeiro falei sobre a camada física TCP. Neste
artigo eu explico a camada de rede. O que são endereços IP, para que serve e como calcular a
máscara de sub-rede, endereços válidos e inválidos, roteamento. O objetivo é ensinar os conceitos,
mostrar os comandos mais comuns, e os arquivos de configuração envolvidos na configuração da rede.

[ Hits: 91.074 ]

Por: Ricardo Lino Olonca em 01/04/2011


Configurando a rede no Linux



Para configurar a rede no Linux basta editar o arquivo /etc/network/interfaces (distros baseadas em Debian):

# /etc/network/interfaces
auto lo
iface lo inet loopback
allow-hotplug eth0
iface eth0 inet static
        address 172.28.80.56 # IP
        netmask 255.255.0.0 # Máscara de subrede
        network 172.28.0.0 # Endereço de rede
        broadcast 172.28.255.255 # Endereço de broadcast

Em outras distribuições, esses arquivos podem ser /etc/sysconfig/network ou /etc/sysconfig/network-scrIPts/ifcfg-eth0.

Testando a conexão com ping

Para testar se a conexão está ok há o comando ping. A forma de usá-lo é:

ping <IP_destino>

Por exemplo:

ping 172.28.80.1
PING 172.28.80.1 (172.28.80.1) 56(84) bytes of data.
64 bytes from 172.28.80.1: icmp_seq=1 ttl=64 time=0.056 ms
64 bytes from 172.28.80.1: icmp_seq=2 ttl=64 time=0.048 ms
64 bytes from 172.28.80.1: icmp_seq=3 ttl=64 time=0.042 ms
64 bytes from 172.28.80.1: icmp_seq=4 ttl=64 time=0.048 ms

--- 172.28.80.1 ping statistics ---
4 packets transmitted, 4 received, 0% packet loss, time 2999ms
rtt min/avg/max/mdev = 0.042/0.048/0.056/0.008 ms

Podemos ver que a máquina 172.28.80.1 está respondendo. Logo, minha rede está ok.

Se você usa dhcp em sua rede, o arquivo /etc/network/interfaces deverá se parecer com isso:

auto eth0
iface eth0 inet dhcp

O objetivo aqui não é falar de dhcp (ainda não) mas mostrar os conceitos de rede e como efetuar a configuração no Linux.

Em distribuições baseadas em Red Hat, o arquivo é /etc/sysconfig/network-scripts/ifcfg-eth0, e deve conter algo parecido com isso:

DEVICE=eth0
BOOTPROTO=none
BROADCAST=172.28.255.255
IPADDR=172.28.80.56
NETMASK=255.255.0.0
NETWORK=172.28.0.0
ONBOOT=yes

Mas eu disse que, com um IP inválido, não é possível navegar na Internet. Como resolver isso? Com roteamento, assunto do próximo tópico.

Página anterior     Próxima página

Páginas do artigo
   1. Introdução - Por que usar endereços IP?
   2. Problemas do IP
   3. Endereços inválidos
   4. Máscara de sub-rede
   5. Endereços de rede e de broadcast
   6. Configurando a rede no Linux
   7. Roteamento
   8. Considerações finais
Outros artigos deste autor

Problemas encontrados na adoção do IPv6

O fim está próximo

Entendendo TCP/IP (parte 4) - DHCP

Entendendo TCP/IP (Parte 6) - Firewall

MooseFS - Sistema de arquivos distribuído

Leitura recomendada

Instalação do CentOS Atomic para Gerenciamento de Containers Docker

Explicando DHCP passo a passo

Instalação do PAP (PostgreSL, Apache2 e PHP7) no Debian Jessie

Load balance e alta disponibilidade com Bonding

Instalar e configurar um servidor FTP no CentOS

  
Comentários
[1] Comentário enviado por brunotec em 01/04/2011 - 12:21h

Muito Bom Artigo Ricardo, Parabéns!

Estou iniciando em Redes e esse artigo será uma bela referencia para mim.

se possível gostaria de tirar duas dúvidas que fiquei com elas ao ler seu artigo:


Citação do Artigo
"Numa máscara 255.255.255.240 só teremos 14 endereços disponíveis, ao invés de 16. "

isso seria pq o primeiro endereço de rede e o ultimo para broadcast não poderiam ser usados? não entendi muito bem...

outra dúvida é no arquivo /etc/network/interfaces essa linha: allow-hotplug eth0

nunca cheguei a saber pra que que ela serve afinal.

somente essas dúvidas, mas novamete parabéns pelo artigo cara e pela atitude de querer compartilhar conhecimento que é louvável.

um abraço.

[2] Comentário enviado por ricardoolonca em 01/04/2011 - 12:39h

Bruno, boa tarde.

Todos os endereços de rede e de broadcast são reservados. Eles não podem ser configurados em nenhuma interface de rede.

A linha allow-hotplug eth0 faz com que o Debian detecte e aplique as configurações logo que o cabo é ligado ou desligado.


[3] Comentário enviado por brunotec em 01/04/2011 - 13:12h

entendi,

Gostei muito do seu artigo e foi bastante esclarecedor Ricardo.

Obrigado ai pelo help!

[4] Comentário enviado por julio_hoffimann em 09/04/2011 - 21:41h

Oi Ricardo,

Parabéns pela ótima série! A sua abordagem torna um conteúdo denso em algo mais tangível a pessoas que, como eu, não são da área.

Abraço!

[5] Comentário enviado por elgio em 26/11/2011 - 16:54h

Não é correto chamar estes IPS de inválidos e tampouco de "não roteáveis", como frequentemente vejo por ai.

A palavra certa é IPs privados:
10.0.0.0/8
172.16.0.0/12
192.168.0.0/16

Entende-se por ips inválidos aqueles que não podem ser usados. Exemplo: o IP de broadcast não pode ser usado, é inválido. O mesmo para o IP de rede. A faixa 0.0.0.0/8 é inválida, pois nenhuma máquina poderá ter este IP, e assim por diante.

Também é errado chamar os IPs privados como não roteáveis. Como assim, não são roteáveis? Eu não posso roteá-los na minha rede local ou dentro da minha VPN? São sim roteáveis.

Ah bom. Eles são inválidos na Internet e não são roteáveis na Internet. Mas por isto que são chamados de privados.

Abraços,

[6] Comentário enviado por ricardoolonca em 30/11/2011 - 16:38h

Olá, elgio.

Você correto. O termo mais correto é "privado" e não "inválidos". Eles são inválidos apenas na Internet.

Quanto ao roteamento, novamente eu me refiro a "não roteável" do ponto de vista da Internet. Em redes locais eles são roteáveis normalmente, podendo ser usados em vlans apartadas, como na Dmz.

As suas observações são ótimas. Ajudam a deixar as coisas mais claras e tiram as dúvidas quanto a esse assunto.

Abraço.

[7] Comentário enviado por MAPOGOS em 02/04/2014 - 17:58h

Agora imagine o que acontece se eu pegar somente 7 bits para rede, ao invés de 8. Logo teremos a seguinte intervalo da rede.

00001010.00000000.00000000.00000000 até 00001011.11111111.11111111.11111111 que, convertendo para decimais é:

10.0.0.0 até 11.255.255.255.

Lebre-se de que somente os sete primeiros bits ficam "fixos". Quando qualquer um dos sete primeiros bits mudar, então o endereço já será de outra rede. Nesse exemplo, tanto os endereços começados com 10 quanto os começados com 11 fazem parte da mesma rede. Essa rede pode ser representada como 10.0.0.0/7.

Onde vc pegou os 7 bits que vc esta falando.Pois eu entendo de xor nor, and nand or exclusivo.Mas não tem nada a ver eu sei;
Ta mas onde estão os 7 bitis que vc tirou...

[8] Comentário enviado por ricardoolonca em 03/04/2014 - 05:35h

Repare nos 7 primeiro bits. Eles estão fixos, ou seja, não variam. Todos os IPs que começam com esses 7 bits são da mesma rede, o 10 e o 11. Como temos 7 bits do IP fixo, os 7 primeiros bits da máscara deve ser 1. Os demais são 0.


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts