Sergiusz Bazanski | 1fad2e5 | 2019-08-01 20:16:27 +0200 | [diff] [blame] | 1 | <!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 Bazanski | ec71cb5 | 2019-08-22 18:13:13 +0200 | [diff] [blame] | 105 | <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 Bazanski | 1fad2e5 | 2019-08-01 20:16:27 +0200 | [diff] [blame] | 111 | </body> |
| 112 | </html> |