The ungleich routing infrastructure » History » Version 4
Nico Schottelius, 05/15/2019 04:03 PM
1 | 1 | Nico Schottelius | h1. The ungleich routing infrastructure |
---|---|---|---|
2 | |||
3 | 4 | Nico Schottelius | {{toc}} |
4 | |||
5 | 1 | Nico Schottelius | h2. Status |
6 | |||
7 | This article is *IN PROGRESS*. |
||
8 | |||
9 | 2 | Nico Schottelius | h2. Peer with us! |
10 | 1 | Nico Schottelius | |
11 | 2 | Nico Schottelius | If you have a VM / IPv6 network from us and want to peer with us, the following steps should help you: |
12 | 1 | Nico Schottelius | |
13 | 2 | Nico Schottelius | * Send a request to support -at- ungleich.ch containing your |
14 | ** ASN |
||
15 | ** Networks |
||
16 | |||
17 | h3. ungleich routers |
||
18 | |||
19 | To BGP peer with us, you will need to establish 2 BGP sessions (for redundancy reasons). The routers depend on the IPv6 that your endpoint has: |
||
20 | |||
21 | 3 | Nico Schottelius | |_. Your VM is in ... |_. ... then peer with | |
22 | 2 | Nico Schottelius | | 2a0a:e5c0:0:2::/64 | 2a0a:e5c0:0:2::3 2a0a:e5c0:0:2::4 | |
23 | | 2a0a:e5c0:0:5::/64 | 2a0a:e5c0:0:5::3 2a0a:e5c0:0:5::4 | |
||
24 | | 2a0a:e5c0:2:2::/64 | 2a0a:e5c0:2:2::5 2a0a:e5c0:2:2::6 | |
||
25 | |||
26 | You will receive the full IPv6 routing table from us. |
||
27 | 4 | Nico Schottelius | |
28 | h3. Configuration for you (the peer) |
||
29 | |||
30 | If you are using bird for peering, your configuration can look similar to this: |
||
31 | |||
32 | <pre> |
||
33 | # Adjust filters to your own preference |
||
34 | filter from_ungleich { |
||
35 | accept; |
||
36 | } |
||
37 | filter to_ungleich { |
||
38 | accept; |
||
39 | } |
||
40 | |||
41 | |||
42 | protocol bgp ungleichrouter1 { |
||
43 | local as YOURASN; |
||
44 | neighbor SELECT_FROM_TABLE_ABOVE1 as 209898; |
||
45 | |||
46 | import filter from_ungleich; |
||
47 | export filter to_ungleich; |
||
48 | } |
||
49 | |||
50 | protocol bgp ungleichrouter2 { |
||
51 | local as YOURASN; |
||
52 | neighbor SELECT_FROM_TABLE_ABOVE2 as 209898; |
||
53 | |||
54 | import filter from_ungleich; |
||
55 | export filter to_ungleich; |
||
56 | } |
||
57 | |||
58 | </pre> |
||
59 | |||
60 | h3. Configuration for ungleich |
||
61 | |||
62 | These instructions are for ungleich staff. |
||
63 | |||
64 | * Create / edit in the cdist type __ungleich_bgp_router: |
||
65 | ** ${peer}_v6.conf (very similar to the peer example above) |
||
66 | ** bird6.conf: define networks of peer (net_${peer}) |
||
67 | ** general.conf: add appropriate filters |
||
68 | * Apply bgp configuration or full cdist config |
||
69 | ** cdist config -vvp6 -bj5 router{..}.place{..}.ungleich.ch # full |
||
70 | ** echo __ungleich_bgp_router | cdist config -i - -vvp6 -bj5 router{..}.place{..}.ungleich.ch # routing only |
||
71 | * Verify that config has been applied |
||
72 | ** bird6c |
||
73 | ** conf |
||
74 | ** show route protocol $peer |
||
75 | |||
76 | 2 | Nico Schottelius | |
77 | |||
78 | 1 | Nico Schottelius | h2. RIPE |
79 | |||
80 | Our networks are registered with ripe. |
||
81 | |||
82 | h3. Maintainer |
||
83 | |||
84 | All objects should have the *mnt-by* flag of *mnt-ungleich*. This maintainer handle is usable by all our LIR accounts. |
||
85 | 2 | Nico Schottelius | |
86 | |||
87 | h3. CLI |
||
88 | |||
89 | A cli for accessing RIPE's rest interface is developed on https://code.ungleich.ch/ungleich-public/ungleich-cli |