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

Adicionar comentário

* Campos obrigatórios
5000
Powered by Commentics

Comentários

Nenhum comentário ainda. Seja o primeiro!


Veja a relação completa dos artigos de Rodrigo Klein Santos