Rede e Roteamento: mudanças entre as edições

De Wiki Cursos IFPR Foz
Ir para navegaçãoIr para pesquisar
 
(76 revisões intermediárias pelo mesmo usuário não estão sendo mostradas)
Linha 1: Linha 1:
=Rede e Roteamento=
=Configuração de Rede e Roteamento=
<!--
<!--
<ref name=VALLE>VALLE, O. T. Adminstração de Redes com Linux: Fundamentos e práticas, IFSC, Florianópolis, 2010.</ref>
<ref name=VALLE>VALLE, O. T. Adminstração de Redes com Linux: Fundamentos e práticas, IFSC, Florianópolis, 2010.</ref>
<ref name=VALLE2>VALLE, O. T. Gerência de Redes, Diário Aula, 2014. http://wiki.sj.ifsc.edu.br/wiki/index.php/GER20706-2014-1</ref>
<ref name=MORIMOTO>MORIMOTO, C. E. Seridores Linux: Guia prático, Sul Editores, Porto Alegre, 2013.</ref>
<ref name=MORIMOTO>MORIMOTO, C. E. Seridores Linux: Guia prático, Sul Editores, Porto Alegre, 2013.</ref>
-->
-->
==Configuração típica de uma rede institucional==
[[Arquivo:ServicosRede.png]] <ref name=VALLE>VALLE, O. T. Adminstração de Redes com Linux: Fundamentos e práticas, IFSC, Florianópolis, 2010.</ref>
Descrição dos principais elementos da rede:
*'''Roteador''' de acesso a Internet, provendo serviços como:
**'''''Firewall''''': barreira de proteção para bloquear acesso a conteúdo malicioso;
**'''''Proxy/Cache''''': intermediário para requisições entre clientes e servidores ''Web'';
**'''DMZ''' (''DeMilitarized Zone''): área de rede da organização acessada externamente, localizada  entre a rede interna e a Internet;
**'''Rede Privativa''': área da rede interna a instituição, não acessada diretamente da Internet;
*'''Servidor de serviços externos''', localizado na '''DMZ''', oferecendo serviços como:
**Servidor '''DNS''', resolvedor nomes de nomes de domínio;
**Servidor de '''Email''' para os usuários da organização.
**Servidor '''WWW''' para páginas da organização e dos usuários;
**Servidor '''FTP''' e '''SSH''' para os usuários poderem alterar arquivos no servidor.
*'''Switch gerenciável''', permitindo a configuração de VLANs;
*'''Servidor de serviços internos''', localizado na '''rede privativa''', oferecendo serviços como:
**Servidor '''DHCP''' para prover IP dinâmico para os computadores da rede interna;
**Servidor de '''arquivos''' e '''impressão''';
**Administração de '''cotas de disco''' para os usuários e grupos;
**Servidor '''Samba''' para compartilhamento com máquinas Windows;
**Servidor '''FTP''' e '''SSH''' para os usuários poderem alterar arquivos no servidor.
**Serviço '''LDAP''', fornecendo controle de ''login'' na rede;
*'''Impressora de rede''';
*'''Ponto de acesso sem fio'''.
O objetivo deste tópico é mostrar como configurar '''interfaces de rede''' em um servidor Linux, bem como configura-lo como '''roteador''' e como provedor de '''serviços de rede'''.


==Configuração de interface de rede==
==Configuração de interface de rede==
Linha 37: Linha 12:
Para uma configuração completa é ainda necessário definir o '''nome da máquina''', o '''roteador padrão''' (''default gateway'') e o '''servidor de nomes''' (DNS).
Para uma configuração completa é ainda necessário definir o '''nome da máquina''', o '''roteador padrão''' (''default gateway'') e o '''servidor de nomes''' (DNS).


Todos estes parâmetros podem ser '''configurados estaticamente''' pelo administrador, ou '''dinamicamente''' por meio de um '''servidor DHCP'''. A configuração estática é recomendada para servidores, já a configuração dinâmica é utilizada para máquinas de uso geral <ref name=VALLE/>.
Todos estes parâmetros podem ser '''configurados estaticamente''' pelo administrador, ou '''dinamicamente''' por meio de um '''servidor DHCP'''.  


===/etc/network/interfaces===
A '''configuração estática''' é recomendada para '''servidores''', já a '''configuração dinâmica''' é utilizada para máquinas '''''desktop''''' de uso geral <ref name=VALLE>VALLE, O. T. Adminstração de Redes com Linux: Fundamentos e práticas, IFSC, Florianópolis, 2010.</ref>.
O arquivo '''[http://manpages.ubuntu.com/manpages/trusty/en/man5/interfaces.5.html interfaces]''' contém a configuração das interfaces de rede ativadas automaticamente na hora do ''boot''.


Por exemplo:
===ifconfig===
evandro@ubuntuServer:/etc/network$ more interfaces
# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).
# The loopback network interface
auto lo
iface lo inet loopback
# The primary network interface
auto eth0
iface eth0 inet dhcp
 
:No exemplo está indicado que a interface eth0 recebe configuração via DHCP.
 
====ifconfig====


O aplicativo '''[http://manpages.ubuntu.com/manpages/karmic/pt_BR/man8/ifconfig.8.html ifconfig]''' pode ser utilizado para visualizar a configuração ou configurar uma interface de rede. Se nenhum argumento for passado na chamada do ifconfig, o comando mostra a configuração atual de cada interface de rede.  
O aplicativo '''[http://manpages.ubuntu.com/manpages/karmic/pt_BR/man8/ifconfig.8.html ifconfig]''' pode ser utilizado para visualizar a configuração ou configurar uma interface de rede. Se nenhum argumento for passado na chamada do ifconfig, o comando mostra a configuração atual de cada interface de rede.  
Linha 97: Linha 56:
*MTU: 1500 -> ''Maximum Transfer Unit'' -> Tamanho máximo do datagrama suportado pelo enlace
*MTU: 1500 -> ''Maximum Transfer Unit'' -> Tamanho máximo do datagrama suportado pelo enlace


===Comandos de configuração de rede com ifconfig===
===Configuração manual de rede===


Referências: <ref name=VALLE2>VALLE, O. T. Gerência de Redes, Diário Aula, 2014. http://wiki.sj.ifsc.edu.br/wiki/index.php/GER20706-2014-1</ref>
;Cliente DHCP: O '''cliente DHCP''' ('''[http://manpages.ubuntu.com/manpages/dapper/en/man8/dhclient.8.html dhclient]''')vem instalado por padrão nas estações Ubuntu. Este serviço é acionado automaticamente quando a estação é configurada para '''obter endereço IP automaticamente'''.


Configurar uma interface de rede (a interface fica automaticamente ativada):
:Também é possível chamar o serviço para obter a configuração IP automática para uma dada interface de rede, por exemplo, o comando:
dhclient eth0


  ifconfig eth1 192.168.2.100 netmask 255.255.255.0
;Configuração com ifconfig: Permite configurar uma interface de rede.
 
:Exemplo:
  ifconfig eth1 192.168.20.10 netmask 255.255.252.0


Desativar uma interface:
Desativar uma interface:
  ifconfig eth1 down
  ifconfig eth1 down


Ativar uma interface:
Ativar uma interface:
  ifconfig eth1 up
  ifconfig eth1 up


Ao se configurar uma interface de rede, cria-se uma '''rota automática''' para a sub-rede diretamente acessível via aquela interface. Isto se chama '''roteamento mínimo'''.
Ao se configurar uma interface de rede, cria-se uma '''rota automática''' para a sub-rede diretamente acessível via aquela interface. Isto se chama '''roteamento mínimo'''.


A configuração de uma interface de rede com '''ifconfig''' não é permanente no sistema. Caso se deseje uma configuração permanente deve-se editar o arquivo '''/etc/network/interfaces'''.
A configuração de uma interface de rede com '''ifconfig''' '''não é permanente''' no sistema. Caso se deseje uma configuração permanente deve-se editar o arquivo '''/etc/network/interfaces'''.


===route===
===Configuração permanente das interfaces de rede===
O comando '''[http://manpages.ubuntu.com/manpages/trusty/pt_BR/man8/route.8.html route]''' mostra e manipula '''tabelas de roteamento''' no Linux.


Para verificar a '''tabela de roteamento''' do computador, executar o comando:
====Arquivo /etc/network/interfaces====
route -n
O arquivo '''[http://manpages.ubuntu.com/manpages/trusty/en/man5/interfaces.5.html interfaces]''' permite configurar de modo permanente as interfaces de rede, as quais são ativadas automaticamente na hora do ''boot''.
;Exemplo:
evandro@ubuntuServer:~$ route -n
Tabela de Roteamento IP do Kernel
Destino        Roteador        MáscaraGen.   Opções Métrica Ref  Uso Iface
0.0.0.0        192.168.1.1    0.0.0.0        UG    0      0        0 eth0
192.168.1.0    0.0.0.0        255.255.255.0  U    0      0        0 eth0
*Na primeira linha o '''destino 0.0.0.0''' indica uma '''rota default''', ou qualquer IP diferente da rede local -> Para tal a saída é o '''roteador padrão''' 192.168.1.1.
*Na segunda linha o destino 192.168.1.0 indica a '''rede local''' -> Para tal, o '''roteador 0.0.0.0''' indica que '''não há necessidade de roteamento''' pois o destino está na própria rede.


===IP alias===
;Configuração dinâmica com arquivo /etc/network/interfaces: Exemplo de configuração padrão para ''desktop'':
Pode-se associar mais de um endereço a uma mesma interface de rede, os chamados '''IP alias'''. Isto pode ser útil em configurações especiais, por exemplo, quando temos duas sub-redes compartilhando o mesmo domínio de colisão <ref name=VALLE/>.
evandro@ubuntuServer:/etc/network$ more interfaces
 
# This file describes the network interfaces available on your system
  ifconfig eth0:0 192.168.10.100 netmask 255.255.255.0
  # and how to activate them. For more information, see interfaces(5).
   
   
  ifconfig eth0:1 192.168.20.100 netmask 255.255.255.0
  # The loopback network interface
auto lo
iface lo inet loopback
   
   
  evandro@ubuntuServer:~$ ifconfig
  # The primary network interface
  eth0     Link encap:Ethernet  Endereço de HW 08:00:27:44:99:83  
  auto eth0
          inet end.: 192.168.1.67  Bcast:192.168.1.255  Masc:255.255.255.0
  iface eth0 inet dhcp
          endereço inet6: fe80::a00:27ff:fe44:9983/64 Escopo:Link
:No exemplo a interface '''eth0''' recebe configuração via '''DHCP''' e a interface '''lo''' é o endereço de '''''loopback''''' utilizados para testes locais
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Métrica:1
 
          pacotes RX:480 erros:0 descartados:0 excesso:0 quadro:0
;Configuração estática com arquivo /etc/network/interfaces:
          Pacotes TX:296 erros:0 descartados:0 excesso:0 portadora:0
  auto eth0
          colisões:0 txqueuelen:1000
  iface eth0 inet static
          RX bytes:50458 (50.4 KB) TX bytes:38253 (38.2 KB)
  address 192.168.40.10
   
  netmask 255.255.252.0
  eth0:0  Link encap:Ethernet  Endereço de HW 08:00:27:44:99:83  
  gateway 192.168.40.1
          inet end.: 192.168.10.100  Bcast:192.168.10.255 Masc:255.255.255.0
:No exemplo a interface '''eth0''' recebe a configuração de forma estática, incluindo o '''endereço IP''' (''address''), máscara de rede (netmask) e o roteador padrão (''gateway'').
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Métrica:1
 
Após a edição da configuração o serviço de rede deve ser reiniciado:
  eth0:1  Link encap:Ethernet  Endereço de HW 08:00:27:44:99:83 
  /etc/init.d/networking restart
          inet end.: 192.168.20.100  Bcast:192.168.20.255  Masc:255.255.255.0
 
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Métrica:1
===Teste de conectividade===
;ping: Aplicativo '''ping''' permite a um usuário verificar a conectividade na rede. Exemplo:
lo      Link encap:Loopback Local 
  ping 192.168.20.1
          inet end.: 127.0.0.1  Masc:255.0.0.0
          endereço inet6: ::1/128 Escopo:Máquina
          UP LOOPBACK RUNNING  MTU:65536  Métrica:1
          pacotes RX:0 erros:0 descartados:0 excesso:0 quadro:0
          Pacotes TX:0 erros:0 descartados:0 excesso:0 portadora:0
          colisões:0 txqueuelen:0
          RX bytes:0 (0.0 B) TX bytes:0 (0.0 B)
evandro@ubuntuServer:~$ route -n
  Tabela de Roteamento IP do Kernel
Destino        Roteador        MáscaraGen.   Opções Métrica Ref  Uso Iface
0.0.0.0        192.168.1.1    0.0.0.0        UG    0      0        0 eth0
192.168.1.0    0.0.0.0        255.255.255.0  U    0      0        0 eth0
192.168.10.0    0.0.0.0        255.255.255.0  U    0      0        0 eth0
  192.168.20.0    0.0.0.0        255.255.255.0  U    0      0        0 eth0


===Configuração DNS===
==Configuração do cliente DNS==
A configuração do '''servidor de nomes''' ('''DNS''') indica qual o servidor de nomes será consultado para traduzir '''nomes de domínio''' para '''endereços IP'''.
A configuração cliente do [[DNS|'''servidor de nomes''' ('''DNS''')]] indica qual o servidor de nomes será consultado para traduzir '''nomes de domínio''' para '''endereços IP'''.


No Ubuntu o arquivo de configuração do DNS é o '''[http://manpages.ubuntu.com/manpages/trusty/en/man5/resolv.conf.5.html /etc/resolve.conf]''' e é atualizado automaticamente pelo sistema.
No Ubuntu o arquivo de configuração do DNS é o '''[http://manpages.ubuntu.com/manpages/trusty/en/man5/resolv.conf.5.html /etc/resolv.conf]''' e é atualizado automaticamente pelo sistema.


Para se editar manualmente este arquivo deve-se desabilitar o serviço automático de atualização, através do comando '''dpkg-reconfigure resolvconf''', escolhendo a primeira opção como yes e as demais opções deixando o padrão. Em seguida edita-se o arquivo '''/etc/resolv.conf''', por exemplo:
Para se editar manualmente este arquivo deve-se desabilitar o serviço automático de atualização, através do comando '''dpkg-reconfigure resolvconf''', escolhendo a primeira opção como yes e as demais opções deixando o padrão. Em seguida edita-se o arquivo '''/etc/resolv.conf''', por exemplo:
  #DNS público da Google
  #DNS público da Google
  nameserver 8.8.8.8
  nameserver 8.8.8.8
==Verificação e teste do roteamento==
===route===
O comando '''[http://manpages.ubuntu.com/manpages/trusty/pt_BR/man8/route.8.html route]''' mostra e manipula '''tabelas de roteamento''' no Linux.
Para verificar a '''tabela de roteamento''' do computador, executar o comando:
route -n
;Exemplo:
evandro@ubuntuServer:~$ route -n
Tabela de Roteamento IP do Kernel
Destino        Roteador        MáscaraGen.    Opções Métrica Ref  Uso Iface
0.0.0.0        192.168.20.1    0.0.0.0        UG    0      0        0 eth0
192.168.20.0    0.0.0.0        255.255.252.0  U    0      0        0 eth0
*Na primeira linha o '''destino 0.0.0.0''' indica uma '''rota default''', ou qualquer IP diferente da rede local -> Para tal a saída é o '''roteador padrão''' 192.168.20.1.
*Na segunda linha o destino 192.168.20.0 indica a '''rede local''' -> Para tal, o '''roteador 0.0.0.0''' indica que '''não há necessidade de roteamento''' pois o destino está na própria rede.


===Definição de rotas estáticas===
===Definição de rotas estáticas===
'''Rotas estáticas''' podem ser adicionadas a uma '''tabela de roteamento''' de um host com os comandos:
'''Rotas estáticas''' podem ser adicionadas a uma '''tabela de roteamento''' de um host com os comandos:
*Configuração do '''roteador padrão''' da rede:
*Configuração do '''roteador padrão''' da rede:
  route add default gw 192.168.1.254 dev eth0
  route add default gw 192.168.20.1 dev eth0
*Adição de uma '''rota estática''' em um roteador:
*Adição de uma '''rota estática''' em um roteador:
  route add -net 192.168.1.0 netmask 255.255.255.0 gw 10.0.0.2 dev eth1
  route add -net 192.168.20.0 netmask 255.255.252.0 gw 10.0.0.2 dev eth1
*Remover uma rota:
*Remover uma rota:
  route del -net 192.168.1.0 netmask 255.255.255.0 gw 10.0.0.2 dev eth1
  route del -net 192.168.20.0 netmask 255.255.252.0 gw 10.0.0.2 dev eth1


==Referências==
==Referências==

Edição atual tal como às 00h05min de 17 de agosto de 2017

Configuração de Rede e Roteamento

Configuração de interface de rede

Para adicionar uma máquina na rede é obrigatória a configuração de no mínimo dois parâmetros, o endereço IP e a máscara de rede. Com isto a máquina já está apta para se comunicar com outras na mesma rede local.

Para uma configuração completa é ainda necessário definir o nome da máquina, o roteador padrão (default gateway) e o servidor de nomes (DNS).

Todos estes parâmetros podem ser configurados estaticamente pelo administrador, ou dinamicamente por meio de um servidor DHCP.

A configuração estática é recomendada para servidores, já a configuração dinâmica é utilizada para máquinas desktop de uso geral [1].

ifconfig

O aplicativo ifconfig pode ser utilizado para visualizar a configuração ou configurar uma interface de rede. Se nenhum argumento for passado na chamada do ifconfig, o comando mostra a configuração atual de cada interface de rede.

Exemplo
Saída do comando ifconfig:
evandro@ubuntuServer:~$ ifconfig
eth0     Link encap:Ethernet  Endereço de HW 08:00:27:44:99:83  
         inet end.: 192.168.1.67  Bcast:192.168.1.255  Masc:255.255.255.0
         endereço inet6: fe80::a00:27ff:fe44:9983/64 Escopo:Link
         UP BROADCAST RUNNING MULTICAST  MTU:1500  Métrica:1
         pacotes RX:152 erros:0 descartados:0 excesso:0 quadro:0
         Pacotes TX:85 erros:0 descartados:0 excesso:0 portadora:0
         colisões:0 txqueuelen:1000 

         RX bytes:19360 (19.3 KB) TX bytes:11957 (11.9 KB)
lo       Link encap:Loopback Local  
         inet end.: 127.0.0.1  Masc:255.0.0.0
         endereço inet6: ::1/128 Escopo:Máquina
         UP LOOPBACK RUNNING  MTU:65536  Métrica:1
         pacotes RX:0 erros:0 descartados:0 excesso:0 quadro:0
         Pacotes TX:0 erros:0 descartados:0 excesso:0 portadora:0
         colisões:0 txqueuelen:0 
         RX bytes:0 (0.0 B) TX bytes:0 (0.0 B)
Descrição da saída do comando ifconfig

Interfaces de rede:

  • eth0 -> Configuração da interface de rede cabeada (placa de rede);
  • lo -> Configuração da interface de loopback, utilizado para testes locais do protocolo IP;

Parâmetros principais indicados para interface: eth0

  • Encapsulamento do Link: Ethernet -> Indica que o tipo de rede é Ethernet;
  • inet end: 192.168.1.67 -> Endereço IP;
  • Masc: 255.255.255.0 -> Máscara de rede;
  • Bcast: 192.168.1.255 -> Endereço de broadcast;
  • Endereço de HW: 08:00:27:44:99:83 -> Endereço físico da interface;
  • endereço inet6: fe80::a00:27ff:fe44:9983/64 Escopo:Link -> Endereço IPv6 de escopo local gerado por autoconfiguração
  • MTU: 1500 -> Maximum Transfer Unit -> Tamanho máximo do datagrama suportado pelo enlace

Configuração manual de rede

Cliente DHCP
O cliente DHCP (dhclient)vem instalado por padrão nas estações Ubuntu. Este serviço é acionado automaticamente quando a estação é configurada para obter endereço IP automaticamente.
Também é possível chamar o serviço para obter a configuração IP automática para uma dada interface de rede, por exemplo, o comando:
dhclient eth0
Configuração com ifconfig
Permite configurar uma interface de rede.
Exemplo:
ifconfig eth1 192.168.20.10 netmask 255.255.252.0

Desativar uma interface:

ifconfig eth1 down

Ativar uma interface:

ifconfig eth1 up

Ao se configurar uma interface de rede, cria-se uma rota automática para a sub-rede diretamente acessível via aquela interface. Isto se chama roteamento mínimo.

A configuração de uma interface de rede com ifconfig não é permanente no sistema. Caso se deseje uma configuração permanente deve-se editar o arquivo /etc/network/interfaces.

Configuração permanente das interfaces de rede

Arquivo /etc/network/interfaces

O arquivo interfaces permite configurar de modo permanente as interfaces de rede, as quais são ativadas automaticamente na hora do boot.

Configuração dinâmica com arquivo /etc/network/interfaces
Exemplo de configuração padrão para desktop:
evandro@ubuntuServer:/etc/network$ more interfaces
# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).

# The loopback network interface
auto lo
iface lo inet loopback

# The primary network interface
auto eth0
iface eth0 inet dhcp
No exemplo a interface eth0 recebe configuração via DHCP e a interface lo é o endereço de loopback utilizados para testes locais
Configuração estática com arquivo /etc/network/interfaces
auto eth0
iface eth0 inet static
address 192.168.40.10
netmask 255.255.252.0
gateway 192.168.40.1
No exemplo a interface eth0 recebe a configuração de forma estática, incluindo o endereço IP (address), máscara de rede (netmask) e o roteador padrão (gateway).

Após a edição da configuração o serviço de rede deve ser reiniciado:

/etc/init.d/networking restart

Teste de conectividade

ping
Aplicativo ping permite a um usuário verificar a conectividade na rede. Exemplo:
ping 192.168.20.1

Configuração do cliente DNS

A configuração cliente do servidor de nomes (DNS) indica qual o servidor de nomes será consultado para traduzir nomes de domínio para endereços IP.

No Ubuntu o arquivo de configuração do DNS é o /etc/resolv.conf e é atualizado automaticamente pelo sistema.

Para se editar manualmente este arquivo deve-se desabilitar o serviço automático de atualização, através do comando dpkg-reconfigure resolvconf, escolhendo a primeira opção como yes e as demais opções deixando o padrão. Em seguida edita-se o arquivo /etc/resolv.conf, por exemplo:

#DNS público da Google
nameserver 8.8.8.8

Verificação e teste do roteamento

route

O comando route mostra e manipula tabelas de roteamento no Linux.

Para verificar a tabela de roteamento do computador, executar o comando:

route -n
Exemplo
evandro@ubuntuServer:~$ route -n
Tabela de Roteamento IP do Kernel
Destino         Roteador        MáscaraGen.    Opções Métrica Ref   Uso Iface
0.0.0.0         192.168.20.1     0.0.0.0         UG    0      0        0 eth0
192.168.20.0     0.0.0.0         255.255.252.0   U     0      0        0 eth0
  • Na primeira linha o destino 0.0.0.0 indica uma rota default, ou qualquer IP diferente da rede local -> Para tal a saída é o roteador padrão 192.168.20.1.
  • Na segunda linha o destino 192.168.20.0 indica a rede local -> Para tal, o roteador 0.0.0.0 indica que não há necessidade de roteamento pois o destino está na própria rede.

Definição de rotas estáticas

Rotas estáticas podem ser adicionadas a uma tabela de roteamento de um host com os comandos:

  • Configuração do roteador padrão da rede:
route add default gw 192.168.20.1 dev eth0
  • Adição de uma rota estática em um roteador:
route add -net 192.168.20.0 netmask 255.255.252.0 gw 10.0.0.2 dev eth1
  • Remover uma rota:
route del -net 192.168.20.0 netmask 255.255.252.0 gw 10.0.0.2 dev eth1

Referências

  1. VALLE, O. T. Adminstração de Redes com Linux: Fundamentos e práticas, IFSC, Florianópolis, 2010.

--Evandro.cantu (discussão) 18h43min de 22 de novembro de 2015 (BRST)