{% extends "skeleton.html" -%}
{% block title -%}
Tor Relays :: {{ relay['nickname'] }}
{% endblock -%}
{% block body -%}
Home :: Relay "{{ relay['nickname'] }}"
-
Nickname
-
{{ relay['nickname']|escape }}
-
OR Address
-
{% for address in relay['or_addresses'] -%}
{{ address }}
{% endfor -%}
-
Contact
{% if relay['contact'] -%}
-
{{
relay['contact']|escape }}
{% else -%}
-
none
{% endif -%}
-
Dir Address
{% if relay['dir_address'] -%}
-
{{
relay['dir_address']|escape }}
{% else -%}
-
none
{% endif -%}
-
Exit Address
{% if relay['exit_address'] -%}
-
{{ relay['exit_address']|escape }}
{% else -%}
-
none
{% endif -%}
-
Observed Bandwidth
{% if relay['observed_bandwidth'] > 1000000 -%}
{% set obs_bandwidth = '%s %s'|format((relay['observed_bandwidth']
/ 1000000)|round(2, 'common'), 'MB/s') -%}
{% else -%}
{% set obs_bandwidth = '%s %s'|format((relay['observed_bandwidth']
/ 1000)|round(2, 'common'), 'KB/s') -%}
{% endif -%}
-
{{ obs_bandwidth }}
-
IPv4 Exit Policy Summary
-
{% if relay['exit_policy_summary'] -%}
{%- set v4_summary = relay['exit_policy_summary'].items() -%}
{% for k, v in v4_summary -%}
{{ k|escape }}: {{ '\n ' + v|join('\n ')|escape }}
{% endfor -%}
{% else -%}
none
{% endif -%}
-
IPv6 Exit Policy Summary
-
{% if relay['exit_policy_v6_summary'] -%}
{%- set v6_summary = relay['exit_policy_v6_summary'].items() -%}
{% for k, v in v6_summary -%}
{{ k|escape }}: {{ '\n ' + v|join('\n ')|escape }}
{% endfor -%}
{% else -%}
none
{% endif -%}
-
Exit Policy
-
{% for policy in relay['exit_policy'] -%}
{{ policy|escape }}
{% endfor -%}
{% if relay['effective_family']|length > 1 -%}
-
Effective Family Members (view)
{% else -%}
-
Effective Family Members
{% endif -%}
-
{% for e_relay in relay['effective_family'] -%}
{% if relay['effective_family']|length > 1 -%}
{{ e_relay|escape }}
{% else -%}
{{ e_relay|escape }}
{% endif -%}
{% endfor -%}
-
Alleged Family Members
-
{% if relay['alleged_family'] -%}
{% for a_relay in relay['alleged_family'] -%}
{% if relay['alleged_family']|length > 1 -%}
{{ a_relay|escape }}
{% else -%}
{{ a_relay|escape }}
{% endif -%}
{% endfor -%}
{% else -%}
none
{% endif -%}
-
Fingerprint
-
{{ relay['fingerprint']|escape }}
-
Flags
-
{% for flag in relay['flags'] -%}
{% if flag != 'StaleDesc' -%}
{{ flag|escape }}
{% endif -%}
{% endfor -%}
-
Host Name
-
{% if relay['verified_host_names'] -%}
{{
relay['verified_host_names']|join('\n')|escape }}
{% elif relay['unverified_host_names'] -%}
{{
relay['unverified_host_names']|join('\n')|escape }}
{% else -%}
none
{% endif -%}
-
Country
-
{% if relay['country'] -%}
{{ relay['country_name']|escape }}
{% else -%}
unknown
{% endif -%}
-
AS Number
-
{% if relay['as'] -%}
{{ relay['as']|escape
}}
{% else -%}
unknown
{% endif -%}
-
AS Name
-
{% if relay['as_name'] -%}
{{ relay['as_name']|escape }} (BGP)
{% else -%}
unknown
{% endif -%}
-
First Seen
-
{{ relay['first_seen']|escape }}
-
Last Restarted
-
{{ relay['last_restarted']|escape }}
-
Consensus Weight
-
{{ relay['consensus_weight_fraction']|escape }} ({{
relay['consensus_weight']|escape }})
-
Platform
-
{{
relay['platform'] }}
{% endblock -%}