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

De Wiki Cursos IFPR Foz
Ir para navegaçãoIr para pesquisar
Sem resumo de edição
 
(73 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===
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:
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.
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>.


====ifconfig====
===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===
 
;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'''.


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>
: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


Configurar uma interface de rede (a interface fica automaticamente ativada):
;Configuração com ifconfig: Permite configurar uma interface de rede.


  ifconfig eth1 192.168.2.100 netmask 255.255.255.0
: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'''.
 
===Configuração permanente das interfaces de rede===
 
====Arquivo /etc/network/interfaces====
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''.
 
;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 [[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/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===
===route===
Linha 126: Linha 132:
  Tabela de Roteamento IP do Kernel
  Tabela de Roteamento IP do Kernel
  Destino        Roteador        MáscaraGen.    Opções Métrica Ref  Uso Iface
  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
  0.0.0.0        192.168.20.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.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.1.1.
*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.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.
*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
 
===IP alias===
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/>.
 
ifconfig eth0:0 192.168.10.100 netmask 255.255.255.0
ifconfig eth0:1 192.168.20.100 netmask 255.255.255.0
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:480 erros:0 descartados:0 excesso:0 quadro:0
          Pacotes TX:296 erros:0 descartados:0 excesso:0 portadora:0
          colisões:0 txqueuelen:1000
          RX bytes:50458 (50.4 KB) TX bytes:38253 (38.2 KB)
eth0:0  Link encap:Ethernet  Endereço de HW 08:00:27:44:99:83 
          inet end.: 192.168.10.100  Bcast:192.168.10.255  Masc:255.255.255.0
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Métrica:1
eth0:1  Link encap:Ethernet  Endereço de HW 08:00:27:44:99:83 
          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
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)
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 do cliente DNS===
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.
 
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


==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)