De acordo com as Leis 12.965/2014 e 13.709/2018, que regulam o uso da Internet e o tratamento de dados pessoais no Brasil, ao me inscrever na newsletter do portal DICAS-L, autorizo o envio de notificações por e-mail ou outros meios e declaro estar ciente e concordar com seus Termos de Uso e Política de Privacidade.
Transformando seu Linux em um roteador
Colaboração: Rodrigo Klein Santos
Data de Publicação: 09 de Março de 2005
O Zebra é um projeto Open Source, que transforma seu linux praticamente em
um router cisco, ou seja, ele te dá a opção de configurar sua rede por uma
interface identica a dos roteadores cisco, inclusive administrando protocolos
avançados de roteamento como RIP, OSPF e BGP, de maneira facil e rápida.
De inicio vamos abranger apenas a parte de instalação e configuração básica
do zebra.
Para que você tire maior proveito do Zebra, é bom ir se familiarizando com os
comando da família Cisco.
Vamos lá...
Primeiro baixe o pacote Zebra
[root@saopaulo install]# wget ftp://ftp.zebra.org/pub/zebra/zebra-0.94.tar.gz
Descompactando.
[root@saopaulo install]# tar -zxvf zebra-0.94.tar.gz
Com isso criamos o diretório zebra-0.94
Vamos entrar nele.
[root@saopaulo install]# cd zebra-0.94
Execute na sequencia,
[root@saopaulo zebra-0.94]# ./configure --with-mib-modules=smux
[root@saopaulo zebra-0.94]# make
[root@saopaulo zebra-0.94]# make install
Feito isso, vamos criar o arquivo de configuração do zebra.
Crie o arquivo: /usr/local/etc/zebra.conf
com o seguinte conteúdo.
<arquivo>
!
! Zebra configuration saved from vty
! 2008/02/04 20:04:45
!
hostname Router
password zebra
enable password zebra
!
interface lo
!
interface eth0
!
interface eth1
!
!
line vty
!
</arquivo>
Em /etc/rc.d/init.d
Crie o script zebra
<script>
#!/bin/sh
#
# Zebra
#
PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/sbin
export PATH
# Source functions
. /etc/init.d/functions
case "$1" in
start)
action "Iniciando Zebra : " /usr/local/sbin/zebra -d
;;
stop)
action "Parando Zebra : " kill -9 ``cat /var/run/zebra.pid``
;;
status)
;;
restart|reload)
$0 stop
$0 start
;;
*)
gprintf "Use: $0 {start|stop|status|restart}\n"
exit 1
esac
</script>
Feito isso.
[root@saopaulo zebra-0.94]# chmod 755 /etc/rc.d/init.d/zebra
[root@saopaulo zebra-0.94]# /etc/rc.d/init.d/zebra start
Iniciando Zebra : [ OK ]
[root@saopaulo zebra-0.94]#
Agora vamos acessar o zebra.
Ele abre uma porta de comunicação com o protocolo telnet, porta 2601
<zebra>
[root@saopaulo zebra-0.94]# telnet 127.0.0.1 2601
Trying 127.0.0.1...
Connected to 127.0.0.1.
Escape character is '^]'.
Hello, this is zebra (version 0.94).
Copyright 1996-2002 Kunihiro Ishiguro.
User Access Verification
Password:
Router> en
Password:
Router#
</zebra>
A senha padrão que vem no conf é 'zebra', mude-a depois.
Existem duas senhas, uma padrão para acesso via rede (VTY)
e uma segunda que é a do 'enable' (root no cisco)...
Você pode abreviar quase tudo, o comando 'enable' por exemplo
pode-se usar como 'en'.
Agora basta você executar os mesmos comandos de um router
Cisco..
Exemplos.
<zebra>
Router# sh run
Current configuration:
!
hostname Router
password zebra
enable password zebra
!
interface lo
!
interface eth0
!
interface eth1
!
!
line vty
!
end
Router#
<\zebra>
<zebra>
Router# conf t
Router(config)# int eth0
Router(config-if)# ip address 10.0.0.1/8 secondary
<ctrl+d>
Router(config)# wr m
Router# exit
<\zebra>
Agora vamos ver como ficou a interface do Linux...
[root@saopaulo zebra-0.94]# ip a
1: lo: <LOOPBACK,UP> mtu 16436 qdisc noqueue
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 brd 127.255.255.255 scope host lo
2: eth0: <BROADCAST,MULTICAST,UP> mtu 1500 qdisc pfifo_fast qlen 1000
link/ether 00:01:03:d7:f5:cb brd ff:ff:ff:ff:ff:ff
inet 172.16.0.1/24 brd 172.16.0.255 scope global eth0
inet 10.0.0.1/8 brd 10.255.255.255 scope global eth0
Notem que o novo IP 10.0.0.1 que configuramos pelo zebra e já
apareceu na configuração do sistema.
Bom, basicamente é isso, vale a pena dar uma boa lida na
documentação, para saber os comandos e mãos a obra, aproveite
as vantagens que o zebra proporciona em termos de facilidade
de configuração e boa sorte.
Abraço.
Rodrigo Klein Santos <<rodrigo (a) system4 com br>>