Configurando o BGP no Vultr

O recurso BGP do Vultr permite que você traga seu próprio espaço IP e use-o em qualquer um de nossos locais.

Começando

Para usar o BGP, você precisa:

  • Uma instância do servidor Vultr implantada.
  • Seu próprio espaço IP (v4 ou v6). Se você possui seu próprio ASN, pode usá-lo ou podemos atribuir um particular.

Se você estiver anunciando um prefixo IPv4, a instância do servidor deverá ter um endereço IPv4 atribuído automaticamente pelo Vultr. Se você estiver anunciando um prefixo IPv6, a instância do servidor deverá ter endereços IPv4 e IPv6 atribuídos automaticamente pelo Vultr.

Por favor, preencha o formulário de configuração do BGP para começar. Verifique a propriedade do seu ASN e sub-rede (s) para evitar atrasos.

Depois que isso estiver configurado em sua conta, você poderá prosseguir com a configuração do BGP.

Configuração BGP

Nota: Se você estiver configurando uma instância que foi implantada antes da configuração do BGP em sua conta, será necessário reiniciá-la através do painel de controle. O BGP não funcionará em nenhuma instância existente até que tenha sido reinicializada (a reinicialização via SSH não é suficiente).

Recomendamos o uso do BIRD como seu daemon BGP (mas você pode usar qualquer daemon BGP que desejar). A maioria dos sistemas operacionais possui um pacote disponível para isso.

Nossos exemplos vão assumir o seguinte:

  • ASN: 64512
  • IP da instância :: 203.0.113.123
  • Bloco IPv4: 198.51.100.0/24
  • Senha BGP: hunter2

Para confirmar a conectividade, vamos configurar uma sessão BGP sem anunciar nenhum IP. Crie um /etc/bird.confarquivo com o seguinte texto. Observe que em alguns sistemas, como o Ubuntu 16.04, será esse /etc/bird/bird.conf.

router id 203.0.113.123;

protocol bgp vultr
{
    local as 64512;
    source address 203.0.113.123;
    import none;
    export all;
    graceful restart on;
    multihop 2;
    neighbor 169.254.169.254 as 64515;
    password "hunter2";
}

Reinicie o bird e verifique o status da sessão:

[root@vultr ~]# birdc show proto all vultr
BIRD 1.4.5 ready.
name     proto    table    state  since       info
vultr    BGP      master   up     14:11:36    Established
  Preference:     100
  Input filter:   REJECT
  Output filter:  (unnamed)
  Routes:         0 imported, 581634 filtered, 1 exported, 0 preferred
  Route change stats:     received   rejected   filtered    ignored   accepted
    Import updates:         581674          0     581674          0          0
    Import withdraws:            2          0        ---     581675          0
    Export updates:              1          0          0        ---          1
    Export withdraws:            0        ---        ---        ---          0
  BGP state:          Established
    Neighbor address: 169.254.169.254
    Neighbor AS:      64515
    Neighbor ID:      169.254.169.254
    Neighbor caps:    refresh restart-able AS4
    Session:          external multihop AS4
    Source address:   203.0.113.123
    Hold timer:       208/240
    Keepalive timer:  57/80

Um estado BGP de 'Estabelecido' significa que tudo está funcionando corretamente. Se você não vir um estado de estabelecido, aqui estão algumas coisas para tentar:

  • Você reiniciou pelo painel de controle desde que o suporte configurou o BGP em sua conta?
  • A porta BGP (TCP 179) é permitida através do seu firewall?
  • Sua senha do BGP está correta? (Isso pode ser verificado no seu painel de controle, cada assinatura tem uma guia BGP listando os detalhes)
  • Você está usando o IP principal da sua instância? (Você não pode usar nada além do IP principal de uma instância com BGP)

Notas do FreeBSD

A configuração padrão do FreeBSD não funcionará com o BGP. Para realmente fazer uso do BGP no FreeBSD, você precisará fazer algumas coisas:

1) Recompile o kernel com estas opções adicionais ativadas:

device crypto
options IPSEC
options TCP_SIGNATURE

2) Configure seu adaptador de rede com um IP estático.

3) Atualize o ipsec.conf com a senha do BGP:

add 203.0.113.123 169.254.169.254 tcp 0x1000 -A tcp-md5 "hunter2";
add 169.254.169.254 203.0.113.123 tcp 0x1000 -A tcp-md5 "hunter2";

Anunciando rotas

Depois de ter uma sessão de BGP em funcionamento, o próximo passo é começar a anunciar algumas rotas. Para que seu espaço de endereço fique visível na Internet, você precisa anunciar pelo menos um / 24 (ou / 48 para IPv6).

A maneira mais fácil de começar é adicionar uma rota estática à sua configuração do BIRD, como:

protocol static
{
    route  198.51.100.0/24 via 203.0.113.123;
}

protocol device
{
    scan time 5;
}

O bloco 'dispositivo de protocolo' permite ao BIRD coletar informações sobre os adaptadores de rede conectados à sua instância. Sem ele, suas rotas estáticas não aparecerão.

Recarregue o BIRD e verifique se sua rota está funcionando corretamente:

[root@vultr ~]# birdc show route
BIRD 1.4.5 ready.
198.51.100.0/24    via 203.0.113.123 on eth0 [static1 14:22:12] * (200)

Nesse ponto, o tráfego da sua sub-rede agora deve estar fluindo em direção à sua instância. Você não poderá executar ping em nenhum IP até que ele seja configurado no seu sistema operacional. Uma maneira de verificar isso seria usar tcpdump, 'tcpdump -i eth0 -n net 198.51.100.0/24'.

Configurando IPs

Uma configuração comum que vemos é o uso de endereços IP individuais em diferentes instâncias. Isso é possível, embora cada instância precise estar executando seu próprio servidor BGP.

Para fazer isso, anunciaremos / 32 rotas de instâncias individuais, além da cobertura / 24. Poderíamos fazer isso com rotas estáticas, mas recomendamos o uso de interfaces fictícias. Usaremos 198.51.100.100 como o IP que queremos rotear.

Configure isso em uma interface:

# ip link add dev dummy1 type dummy
# ip link set dummy1 up
# ip addr add dev dummy1 198.51.100.100/32

Confirme se isso foi configurado corretamente:

# ip addr show dev dummy1
5: dummy1: <BROADCAST,NOARP,UP,LOWER_UP> mtu 1500 qdisc noqueue state UNKNOWN
    link/ether ba:23:57:2c:ad:bc brd ff:ff:ff:ff:ff:ff
    inet 198.51.100.100/32 scope global dummy1

Nota: Você deve consultar a documentação do sistema operacional para determinar como configurar essa interface para iniciar a inicialização.

Agora vamos configurar o BIRD para procurar interfaces fictícias e anunciar os IPs que encontrar nelas. Adicione o seguinte à sua configuração do BIRD e recarregue o BIRD:

protocol direct
{
    interface "dummy*";
    import all;
}

Verifique se o BIRD está anunciando a rota:

[root@vultr ~]# birdc show route
BIRD 1.4.5 ready.
198.51.100.0/24    via 203.0.113.123 on eth0 [static1 14:22:12] * (200)
198.51.100.100/32  dev dummy1 [direct1 14:36:56] * (240)

Você pode repetir esse processo em outras instâncias com outros IPs. O que acontece é que nossos roteadores usarão a rota mais específica que eles têm para qualquer endereço IP. Quando há um / 24 e / 32, o / 32 é a rota mais específica; portanto, qualquer tráfego para esse IP seguirá essa rota.

Você pode ter várias instâncias anunciando o mesmo / 32. Isso forneceria alta disponibilidade (se alguma instância falhasse, suas rotas desapareceriam e o tráfego passaria por failover para a outra instância).

Como nossos locais não estão vinculados, você deve garantir que está anunciando um / 24 (ou IPv6 / 48) de cada local em que deseja usar os IPs. Você não pode usar um / 24 para atribuir IPs para vários locais, a menos que esteja tentando configurar uma rede anycast.

Alguns de nossos locais oferecem suporte ao ECMP. Nesse caso, o tráfego será distribuído aleatoriamente entre até 8 instâncias que anunciam o mesmo IP. Os locais que atualmente suportam o ECMP são:

  • Nova Jersey
  • Chicago
  • Dallas
  • Atlanta
  • Tóquio
  • Cingapura
  • Los Angeles
  • Miami
  • Vale do Silício
  • Paris
  • Londres

Documentos relacionados

Notas

Para o BIRD 1.5 e superior, pode ser necessário alterar a routesintaxe das linhas de:

route  198.51.100.0/24 via 203.0.113.123;

para:

route  198.51.100.0/24 via "203.0.113.123";

** Solução de problemas **

Nossos sistemas requerem autenticação TCP MD5 para estabelecer a conexão. Isso significa que você não pode testar a conectividade usando algo como telnet. Geralmente, sugerimos observar o tráfego com o tcpdump para solucionar problemas de conectividade.

Deixar um comentário

A IA pode lutar contra o aumento do número de ataques de ransomware

A IA pode lutar contra o aumento do número de ataques de ransomware

Os ataques de ransomware estão aumentando, mas a IA pode ajudar a lidar com os vírus de computador mais recentes? AI é a resposta? Leia aqui para saber se é AI boone ou bane

ReactOS: Este é o futuro do Windows?

ReactOS: Este é o futuro do Windows?

ReactOS, um sistema operacional de código aberto e gratuito está aqui com a versão mais recente. Será que ela pode atender às necessidades dos usuários modernos do Windows e derrubar a Microsoft? Vamos descobrir mais sobre esse estilo antigo, mas uma experiência de sistema operacional mais recente.

Fique conectado por meio do aplicativo WhatsApp Desktop 24 * 7

Fique conectado por meio do aplicativo WhatsApp Desktop 24 * 7

O Whatsapp finalmente lançou o aplicativo Desktop para usuários de Mac e Windows. Agora você pode acessar o Whatsapp do Windows ou Mac facilmente. Disponível para Windows 8+ e Mac OS 10.9+

Como a IA pode levar a automação de processos ao próximo nível?

Como a IA pode levar a automação de processos ao próximo nível?

Leia isto para saber como a Inteligência Artificial está se tornando popular entre as empresas de pequena escala e como está aumentando as probabilidades de fazê-las crescer e dar vantagem a seus concorrentes.

A atualização do suplemento do macOS Catalina 10.15.4 está causando mais problemas do que resolvendo

A atualização do suplemento do macOS Catalina 10.15.4 está causando mais problemas do que resolvendo

Recentemente, a Apple lançou o macOS Catalina 10.15.4, uma atualização suplementar para corrigir problemas, mas parece que a atualização está causando mais problemas, levando ao bloqueio de máquinas mac. Leia este artigo para saber mais

13 Ferramentas de Extração de Dados Comerciais de Big Data

13 Ferramentas de Extração de Dados Comerciais de Big Data

13 Ferramentas de Extração de Dados Comerciais de Big Data

O que é um sistema de arquivos de registro no diário e como ele funciona?

O que é um sistema de arquivos de registro no diário e como ele funciona?

Nosso computador armazena todos os dados de uma maneira organizada conhecida como sistema de arquivos Journaling. É um método eficiente que permite ao computador pesquisar e exibir arquivos assim que você clicar em search.https: //wethegeek.com/? P = 94116 & preview = true

Singularidade tecnológica: um futuro distante da civilização humana?

Singularidade tecnológica: um futuro distante da civilização humana?

À medida que a ciência evolui em um ritmo rápido, assumindo muitos de nossos esforços, os riscos de nos sujeitarmos a uma singularidade inexplicável também aumentam. Leia, o que a singularidade pode significar para nós.

Uma visão sobre 26 técnicas analíticas de Big Data: Parte 1

Uma visão sobre 26 técnicas analíticas de Big Data: Parte 1

Uma visão sobre 26 técnicas analíticas de Big Data: Parte 1

O impacto da inteligência artificial na saúde 2021

O impacto da inteligência artificial na saúde 2021

A IA na área da saúde deu grandes saltos nas últimas décadas. Portanto, o futuro da IA ​​na área da saúde ainda está crescendo dia a dia.