[FUG-BR] Problemas com roteamento FreeBSD-9.2

Samuel Peres samuelperes em migtelecom.com.br
Segunda Fevereiro 3 23:42:11 BRST 2014


On 2/3/2014 7:01 PM, Marcelo Gondim wrote:
> Em 03/02/14 16:41, Samuel Peres escreveu:
>> On 03/02/2014 15:57, Edinilson - ATINET wrote:
>>>> ----- Original Message -----
>>>> From: "Samuel Peres" <samuelperes em migtelecom.com.br>
>>>> To: <freebsd em fug.com.br>
>>>> Sent: Monday, February 03, 2014 2:39 PM
>>>> Subject: [FUG-BR] Problemas com roteamento FreeBSD-9.2
>>>> 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
>>> Caro Samuel, eu não tive especificamente este problema com o OpenBGPD. O
>>> problema que tive foi com a 2a. parte do seu problema, que está relacionado
>>> ao ARP ("....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". ).
>>> O que percebi, na epoca (isto foi com o FreeBSD 5.xx até o 7.xx, é que SE
>>> deixasse a opcao net.inet.ip.fastforwarding=1, e digitasse um simples:
>>> arp -a -d acontecia este problema e, as vezes, kernel panic.
>>>
>>> Desligue esta opcao e faca um teste. Cuidado tambem com queues do ipfw.
>>>
>>> Edinilson
>>> ------------------------------------------
>>> ATINET
>>> Tel Voz: (0xx11) 4412-0876
>>> http://www.atinet.com.br
>>>
>>>
>>> -------------------------
>>> Histórico: http://www.fug.com.br/historico/html/freebsd/
>>> Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd
>> Olá Edinilson,
>>
>> Vou fazer esse teste mais tarde e reporto os resultados. Uma coisa é
>> fato, já bem próximo de 800Mb de tráfego passando por esse FreeBSD, em
>> um hardware bem dimensionado, devo admitir que estou perdendo um pouco a
>> confiança no sistema para roteamento. Não importa o que os mais
>> experientes e  saudosistas digam. Uso FreeBSD há mais de 10 anos
>> (comecei com a versão 4.7) e uso aqui para praticamente tudo, até mesmo
>> como desktop no meu notebook, mas para roteamento acima de 500Mb estou
>> caindo fora. Alguém roda com mais de 1Gb de tráfego? Parabéns e fico
>> feliz por você! Eu aqui estou tendo problema até mesmo com um simples
>> route delete. Preciso atualizar para a versão 10, regredir para a 9.1 ou
>> aplicar patch para corrigir um troço desse? Fala sério, muitos sabem que
>> não é tão simples assim, principalmente quando é 800Mbit/s passando pelo
>> sistema.
>>
>>
> Pois é cada um é cada um. Eu já tive sérios problemas com Linux em
> tráfegos de 100 e 200Mbps. Hoje tenho link de 2Gbps e cheguei à bater
> 1.8Gbps de tráfego sem problemas usando FreeBSD 9.x + OpenBGP + Link
> Aggregation + vlans
>
> Esse mesmo router bgp segura 4 cidades com um pico até o momento de
> 11.145 assinantes simultâneos, fecha 14 sessões BGP sendo 2 full IPv4 e
> 4 sessões IPv6 iBGP.
> Atualmente atualizei para a versão 10.0R e continuo muito contente com o
> sistema e não vejo a menor possibilidade de eu trocar ele. :)  Ao meu
> ver a pilha TCP/IP dos BSD são muito superiores às dos GNU/Linux e
> outros sistemas por aí. A própria Juniper usa o FreeBSD em sua base para
> seus routers.
>
> Como implementei meu terceiro PeerApp Cache em 3 cidades que atendo, meu
> consumo médio caiu de 1.6Gbps para 1.2Gbps, 1.3Gbps.
>
> []'s
> Gondim
>
> -------------------------
> Histórico: http://www.fug.com.br/historico/html/freebsd/
> Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd
Prezado Marcelo,

Obrigado por relatar seu caso de sucesso e acredito sinceramente que eu 
conseguiria o mesmo por aqui usando FreeBSD. Também tenho 2 PeerApp por 
aqui,  fazendo o bypass do tráfego chego a ter picos de quase 950Mb sem 
nenhum problema (relacionado a tráfego). Tenho sessões full-routing com 
3 operadoras, uma delas IPv6 e tenho também Laggs com LACP, inúmeras 
VLANs e o conjunto hardware/sistema bem "tunado". Mas o que mata mesmo é 
quando aparece um caso atípico como esse que relatei. Um dia você poderá 
passar por isso e poderá refletir melhor sobre a afirmação de não trocar 
o FreeBSD sob quaisquer possibilidades. Eu tinha Thundercache rodando 
com FreeBSD e atendeu por um tempo, mas vivia dando manutenção no 
negócio. Hoje tenho duas caixa PeerApp (salve engano, roda SUSE Linux) e 
as vezes até esqueço que elas existem - tive alguns problemas com 
atualizações de PS3 e com o novo método de streaming do YouTube que 
afetava alguns poucos vídeos, mas isso foi resolvido na versão 5.1.619.

Com certeza não trocaria o FreeBSD para muitas coisas, mas na medida do 
possível o trocaria por coisas que considero muito críticas e que não 
dependem apenas de um sistema robusto. Prefiro mil vezes ter um Dell 
EqualLogic PS6100E ou até mesmo um mais singelo MD3200i do que uma 
Supermicro com trocentos HDs rodando FreeNAS com RAID-Z1, Z2, Z3 ou 
diabo a quatro. Com certeza serve para muitas coisas (aqui eu o utilizo 
para VMware Data Protection exportando os volumes via NFS), mas para 
muitas outras coisas ... pode até servir, mas confiar é outra coisa.

Peço desculpas pela divagação e volto agora ao FreeBSD em si, atuando 
como roteador. Pois bem, conforme você bem lembrou, a própria Juniper 
usa FreeBSD na base do JunOS, e para ser sincero, já considero um dos 
motivos  para substituir o FreeBSD por um MX10 ou qualquer outro modelo 
superior dependendo do cenário. Gosto de FreeBSD e tenho certeza que a 
Juniper Networks fez uma excelente escolha para sistema base. Pegando o 
datasheet de qualquer modelo de Juniper da para ter  confiança no 
negócio, diferente de pegar manual de arquitetura de motherboard para 
saber se ela é dual northbridge ou não, ficar lendo datasheet de placa 
de rede que pode se comportar de forma diferente no FreeBSD ou no Linux, 
ficar atento quanto a velocidade de barramento, memória, etc e etc. 
Depois da escolha do hardware, vem o sistema, instalar, configurar, 
compilar e  o divertido tuning. Legal, mexer em um monte de systcl, 
fazer CPU affinity  e depois partir para o OpenBGPD. Deixar tudo isso 
funcionando no FreeBSD é muito gratificante e pode ter certeza que 
continuo fazendo essas coisas, mas jamais vou ter uma fé cega no sistema 
ou em qualquer outro, até mesmo no MX10 (que estou comprando), mas tenho 
certeza que é mais confiável do que qualquer hardware rodando FreeBSD puro.

Sempre atenciosamente,

Samuel Peres


Mais detalhes sobre a lista de discussão freebsd