blob: a9fdc78c8ada00bc33a9cb88e9ff466f1749b7a3 [file] [log] [blame]
Sergiusz Bazanski1fad2e52019-08-01 20:16:27 +02001<!doctype html>
2<html lang="en">
3 <head>
4 <meta charset="utf-8">
5 <title>AS{{ asn }} - CCCampIX Status Page</title>
6 <style type="text/css">
7 body {
8 background-color: #fff;
9 }
10 table, th, td {
11 background-color: #eee;
12 padding: 0.2em 0.4em 0.2em 0.4em;
13 }
14 .table th {
15 background-color: #c0c0c0;
16 }
17 .table {
18 background-color: #fff;
19 border-spacing: 0.2em;
20 }
21 </style>
22 </head>
23 <body>
24 <h1>AS{{ asn }} at CCCamp IX</h1>
25 <h2>Autonomous System</h2>
26 <p>
27 <b>ASN</b>: {{ asn }}<br />
28 <b>Network name</b>: {{ details.peeringdb_info.name }}<br />
29 </p>
30 <h2>Checks</h2>
31 <p>
32 Checks are prerequisites that need to pass for the ASN to be considered as part of the exchange.
33 </p>
34 <p>
35 <table class="table">
36 <tr>
37 <th>Name</th>
38 <th>Description</th>
39 <th>Status</th>
40 </tr>
41 {% for check in details.checks %}
42 <tr>
43 <td>{{ check_info.get(check.name)[0] }}</td>
44 <td>{{ check_info.get(check.name)[1] }}</td>
45 {% if check.status == 1 %}
46 <td style="background-color: lime">OK</td>
47 {% else %}
48 <td style="background-color: red">Failed: {{ check.msg }}</td>
49 {% endif %}
50 </tr>
51 {% endfor %}
52 </table>
53 </p>
54 <h2>AS{{ asn }} Routers</h2>
55 <p>
56 These are the routers that we'll be trying to reach from our Route Servers.
57 </p>
58 <p>
59 <table class="table">
60 <tr>
61 <th>IPv6 Address</th>
62 <th>Legacy Address</th>
63 </tr>
64 {% for router in details.peeringdb_info.routers %}
65 <tr>
66 {% if router.ipv6 %}
67 <td>{{ router.ipv6 }}</td>
68 {% else %}
69 <td><i>none</i></td>
70 {% endif %}
71
72 {% if router.ipv4 %}
73 <td>{{ router.ipv4 }}</td>
74 {% else %}
75 <td><i>none</i></td>
76 {% endif %}
77 </tr>
78 {% endfor %}
79 </table>
80 </p>
81 <h2>AS{{ asn }} Allowed Prefixes</h2>
82 <p>
83 Allowed prefixes pulled in from RPKI.
84 </p>
85 <p>
86 <table class="table">
87 <tr>
88 <th>Prefix</th>
89 <th>Max Length</th>
90 <th>Originating TA</th>
91 </tr>
92 {% for prefix in details.allowed_prefixes %}
93 <tr>
94 <td>{{ prefix.prefix }}</td>
95 <td>{{ prefix.max_length }}</td>
96 <td>{{ prefix.ta }}</td>
97 </tr>
98 {% else %}
99 <tr>
100 <td colspan="3"><i>no prefixes</i></td>
101 </tr>
102 {% endfor %}
103 </table>
104 </p>
Serge Bazanskiec71cb52019-08-22 18:13:13 +0200105 <h2>AS{{ asn }} configuration</h2>
106 <p>
107 To get configuration data for your routers, please decode the following GPG secret:
108
109 <pre>curl https://ix-status.bgp.wtf/asn/{{ asn }}/config.gpg | gpg --decrypt</pre>
110 </p>
Sergiusz Bazanski1fad2e52019-08-01 20:16:27 +0200111 </body>
112</html>