de certa forma, BGP é agradável e simples. Por exemplo, há apenas um BGP: BGP versão 4. Muitos profissionais da rede têm perguntado se a versão 4 do BGP em breve será substituída pela versão 5 do BGP. No entanto, não há nada com que se preocupar. Hoje, ainda executamos a versão 4 do BGP como nosso protocolo Gateway Exterior (EGP). Mesmo se o BGP4 de hoje faz todos os tipos de coisas que o BGP4 de 20 anos atrás não poderia fazer, como roteamento IPv6, multicast e VPNs ou usando comunidades. BGP tem se mostrado muito extensível, mas ainda é tudo BGP—e um único processo BGP. Mas o BGP só lida com o lado exterior do roteamento—também há roteamento interior.

protocolos de Gateway interiores
E há muito mais escolha em protocolos de Gateway interiores (IGPs). Um antigo favorito é o RIP, o protocolo de informação de roteamento. Mesmo o RIPv2 melhorado é muito simples para a maioria das redes hoje em dia, assim como o RIPng (next generation) para o IPv6. Como tal, a Cisco criou seu próprio protocolo de roteamento de Gateway Interior (IGRP) e, em seguida, uma versão melhorada apropriadamente chamada de IGRP Enhanced (EIGRP). No entanto, o IGP mais utilizado é o OSPF: abrir o caminho mais curto primeiro. OSPF é uma implementação “aberta” do primeiro caminho mais curto ou algoritmo de Dijkstra. (O nome não se refere à possível abertura do caminho mais curto.) A versão 2 do OSPF é usada para IPv4; a versão 3 do OSPF para IPv6. Redes que executam ambas as versões IP e usam o OSPF como seu IGP, portanto, precisam executar tanto OSPFv2 e OSPFv3.

Back in the late 1980s when OSPF was developed, the OSI (Open Systems Interconnect) family of networking protocols was still in contention, and a lot of technology was borrowed/stolen by OSI from IP and by IP from OSI. Como resultado, OSI tem o protocolo de roteamento IS-IS para roteamento OSI CLNP, que é muito semelhante ao OSPF em muitas maneiras (ou ao contrário). IS-IS significa sistema intermediário para sistema intermediário, onde ” sistema intermediário “significa”roteador”. IS-IS foi mais tarde estendido para suportar primeiro IPv4 e, em seguida, também IPv6 e é usado principalmente em redes IP muito grandes.

com essa introdução fora do caminho, eu quero focar no caso mais comum: uma rede executando BGP como o EGP e OSPF como o IGP e olhar para como as tarefas de roteamento são divididos sobre ambos os protocolos e como os dois interagem.

redistribuição
com OSPF sendo um IGP e BGP sendo um EGP sugere uma divisão óbvia do trabalho: OSPF lida com o roteamento interno, BGP o roteamento para destinos externos. No entanto, não é assim tão simples. Sim, a OSPF é responsável pelo encaminhamento interno. Estas rotas aparecem como rotas” O “na saída de” show ip route ” em um roteador da Cisco. Se a rede for dividida em várias áreas OSPF—não é realmente necessário nos dias de hoje, a menos que você tenha centenas de roteadores—Você também pode ver rotas inter-áreas “o IA”.

o e o IA rotas são apenas os blocos de endereços que são usados em interfaces de roteadores que realmente executam OSPF. Isso não inclui interfaces com servidores, PC e outros dispositivos de usuário final, ou, no caso de ISPs, clientes. Para que esses endereços apareçam no OSPF, precisamos redistribuir sub-redes conectadas e/ou redistribuir rotas estáticas:

!
router ospf 1
redistribuir sub-redes conectadas
redistribuir sub-redes estáticas
!

o 1 em “router ospf 1” é o processo ou número de instância OSPF. É possível executar várias instâncias OSPF no mesmo roteador-o que, claro, requer um planejamento cuidadoso para manter tudo direito. Se a redistribuição de todas as rotas conectadas e/ou estáticas na OSPF for mais do que o necessário, você pode adicionar “mapa de rotas <mapa de rotas-nome>” e então usar o mapa de rotas indicado para filtrar as rotas indesejadas para evitar que elas sejam redistribuídas.

Por padrão, as rotas redistribuídas são feitas de tipo externo 2, e aparecem como “O E2”. Também é possível redistribuir como tipo Externo 1 (com”Tipo Métrico 1″). A diferença é que com as rotas Oe1 o custo da rota OSPF inclui o custo das ligações para chegar à rota externa, enquanto com as rotas OE2 o custo das ligações internas é ignorado.obviamente, BGP lida com as rotas para redes externas que são capazes de BGP. No entanto, seria um pouco embaraçoso se todos os roteadores BGP na rede estivessem dizendo aos seus vizinhos externos coisas completamente diferentes. Então todos os roteadores BGP na rede precisam conversar uns com os outros, a fim de contar uma história consistente para redes externas. É para isso que serve o BGP interno (iBGP). O BGP “regular” é, portanto, BGP externo (eBGP). Quando eu digo Todos os roteadores BGP, eu realmente quero dizer todos eles: se sua rede tem 100 roteadores BGP, cada um deles precisa manter as sessões iBGP com os outros 99. Bem, a menos que use reflectores de rota, mas isso é uma história para outro dia.se está habituado ao eBGP, o iBGP requer alguma habituação. Ao contrário do eBGP, o iBGP está muito bem trabalhando sobre muitos hops. No entanto, isso acrescenta uma complicação. Considere a seguinte rede:

suponha que a sessão iBGP do roteador A ao Roteador D é configurada para o endereço do Roteador D na ligação entre B E D. Então, quando o link entre roteadores B E D vai abaixo, o endereço de D na interface que se conecta a esse link vai abaixo, e com ele, a sessão iBGP configurada para o endereço dessa interface. Então, ao invés de configurar as sessões iBGP para endereços de interface, configuramos interfaces loopback para isso. Ao contrário da interface de loopback em um servidor ou outro host, que sempre usa o endereço 127.0.0.1, roteadores usam endereços “reais” em suas interfaces de loopback, que funciona assim:

!interface loopback0 endereço ip 192.0.2.65 255.255.255.255.255
!
router BGP 9000
neighbor 192.0.2.67 remote-as 9000
neighbor 192.0.2.67 update-source loopback0
!

Ao contrário de outras interfaces, as interfaces loopback podem ter um comprimento de prefixo de a / 32, por isso elas só usam um único endereço. O remoto como para o vizinho 192.0.2.67 é o mesmo que o local como (9000), tornando esta sessão BGP uma sessão iBGP. A linha” update-source loopback0 ” garante que o endereço de origem nos pacotes BGP enviados é o endereço IP configurado na interface loopback0, por isso corresponde ao endereço que o router remoto procura. Se agora um caminho entre os dois roteadores iBGP cair, os pacotes iBGP podem ser redirecionados por outro caminho e não há impacto para BGP. Note que para que isso funcione, a interface loopback endereços need2 para estar presente no IGP—tipicamente, rotas conectadas serão redistribuídas para fazer isso acontecer.
BGP in Large Networks eBook
Also unlike eBGP, iBGP doesn’t update the as path or the next hop address. Isto significa que o próximo endereço de hop em atualizações iBGP ainda aponta para o endereço IP do router na rede vizinha que a rota foi aprendida. Este endereço irá residir numa sub-rede ponto-a-ponto entre o seu roteador eBGP e o roteador BGP da rede vizinha. Seu roteador eBGP saberá este endereço porque está presente em uma interface diretamente conectada, mas sem mais ação, o resto de seus roteadores não saberá este endereço, então o próximo endereço hop para rotas iBGP não vai resolver e as rotas iBGP não podem ser usadas. Mais uma vez, redistribuir as redes conectadas em OSPF (ou seu IGP de escolha) resolve isso. Alternativamente, você pode configurar “next-hop-self” em suas sessões iBGP e o roteador irá substituir o próximo endereço hop em atualizações iBGP com seu próprio endereço.

redistribuição BGP
Também é possível redistribuir as rotas para BGP. Por exemplo, em uma grande rede ISP você pode redistribuir rotas conectadas e estáticas em BGP ao invés de IS-IS, porque isso vai manter IS-é magra e média. As rotas extra BGP são relativamente inconsequentes, e um bom benefício é que se elas são redirecionadas internamente, isso não despoleta nenhuma atualização BGP. Rather, the next hop addresses are resolved differently after an IS-IS change, which each router can do independently. Claro que fazer isso requer bons filtros que se certifiquem de que o grande número de pequenos prefixos usados pelos clientes não vazam na tabela global de BGP. Uma boa maneira de realizar essa filtragem é adicionando uma comunidade às rotas que podem ser propagadas no eBGP e, em seguida, filtrar com base nessa comunidade.no passado, não era incomum redistribuir todas as rotas BGP para a OSPF. Com meio milhão de prefixos em BGP, esta prática tornou-se menos comum. Se você realmente quiser viver na borda, você pode redistribuir BGP em OSPF e OSPF em BGP. Então, se seus filtros não são perfeitos, as rotas podem girar entre BGP e OSPF, com o resultado de que o caminho AS é removido. Então agora você está publicitando sobre BGP um monte de rotas que não são suas, mas com um one-hop como caminho, então muitos de seus vizinhos vão começar a enviar tráfego para essas rotas.

distância administrativa
Last but not least, what happens when the same route is present in both BGP and OSPF? Obviamente é difícil comparar uma preferência local BGP com uma métrica OSPF. Então o que um roteador (Cisco) faz é atribuir uma “distância administrativa” a cada protocolo de roteamento. A rota com a menor Distância, em seguida, ganha. A OSPF tem uma distância de 110. As rotas BGP têm uma distância de 20 (melhor que o OSPF e outras IGP) quando são aprendidas através do eBGP e 200 (pior que o OSPF e outras IGP) quando são aprendidas através do iBGP. As rotas estáticas têm uma distância de 1 por padrão, mas você pode alterar isso, incluindo um valor de distância no final do comando “ip route…”. Um valor de distância de 250 irá mantê-los fora do caminho dos protocolos de roteamento. A distância administrativa é o primeiro número entre parêntesis rectos na saída “mostrar a rota ip”.