Skip to content

Mini-guide: Setting up your first BGP session with a Vultr VM

Networking by Lou1 6 replies 357 views
#1

1. This guide covers BGP sessions on Vultr VMs specifically
2. Tested on Ubuntu 24.04 with FRRouting 10.1
3. IPv4 only in main post, IPv6 in comments
4. Vultr filter syntax changed in 2024, watch for that

  • You need a private ASN (64512-65534) or bring your own
  • Vultr charges $0 per BGP session, just the VM cost
  • They peer at each facility individually, no anycast magic
  • Install FRR: apt install frr frr-pythontools
  • Enable daemons: edit /etc/frr/daemons, set bgpd=yes
  • Add neighbor in vtysh:
    Router bgp YOUR_ASN
    Neighbor 169.254.169.254 remote-as 64515
    Neighbor 169.254.169.254 password YOUR_MD5
  • Redistribute: network YOUR_PREFIX/24
  • Verify: show ip bgp summary

Common pitfalls:

  • Vultr filters on RIR allocation date, new prefixes need manual approval
  • MD5 must be exactly 8-32 chars, no special characters they said but underscore works
  • They drop /25 and smaller,

#2

Hey folks

Ran this exact setup last year and got bitten by the filter syntax change

Vultr used to accept prefix-lists with ge le operators, now they want explicit exact match or nothing. Super stoked you called that out

Gonna add: their IPv6 sessions use link-local fe80::1 as neighbor, not the 169.254 address. Tripped me up for hours

42U and still growing
#3

I need very much help with IPv6 ver-y specific

I have ser-va at Vultr but BGP for IPv6 not working

Okay

The neighbor fe80::1 can you help me how to set interface scope-id correctly

I try vtysh but say neighbor unreachable

Ver-y confused about link-local address

#4
nangwill said:
The neighbor fe80::1 can you help me how to set interface scope-id correctly
  • Interface scoping for link-local BGP requires explicit interface binding in FRR 10.0+.
  • Correct syntax: neighbor fe80::1%eth0 remote-as 64515
  • Vultr's IPv6 filter syntax differs from IPv4: they accept /48 and /64, but not /56.
  • Prefix must originate from matching RIR allocation; route6 objects in IRR mandatory since 2024-11.

Practical recommendation: establish IPv4 session first, verify with show ip bgp summary, then add IPv6 neighbor as secondary address family. Dual-stack single session is not supported.

It's always DNS. Always.
#5

I got stuck on the fe80::1 scope thing too

#6

Which Vultr plan did you test this on

#7

Frr 10.0+? Their repo still ships 9.x on debian

oops: 0000 [#1] SMP

Post a reply

You need an account to reply. Log in or register to join the conversation.

Post reply Preview Save draft