Redes
Construindo Roteadores com Linux
by Christian Lyra Pedro Torres
Conteúdo:
• • • • • • • • • • • • • • • •
1 Introdução 2 Motivação 3 Hardware 4 Kernel 5 Comandos Básicos 6 Diretório /proc 7 Vlans 8 Roteamento Avançado 9 BGP e OSPF 10 Multicast 11 Firewalls 12 Controle de Tráfego 13 SNMP 14 IPv6 15 Conclusão 16 Referências
2
Introdução
Um roteador, em sua essência, é apenas uma máquina que recebe pacotes, toma alguma decisão com base neles e, finalmente, os repassa (ou não) adiante. No entanto, espera-se muito mais de um roteador do que apenas repassar pacotes. Funções que permitam o tráfego de diferentes protocolos, filtros de pacotes e geração de estatísticas são desejáveis e até mesmo essenciais. No presente documento veremos como uma máquina com Linux poderá cumprir todas essas tarefas. Utilizaremos para isso o Sistema Operacional GNU/Linux com a distribuição Debian. Vale lembrar que estaremos tratando de roteadores com interfaces ethernet apenas! A versão atualizada desse documento pode ser http://lyra.soueu.com.br/tiki-index.php?page=LinuxRouter encontrada em
Agradecimentos
Nossos agradecimentos a todos que nos ajudaram a escrever esse documento. Em especial aos colaboradores:
• •
Gentil de Bortoli Júnior (correções e sugestões no texto) Edson Flávio de Souza (correções no texto)
3
Motivação
Mas, afinal, por que usar PCs e Linux para construir roteadores quando temos disponíveis no mercado roteadores com hardware dedicado de marcas como a Cisco, Juniper, entre outras? Bem, mesmo levando em conta uma situação ideal onde houvesse recursos financeiros para adquirir tais equipamentos, ainda assim teríamos argumentos em favor de construir roteadores com Linux. Como vantagens podemos citar:
• • •
Preço Recursos Disponibilidade
Comparativamente, a primeira vantagem é óbvia, o custo de aquisição de um PC pode ser algumas ordens de grandeza mais barato do que um roteador dedicado. Mesmo que tenhamos um roteador dedicado, um