+ Responder ao Tópico



  1. #1

    Thumbs up [Tutorial] - Instalação e Configuração do OpenBGP no FreeBSD

    Bom dia Pessoal,

    Vou focar este tutorial somente na Instalação e Configuração do OpenBGP.

    Para Instalação do FreeBSD indico este tutorial:

    http://pplware.sapo.pt/linux/aprenda...passo-a-passo/

    Para BGP aconselho também fazer Kernel Tuning no FreeBSD.

    Após a Instalação do FreeBSD faça o seguinte passo a passo:

    1) Baixe o Ports do FreeBSD

    Código :
    portsnap fetch extract

    2) Atualize o Ports
    Código :
    portsnap fetch update

    3) Baixar Pacotes do OpenBGP e suas dependências recursivamente.
    Código :
      cd /usr/ports/net/openbgpd ; make fetch-recursive ;

    4) Configurar o OpenBGP e suas dependências recursivamente.
    Código :
      cd /usr/ports/net/openbgpd ; make config-recursive ;

    5) Instalar o OpenBGP e suas dependências recursivamente.
    Código :
      make install clean ; rehash ;

    6) Configure o OpenBGP para inicialização ao iniciar o Sistema Operacional
    Código :
     echo 'openbgpd_enable="YES"' >> /etc/rc.conf

    7) Inicie o Serviço do OpenBGP
    Código :
     service openbgpd start
    ou
    Código :
    /usr/local/etc/rc.d/openbgpd start


    8) Ocorrerá um erro por falta do arquivo de configuração bgpd.conf que deve ser criado em /usr/local/etc/

    Acesse meu tópico anterior sobre um exemplo do arquivo de configuração do OpenBGP bgpd.conf
    Código :
     https://under-linux.org/showthread.php?t=177414

    9) Após criar o arquivo de configuração, tente novamente iniciar o serviço:
    Código :
     service openbgpd stop ; service openbgpd start
    ou
    Código :
     service openbgpd restart


    10) Alguns erros podem ocorrer, por exemplo de permissões erradas ou erros no arquivo de configuração:

    # Para Verificar se houveram erros:
    Código :
    tail -f /var/log/messages

    # Erro de Permissão
    Código :
     Feb  4 11:43:41 FREEBSD bgpd[8755]: /usr/local/etc/bgpd.conf: group/world readable/writeable
    # Correção
    Código :
     chmod 400 bgpd.conf

    # Erro de Configuração
    Código :
    Feb  4 11:43:41 FREEBSD bgpd[8755]: config file /usr/local/etc/bgpd.conf has errors, not reloading

    # Correção, Acesse o arquivo bgpd.conf e reveja toda sua configuração
    Código :
     ee /usr/local/etc/bgpd.conf

    11) Após todas correções feitas, reinicie o serviço e veja se houveram erros

    # Verifique como estão as sessões BGP
    Código :
     bgpctl show

    # Caso esteja funcionando aparecerá desta forma:
    Código :
     
    (root@FREEBSD)[/usr/local/etc]# bgpctl show
     
     
    Neighbor               AS               MsgRcvd    MsgSent  OutQ Up/Down  State/PrfRcvd
    OPERADORA 1             65534          0               0            0       Never       Active


    Pessoal espero ter ajudado quem tinha dúvidas na instalação e configuração do OpenBGP no FreeBSD.

    Postem suas dúvidas, críticas e elogios.

    Qualquer detalhe mais a fundo sobre o arquivo de configuração ou serviços profissionais de consultoria em BGP me adicionem no Skype.

    Se ajudou clica ali na estrelinha e agradeça.

    Abraço.

  2. #2

    Padrão

    Citação Postado originalmente por Arthur Bernardes Ver Post
    Parabéns pelo tópico @alissonx.
    Eu reparei que no seu tópico anterior sobre o arquivo "bgpd.conf" e reparei que tem um filtro básico de anúncio para as operadoras (allow e deny), como fica o uso de atributos do BGP como o "local_pref" e "as-path-prepend"?

    Opa amigo, é simples...


    Dentro do Peer ou do Grupo você simplesmente utiliza os atributos normalmente, como no exemplo abaixo:


    Código :
    group "OPERADORA"
    {
            multihop 255 
            set localpref 400
            remote-as 65535
            local-address 10.0.0.1
            softreconfig in yes
            set prepend-self 3
            neighbor 10.0.0.2 {
                    descr   "OPERADORA 1 "
                    announce all
            }
    }




    Citação Postado originalmente por Arthur Bernardes Ver Post
    Reparei bastante que no RouterOS o "set bgp prepend" é dado em número qualquer: Ex: Se eu quero "prependar" 3 vezes o LINK2 por exemplo eu coloco o número 3 e no VyOS é preciso colocar o número do meu AS três vezes: set policy route-map LINK2-OUT set as-path-prepend "65550 65550 65550" e no OpenBGP, como seria?

    Como descrito acima, basta utilizar set prepend-self [Número]


    Citação Postado originalmente por Arthur Bernardes Ver Post
    Outra dúvida que eu queria trazer é: O "bgpd.conf" permite o uso de um grupo de "remote-as", como ficaria o uso de atributos nesse caso? Ainda não sou um expert em BGP, estou estudando mas são algumas dúvidas básicas que tenho.

    Você utilizaria para sessões de Backup que utilizam o mesmo ASN, como por Exemplo sessões com PTT que possui RS1... RS2 e etc.


    Veja que estamos utilizando para o grupo a variável $asn_ptt que seria o ASN para RS1...RS2... e etc.


    Nos Peers RS1 e RS2 como não temos o atributo remote-as ele utilizará o do grupo.


    Já o Peer do LG (Looking Glass) tem o atributo remote-as então será lido o do próprio Peer.


    Código :
    group "PTT"
    {
            remote-as $asn_ptt  # ASN PTT RS1 e RS2
            enforce neighbor-as no
            set localpref 500
            announce all
            local-address $meuip_ptt
            softreconfig in yes
     
     
            neighbor $ptt_lg {
                    remote-as $ptt_lg  # ASN PTT LOOKING GLASS
                    descr   "AS65534-PTT-LG"
            }
            neighbor $ptt_rs1 {
                    descr   "AS65535-PTT-RS1"
            }
     
     
            neighbor $ptt_rs2 {
                    descr   "AS65535-PTT-RS2"
            }
     
     
    }

  3. #3

    Padrão Re: [Tutorial] - Instalação e Configuração do OpenBGP no FreeBSD

    Citação Postado originalmente por Arthur Bernardes Ver Post
    Perfeito Alisson. Outra dúvida, nas plataformas que conheço o "prepend" deve ser definido em "out" e o "local_pref" em "in", no OpenBGP não precisa disso?
    Você define para o Peer.

  4. #4

    Padrão Re: [Tutorial] - Instalação e Configuração do OpenBGP no FreeBSD

    Boa tarde amigos,

    Muito bacana esse tópico. Está sendo extremamente Útil.

    Fiz os procedimentos, agora está apresentando um erro como se faltasse um outro arquivo.
    Criei o arquivo bgpd.conf, porém ao fazer os comandos para verificar a sessão bgpctl show ou bgpctl s rib nei x.x.x.x out aparece esse erro abaixo

    bgpctl: connect: /var/run/bgpd.sock: No such file or directory

    Deixei de fazer alguma coisa?

  5. #5

    Padrão Re: [Tutorial] - Instalação e Configuração do OpenBGP no FreeBSD

    Citação Postado originalmente por sonia Ver Post
    Boa tarde amigos,

    Muito bacana esse tópico. Está sendo extremamente Útil.

    Fiz os procedimentos, agora está apresentando um erro como se faltasse um outro arquivo.
    Criei o arquivo bgpd.conf, porém ao fazer os comandos para verificar a sessão bgpctl show ou bgpctl s rib nei x.x.x.x out aparece esse erro abaixo

    bgpctl: connect: /var/run/bgpd.sock: No such file or directory

    Deixei de fazer alguma coisa?
    Boa tarde,

    Provavelmente o openbgpd não levantou.

    veja o erro em:

    tail -f /var/log/messages

  6. #6

    Padrão Re: [Tutorial] - Instalação e Configuração do OpenBGP no FreeBSD

    Bom dia,

    Obrigada por responder.

    Ao verificar as configurações, aparece o erro de permissão
    root@bgp2:~ # /usr/local/sbin/bgpd -n
    /usr/local/etc/bgpd.conf: group/world readable/writeable

    Conforme você especificou no tópico, mas ao usar o comando de resolução aparece o erro como se o arquivo não existisse.

    root@bgp2:~ # chmod 400 bgpd.conf
    chmod: bgpd.conf: No such file or directory

    Mas o arquivo aparece na lista

    root@bgp2:~ # vi /usr/local/etc/
    bash_completion.d/ periodic/ pkg.conf.sample
    bgpd.conf* pkg.conf rc.d/



    Seria um erro de configuração do arquivo que criei?

    Ao verificar as mensagens, aparecem esses erros, mas não entendi.

    root@bgp2:~ # tail -f /var/log/messages
    Aug 18 16:06:35 bgp2 sm-mta[1085]: NOQUEUE: SYSERR(root): opendaemonsocket: daemon Daemon0: cannot bind: Can't assign requested address
    Aug 18 16:06:35 bgp2 sm-mta[1085]: daemon Daemon0: problem creating SMTP socket
    Aug 18 16:06:40 bgp2 sm-mta[1085]: NOQUEUE: SYSERR(root): opendaemonsocket: daemon Daemon0: cannot bind: Can't assign requested address
    Aug 18 16:06:40 bgp2 sm-mta[1085]: daemon Daemon0: problem creating SMTP socket
    Aug 18 16:06:46 bgp2 sm-mta[1085]: NOQUEUE: SYSERR(root): opendaemonsocket: daemon Daemon0: cannot bind: Can't assign requested address
    Aug 18 16:06:46 bgp2 sm-mta[1085]: daemon Daemon0: problem creating SMTP socket
    Aug 18 16:06:51 bgp2 sm-mta[1085]: NOQUEUE: SYSERR(root): opendaemonsocket: daemon Daemon0: cannot bind: Can't assign requested address
    Aug 18 16:06:51 bgp2 sm-mta[1085]: daemon Daemon0: problem creating SMTP socket
    Aug 18 16:06:51 bgp2 sm-mta[1085]: NOQUEUE: SYSERR(root): opendaemonsocket: daemon Daemon0: server SMTP socket wedged: exiting

  7. #7

    Padrão Re: [Tutorial] - Instalação e Configuração do OpenBGP no FreeBSD

    Boa tarde,

    Encontrei o erro. Ao aparecer essa mensagem de permissão
    root@bgp2:~ # /usr/local/sbin/bgpd -n
    /usr/local/etc/bgpd.conf: group/world readable/writeable

    Eu tinha colocado o comando chmod 400 bgpd.conf
    e tinha apresentado erro, porque eu não não tinha colocado o caminho correto
    chmod 400 /usr/local/sbin/bgpd.conf
    Depois disso deu certinho..

    Para o padrão bgpd.conf usei o arquivo padrão do outro tutorial e funcionou também. Obrigada