[GTER] Mikrotik Multiplos VRFs e BGPs

Douglas Fischer fischerdouglas at gmail.com
Wed Jul 8 14:27:59 -03 2015


Tentei mais algumas gambiarras...
Todas sem sucesso!

/ip firewall nat
add action=dst-nat chain=dstnat dst-address=1.0.0.2 in-interface=ether1
to-addresses=1.0.0.2
/ip firewall mangle
add action=mark-routing chain=prerouting dst-address=2.0.0.2
in-interface=ether2 new-routing-mark=main
add action=mark-routing chain=prerouting dst-address=3.0.0.2
in-interface=ether3 new-routing-mark=vrf-3



Em 8 de julho de 2015 12:10, Douglas Fischer <fischerdouglas at gmail.com>
escreveu:

> Apenas complementando a sintomatologia:
>
> Se, na configuração original, eu desativo os VRFs, aguardo as sessões
> subirem e então reativo os VRFs, tudo funciona como deveria!
>  Tabelas de roteamentos separadas... Tudo certinho.
>  Mas se derrubo as sessões desativo forço uma queda de sessão, ela não
> volta.
>
>
> Seria um BUG?
> Devo reportar?
> Aonde?
>
>
>
> Em 8 de julho de 2015 11:38, Douglas Fischer <fischerdouglas at gmail.com>
> escreveu:
>
>> Eu ia dar uma de gravedigger e ressuscitar uma thread velha[1].
>> Mas como montei o ambiente inteiro de novo, pensei:
>> Laboratório novo -> Thread nova!
>>
>> ​Quero subir múltiplos BGPs, cada um em uma VRF diferente, em uma mesma
>> caixa Mikrotik.
>>    Obs.: Procurei um bocado, e tudo que encontrei estava relacionado a
>> MPLS.
>>          Não quero tagear nada para fora...
>>          Só quero dividir minhas tabelas dentro da minha própria caixa
>>
>> ???
>> Algum segredo para fazer o que seria o VRF-Lite no mundo Cisco funcionar
>> em Mikrotik?
>> ???
>>
>> Usei duas RB1100 e apliquei as configs que estão mais abaixo.
>>
>> Sintomas
>> - As sessões BGP ficam em "connect" ad-eternum.
>> - No sniffer, pego pacotes de abertura de sessão vindos dos dois lados...
>> - No Logging do BGP, ele fica reclamando de connection retry timer
>> expired.
>>
>> P.S.: Tenho a impressão que o LISTENER do BGP(TCP/179) não está escutando
>> dentro do VRF.
>>       Qual seria o equivalente a um "lsof -ni",
>>       ou um "show control-plane host open-ports" nessa geringonça?
>>
>> Fiz algumas tentativas:
>>  - Ao tirar uma das instâncias BGP do VRF e excluir o respectivo VRF,
>>    APENAS EM UM DOS LADOS, a sessão sobe instantaneamente.
>>  - Pensei que era um galho em uma das caixas, e resolvi fazer o mesmo do
>> outro lado em outra instância.
>>    Sessão subiu no mesmo momento.
>>  - Tirando a instância do VRF dos dois lados, a sessão também sobe.
>>  - Se tirar todo mundo dos VRFs, obviamente todas as sessões sobem.
>>    Porém minha tabela de rotas vira um balaio de gato.
>>  - Tentei usar o recurso de BGP-VRF que fica dentro de BGP.
>>    Não tive sucesso.
>>
>>
>> ​/system identity
>> set name=Caixa1
>> /interface bridge
>> add name=loopback1
>> add name=loopback2
>> add name=loopback3
>> /ip route vrf
>> add export-route-targets=1:1 import-route-targets=1:1
>> interfaces=ether1,loopback1 route-distinguisher=1:1 routing-mark=vrf-1
>> add export-route-targets=2:1 import-route-targets=2:1
>> interfaces=ether2,loopback2 route-distinguisher=2:1 routing-mark=vrf-2
>> add export-route-targets=3:1 import-route-targets=3:1
>> interfaces=ether3,loopback3 route-distinguisher=3:1 routing-mark=vrf-3
>> /ip address
>> add address=1.0.0.1/30 interface=ether1 network=1.0.0.0
>> add address=2.0.0.1/30 interface=ether2 network=2.0.0.0
>> add address=3.0.0.1/30 interface=ether3 network=3.0.0.0
>> add address=1.1.1.1 interface=loopback1 network=1.1.1.1
>> add address=2.2.2.1 interface=loopback2 network=2.2.2.1
>> add address=3.3.3.1 interface=loopback3 network=3.3.3.1
>> /routing bgp instance
>> set default disabled=yes
>> add as=1 client-to-client-reflection=no name=bgp1
>> redistribute-connected=yes router-id=1.1.1.1 routing-table=vrf-1
>> add as=2 client-to-client-reflection=no name=bgp2
>> redistribute-connected=yes router-id=2.2.2.1 routing-table=vrf-2
>> add as=3 client-to-client-reflection=no name=bgp3
>> redistribute-connected=yes router-id=3.3.3.1 routing-table=vrf-3
>> /routing bgp peer
>> add instance=bgp1 name=caixa2-as1 remote-address=1.0.0.2 remote-as=1
>> ttl=default update-source=ether1
>> add instance=bgp2 name=caixa2-as2 remote-address=2.0.0.2 remote-as=2
>> ttl=default update-source=ether2
>> add instance=bgp3 name=caixa2-as3 remote-address=3.0.0.2 remote-as=3
>> ttl=default update-source=ether3
>>
>>
>> /system identity
>> set name=Caixa2
>> /interface bridge
>> add name=loopback1
>> add name=loopback2
>> add name=loopback3
>> /ip route vrf
>> add export-route-targets=1:1 import-route-targets=1:1
>> interfaces=ether1,loopback1 route-distinguisher=1:1 routing-mark=vrf-1
>> add export-route-targets=2:1 import-route-targets=2:1
>> interfaces=ether2,loopback2 route-distinguisher=2:1 routing-mark=vrf-2
>> add export-route-targets=3:1 import-route-targets=3:1
>> interfaces=ether3,loopback3 route-distinguisher=3:1 routing-mark=vrf-3
>> /ip address
>> add address=1.0.0.2/30 interface=ether1 network=1.0.0.0
>> add address=2.0.0.2/30 interface=ether2 network=2.0.0.0
>> add address=3.0.0.2/30 interface=ether3 network=3.0.0.0
>> add address=1.1.1.2 interface=loopback1 network=1.1.1.2
>> add address=2.2.2.2 interface=loopback2 network=2.2.2.2
>> add address=3.3.3.2 interface=loopback3 network=3.3.3.2
>> /routing bgp instance
>> set default disabled=yes
>> add as=1 client-to-client-reflection=no name=bgp1
>> redistribute-connected=yes router-id=1.1.1.2 routing-table=vrf-1
>> add as=2 client-to-client-reflection=no name=bgp2
>> redistribute-connected=yes router-id=2.2.2.2 routing-table=vrf-2
>> add as=3 client-to-client-reflection=no name=bgp3
>> redistribute-connected=yes router-id=3.3.3.2 routing-table=vrf-3
>> /routing bgp peer
>> add instance=bgp1 name=caixa1-as1 remote-address=1.0.0.1 remote-as=1
>> ttl=default update-source=ether1
>> add instance=bgp2 name=caixa1-as2 remote-address=2.0.0.1 remote-as=2
>> ttl=default update-source=ether2
>> add instance=bgp3 name=caixa1-as3 remote-address=3.0.0.1 remote-as=3
>> ttl=default update-source=ether3
>>
>>
>>
>>
>> ​[1]https://eng.registro.br/pipermail/gter/2015-March/054115.html
>>
>> --
>> Douglas Fernando Fischer
>> Engº de Controle e Automação
>>
>
>
>
> --
> Douglas Fernando Fischer
> Engº de Controle e Automação
>



-- 
Douglas Fernando Fischer
Engº de Controle e Automação



More information about the gter mailing list