[FUG-BR] Problemas com roteamento FreeBSD-9.2

Samuel Peres samuelperes em migtelecom.com.br
Terça Fevereiro 4 11:23:44 BRST 2014


On 04/02/2014 11:13, Luiz Otavio O Souza wrote:
> 2014-02-03 Samuel Peres <samuelperes em migtelecom.com.br>:
>> Boa tarde,
>>
>> Estou com um problema estranho no FreeBSD-9.2 (r260799) com OpenBGPD.
>> Não consigo remover 1 rota específica, retorna o seguinte erro:
>>
>> # route delete -inet 187.xx.xxx.0/22 -iface vlan569 -fib 0
>> route: writing to routing socket: Address already in use
>> delete net 187.16.216.0: gateway vlan569 fib 0: gateway uses the same route
>> Exit 1
>>
>> No momento não estou com  nenhum IP configurado na mesma subnet da rota
>> que estou tentando remover (tinha, mas removi com ifconfig sem nenhum
>> problema). Com netstat ou bgpctl consigo ver a rota em questão, vejam:
>>
>> # netstat -nr | grep 187.xx.xxx
>> 187.xx.xxx.0/22    187.xx.xx.xx       UG1         0  3806179 vlan569
>>
>> Entretanto, não era para essa rota na está na VLAN 569, era para está em
>> outra VLAN. Esse mesmo problema foi tratado em [1], onde aparentemente
>> só foi corrigido aplicando um patch, mas não estou muito otimista e
>> recorro a FUG em busca de ajuda.
>>
>> Já tive esse problema umas duas ou três vezes, infelizmente só consegui
>> resolver após um reboot. Percebi que esse problema acontece da seguinte
>> forma (simulei isso para constatar):
>>
>> * Todas sessões BGP estão down no início. Em seguida:
>>
>> 1- Subo a sessão BGP do PTT;
>> 2- Subo a sessão BGP da Algar;
>>
>> Tudo ok até aqui
>>
>> 3- down na sessão com PTT;
>> 4- down na sessão da Algar;
>> 5- Subo novamente a sessão da Algar;
>> 6- Tento subir novamente a sessão com o PTT;
>>
>> Ou seja, o sexto passo eu não executo com sucesso, visto que perco
>> comunicação com o roteador do PTT. Loucura não? Com certeza, mas
>> acontece isso aqui e já tentei atualizar o FreeBSD para tentar resolver
>> e nada. O negócio é tão maluco que nem mesmo a tabela arp dos endereços
>> associados a VLAN do PTT eu consigo remover quando acontece isso.
>> Retorna o erro "arp: writing to routing socket: Invalid argument". Se
>> tento adicionar o IP novamente a VLAN retorna o erro "ifconfig: ioctl
>> (SIOCAIFADDR): Address already in use".
>>
>> Em outra localidade tenho um Mikrotik (estou aguardando a chegada de um
>> Juniper MX10) com o mesmo cenário (PTT e Algar) e não acontece esse
>> problema.
>>
>> Alguém tem alguma dica?
>>
>> [1] http://forums.freebsd.org/viewtopic.php?t=42547
>>
>>
>> Obrigado!
>>
>>
>> Samuel Peres
>>
> Samuel,
>
> Pela sua descrição do problema e pela descrição e patch no forum o que
> 'parece' que esta acontecendo no seu caso é o seguinte:
>
> Você configura o IP nas interfaces e sobe o BGP. O BGP esta recebendo
> os blocos que você utiliza para falar com seus upstreams (IPs locais
> configurados nas interfaces) e essas rotas são adicionadas pelo daemon
> BGP no sistema sobre-escrevendo as rotas que foram adicionadas quando
> o IP foi adicionado na interface. A partir daqui o sistema sai de
> sincronismo, pois mesmo removendo o IP da interface não vai remover as
> rotas e você também não pode remove-las manualmente porque elas estão
> marcadas como PINNED.
>
> Até onde olhei o melifaro não fez nenhuma alteração nesse código
> recentemente, então atualizar não é uma opção.
>
> E aquele patch é um hack para resolver aquele problema especifico do
> usuário do forum (interfaces p2p).
>
> Você tem filtros no seu BGP para os seus IPs/blocos locais ? Eu acho
> que isso resolveria o seu problema, evitando que as rotas aprendidas
> pelo BGP sobre-escrevam as rotas PINNED.
>
> Att.,
> Luiz
> -------------------------
> Histórico: http://www.fug.com.br/historico/html/freebsd/
> Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd

Bom dia Luiz Otavio,

Fiz os filtros nessa madrugada, testei e aparentemente resolveu o 
problema. Mas estranhamente não acontecia no FreeBSD-9.1. Vou acompanhar 
e qualquer anomalia reporto aqui na lista.

Obrigado!

Samuel Peres


Mais detalhes sobre a lista de discussão freebsd