Route Servers

What's a route server and what's it good for?

A route server is a device collecting BGP routes from everybody who peers with it and redistributing those routes to all the other peers of the route server. Thus by peering with a route server you can save yourself from setting up individual peering sessions with each and every other ASN peering with the route server. You also spare yourself from keeping track of newly connected participants, and you enable those new participants to start exchanging traffic with you at SwissIX from day one.

Route Servers at SwissIX

SwissIX runs two OpenBSD/OpenBGPd based route servers on the peering LAN. All participants are welcome and encouraged to peer with them. We operate two independent route servers for redundancy, to allow for uninterrupted traffic flow even during maintenance and strongly recommend you peer with both of them.

OpenBGPd is configured using templates, so we don't have to configure sessions individually. Just fire up your BGP to them and the sessions should come up immediately. Please do not send MD5 secrets, since we use templates it's not feasible for us to configure individual secrets.

Our route servers work transparently, meaning they don't insert their ASN into the AS path of the redistributed routes. At least on recent Cisco IOS versions you will have to configure the following for this to work.

router bgp yourASNumber ! on IOS and IOS-XE no bgp enforce-first-as ! on IOS-XR bgp enforce-first-as disable

For other vendors you may have to use different config statements.

To peer with our route servers just set up BGP sessions with them as you would for any other peering. If you are using more than one connection, please peer with both of them from all your connections. If you use IPv6 (you should) please don't forget to also set up IPv6 sessions. The route servers are both using ASN 42476


rs1.swissix.ch IPv4 91.206.52.252
IPv6 2001:7f8:24::fc
rs2.swissix.ch IPv4 91.206.52.251
IPv6 2001:7f8:24::fb


For more details have a look at the peering details page.

max-prefix recommendations

We recommend you set a max-prefix limit on your side of the route server BGP session. At the moment we suggest to allow 100'000 IPv4 prefixes and 40'000 IPv6 prefixes.

On our side we have also implemented a max-prefix limits on each peer. For IPv4 this is set at 12'000 prefixes, for IPv6 at 600 prefixes. If you expect to announce more than that, please contact us, so we can raise your limit.

BGP Communities

When peering with the SwissIX route server you can send communities to amend redistribution behavior.

BGP-Community Description
42476:65500 Prepend RS AS42476 to *all* RS-Peers
6550n:neighbor-as Prepend RS 42476 to *selected* RS-Peer N-times (N = 1..3)
42476:neighbor-as Do *not* announce to RS-Peers with AS neighbor-as
42476:65535 Do *not* announce to *ANY* RS-Peers

This is also documented in our AS object in the RIPE Whois DB.

Configuration Examples

Here are some cookbook examples for configuring your Route Server peerings. (Parts in italics need to be adapted by you. Bear in mind, these are just basic examples.)


First, an example for Cisco:

! router bgp yourASNumber no bgp enforce-first-as neighbor 2001:7F8:24::FB remote-as 42476 neighbor 2001:7F8:24::FB description Peer Route Server 2 neighbor 2001:7F8:24::FC remote-as 42476 neighbor 2001:7F8:24::FC description Peer Route Server 1 neighbor 91.206.52.251 remote-as 42476 neighbor 91.206.52.251 description Peer Route Server 2 neighbor 91.206.52.252 remote-as 42476 neighbor 91.206.52.252 description Peer Route Server 1 ! address-family ipv4 no neighbor 2001:7F8:24::FB activate no neighbor 2001:7F8:24::FC activate neighbor 91.206.52.251 activate neighbor 91.206.52.251 prefix-list limit_my_outbound_v4_prefixes out neighbor 91.206.52.251 maximum-prefix 100000 restart 60 neighbor 91.206.52.252 activate neighbor 91.206.52.252 prefix-list limit_my_outbound_v4_prefixes out neighbor 91.206.52.252 maximum-prefix 100000 restart 60 exit-address-family ! address-family ipv6 neighbor 2001:7F8:24::FB activate neighbor 2001:7F8:24::FB prefix-list limit_my_outbound_v6_prefixes out neighbor 2001:7F8:24::FB maximum-prefix 40000 restart 60 neighbor 2001:7F8:24::FC activate neighbor 2001:7F8:24::FC prefix-list limit_my_outbound_v6_prefixes out neighbor 2001:7F8:24::FC maximum-prefix 40000 restart 60 exit-address-family !


And here a Juniper example:

protocols { bgp { group swissix-v4-peers { type external; local-address mySwissIXv4IP; export limit_my_outbound_v4_prefixes; remove-private; neighbor 91.206.52.251 { description "Peer Route Server 2"; family inet { unicast { prefix-limit { maximum 100000; teardown 75 idle-timeout 60; } } } peer-as 42476; } neighbor 91.206.52.252 { description "Peer Route Server 1"; family inet { unicast { prefix-limit { maximum 100000; teardown 75 idle-timeout 60; } } } peer-as 42476; } } group swissix-v6-peers { type external; local-address mySwissIXv6IP; export limit_my_outbound_v6_prefixes; remove-private; neighbor 2001:7f8:24::fb { description "Peer Route Server 2"; family inet6 { unicast { prefix-limit { maximum 40000; teardown 75 idle-timeout 60; } } } peer-as 42476; } neighbor 2001:7f8:24::fc { description "Peer Route Server 1"; family inet6 { unicast { prefix-limit { maximum 40000; teardown 75 idle-timeout 60; } } } peer-as 42476; } } } }