mirror of
https://github.com/NetworkCats/rustyip.git
synced 2026-11-13 16:17:46 +00:00
228 lines
8.1 KiB
HTML
228 lines
8.1 KiB
HTML
{% extends "base.html" %}
|
|
|
|
{% block title %}{{ t_title }} - {{ site_domain }}{% endblock %}
|
|
|
|
{% block head_meta %}
|
|
<meta name="description" content="{{ t_description }}">
|
|
<link rel="canonical" href="https://{{ site_domain }}/{{ lang_tag }}">
|
|
<meta name="theme-color" content="#007AFF" media="(prefers-color-scheme: light)">
|
|
<meta name="theme-color" content="#0A84FF" media="(prefers-color-scheme: dark)">
|
|
<meta property="og:title" content="{{ t_title }} - {{ site_domain }}">
|
|
<meta property="og:description" content="{{ t_description }}">
|
|
<meta property="og:type" content="website">
|
|
<meta property="og:url" content="https://{{ site_domain }}/{{ lang_tag }}">
|
|
<meta name="twitter:card" content="summary">
|
|
<meta name="twitter:title" content="{{ t_title }} - {{ site_domain }}">
|
|
<meta name="twitter:description" content="{{ t_description }}">
|
|
{% for l in all_locales %}
|
|
<link rel="alternate" hreflang="{{ l.tag() }}" href="https://{{ site_domain }}/{{ l.tag() }}">
|
|
{% endfor %}
|
|
<link rel="alternate" hreflang="x-default" href="https://{{ site_domain }}/">
|
|
{% endblock %}
|
|
|
|
{% block head_preconnect %}
|
|
<link rel="preconnect" href="https://cdnjs.cloudflare.com" crossorigin>
|
|
{% endblock %}
|
|
|
|
{% block head_stylesheets %}
|
|
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/simple-line-icons/2.5.5/css/simple-line-icons.min.css">
|
|
{% endblock %}
|
|
|
|
{% block content %}
|
|
{% let autofocus = false %}
|
|
{% include "_search_form.html" %}
|
|
|
|
<h1 class="ip-display">{{ ip }}</h1>
|
|
|
|
<table class="info-table" aria-label="{{ t_table_aria }}">
|
|
<tbody>
|
|
{% if !asn.is_empty() %}
|
|
<tr>
|
|
<th scope="row">{{ t_asn }}</th>
|
|
<td>{% if let Some(n) = asn_number %}<a href="https://bgp.tools/as/{{ n }}" target="_blank" rel="noopener noreferrer">{{ asn }}</a>{% else %}{{ asn }}{% endif %}</td>
|
|
</tr>
|
|
{% endif %}
|
|
{% if !org.is_empty() %}
|
|
<tr>
|
|
<th scope="row">{{ t_org }}</th>
|
|
<td>{{ org }}</td>
|
|
</tr>
|
|
{% endif %}
|
|
{% if !country.is_empty() %}
|
|
<tr>
|
|
<th scope="row">{{ t_country }}</th>
|
|
<td>{{ country }}</td>
|
|
</tr>
|
|
{% endif %}
|
|
{% if !city.is_empty() %}
|
|
<tr>
|
|
<th scope="row">{{ t_city }}</th>
|
|
<td>{{ city }}</td>
|
|
</tr>
|
|
{% endif %}
|
|
<tr>
|
|
<th scope="row">{{ t_proxy }}</th>
|
|
<td>{% if is_proxy %}<i class="icon-check bool-true" aria-hidden="true"></i><span class="sr-only">{{ t_yes }}</span>{% else %}<i class="icon-minus bool-false" aria-hidden="true"></i><span class="sr-only">{{ t_no }}</span>{% endif %}</td>
|
|
</tr>
|
|
<tr>
|
|
<th scope="row">{{ t_vpn }}</th>
|
|
<td>{% if is_vpn %}<i class="icon-check bool-true" aria-hidden="true"></i><span class="sr-only">{{ t_yes }}</span>{% else %}<i class="icon-minus bool-false" aria-hidden="true"></i><span class="sr-only">{{ t_no }}</span>{% endif %}</td>
|
|
</tr>
|
|
<tr>
|
|
<th scope="row">{{ t_hosting }}</th>
|
|
<td>{% if is_hosting %}<i class="icon-check bool-true" aria-hidden="true"></i><span class="sr-only">{{ t_yes }}</span>{% else %}<i class="icon-minus bool-false" aria-hidden="true"></i><span class="sr-only">{{ t_no }}</span>{% endif %}</td>
|
|
</tr>
|
|
<tr>
|
|
<th scope="row">{{ t_tor }}</th>
|
|
<td>{% if is_tor %}<i class="icon-check bool-true" aria-hidden="true"></i><span class="sr-only">{{ t_yes }}</span>{% else %}<i class="icon-minus bool-false" aria-hidden="true"></i><span class="sr-only">{{ t_no }}</span>{% endif %}</td>
|
|
</tr>
|
|
</tbody>
|
|
</table>
|
|
|
|
<section class="faq" aria-label="{{ t_faq_aria }}">
|
|
<h2 class="faq-title">{{ t_faq }}</h2>
|
|
|
|
<details open>
|
|
<summary>{{ t_faq_cli_q }}</summary>
|
|
<div class="faq-content">
|
|
<p>{{ t_faq_cli_a }}</p>
|
|
<p>{{ t_faq_cli_query_current }}</p>
|
|
<pre><code>curl {{ site_domain }}</code></pre>
|
|
<p>{{ t_faq_cli_query_own }}</p>
|
|
<pre><code>curl {{ site_domain }}/asn
|
|
|
|
curl {{ site_domain }}/org
|
|
|
|
curl {{ site_domain }}/country
|
|
|
|
curl {{ site_domain }}/city
|
|
|
|
curl {{ site_domain }}/proxy
|
|
|
|
curl {{ site_domain }}/vpn
|
|
|
|
curl {{ site_domain }}/hosting
|
|
|
|
curl {{ site_domain }}/tor</code></pre>
|
|
<p>{{ t_faq_cli_json }}</p>
|
|
<pre><code>curl {{ site_domain }}/json
|
|
{
|
|
"ip": "1.1.1.1",
|
|
"continent": { ... },
|
|
"country": { ... },
|
|
"city": { ... },
|
|
"location": { ... },
|
|
"asn": { ... },
|
|
"proxy": { ... }
|
|
}</code></pre>
|
|
<p>{{ t_faq_cli_specific }}</p>
|
|
<pre><code>curl {{ site_domain }}/json?ip=1.1.1.1
|
|
{
|
|
"ip": "1.1.1.1",
|
|
"continent": { ... },
|
|
"country": { ... },
|
|
"city": { ... },
|
|
"location": { ... },
|
|
"asn": { ... },
|
|
"proxy": { ... }
|
|
}</code></pre>
|
|
</div>
|
|
</details>
|
|
|
|
<details open>
|
|
<summary>{{ t_faq_ipv46_q }}</summary>
|
|
<div class="faq-content">
|
|
<p>{{ t_faq_ipv46_a|safe }}</p>
|
|
</div>
|
|
</details>
|
|
|
|
<details open>
|
|
<summary>{{ t_faq_json_q }}</summary>
|
|
<div class="faq-content">
|
|
<p>{{ t_faq_json_a|safe }}</p>
|
|
</div>
|
|
</details>
|
|
|
|
<details open>
|
|
<summary>{{ t_faq_automate_q }}</summary>
|
|
<div class="faq-content">
|
|
<p>{{ t_faq_automate_a1 }}</p>
|
|
<p>{{ t_faq_automate_a2|safe }}</p>
|
|
</div>
|
|
</details>
|
|
|
|
<details open>
|
|
<summary>{{ t_faq_data_q }}</summary>
|
|
<div class="faq-content">
|
|
<p>{{ t_faq_data_a|safe }}</p>
|
|
<p>{{ t_faq_data_attr }}</p>
|
|
<ul>
|
|
<li>MaxMind GeoLite2: <a href="https://creativecommons.org/licenses/by-sa/4.0/">Creative Commons Attribution-ShareAlike 4.0 International License</a></li>
|
|
<li>IPinfo Lite: <a href="https://creativecommons.org/licenses/by-sa/4.0/">Creative Commons Attribution-ShareAlike 4.0 International License</a></li>
|
|
<li>DB-IP: <a href="https://creativecommons.org/licenses/by/4.0/">CC BY 4.0</a></li>
|
|
<li>RouteViews ASN: <a href="https://creativecommons.org/publicdomain/zero/1.0/">CC0 1.0</a></li>
|
|
<li>OpenProxyDB: <a href="https://creativecommons.org/publicdomain/zero/1.0/">CC0 1.0</a></li>
|
|
</ul>
|
|
</div>
|
|
</details>
|
|
|
|
<details open>
|
|
<summary>{{ t_faq_selfhost_q }}</summary>
|
|
<div class="faq-content">
|
|
<p>{{ t_faq_selfhost_a }}</p>
|
|
<ul>
|
|
<li><a href="https://github.com/NetworkCats/rustyip">https://github.com/NetworkCats/rustyip</a></li>
|
|
<li><a href="https://github.com/NetworkCats/Merged-IP-Data">https://github.com/NetworkCats/Merged-IP-Data</a></li>
|
|
</ul>
|
|
</div>
|
|
</details>
|
|
|
|
<details open>
|
|
<summary>{{ t_faq_diff_q }}</summary>
|
|
<div class="faq-content">
|
|
<p>{{ t_faq_diff_a1 }}</p>
|
|
<p>{{ t_faq_diff_a2 }}</p>
|
|
<p>{{ t_faq_diff_a3 }}</p>
|
|
</div>
|
|
</details>
|
|
|
|
<details open>
|
|
<summary>{{ t_faq_stable_q }}</summary>
|
|
<div class="faq-content">
|
|
<p>{{ t_faq_stable_a1 }}</p>
|
|
<p>{{ t_faq_stable_a2 }}</p>
|
|
<p>{{ t_faq_stable_a3 }}</p>
|
|
</div>
|
|
</details>
|
|
|
|
<details open>
|
|
<summary>{{ t_faq_sponsor_q }}</summary>
|
|
<div class="faq-content">
|
|
<p>{{ t_faq_sponsor_a }} <a href="mailto:networkcatlol@gmail.com">networkcatlol@gmail.com</a></p>
|
|
</div>
|
|
</details>
|
|
</section>
|
|
{% endblock %}
|
|
|
|
{% block footer %}
|
|
<footer class="site-footer">
|
|
<div class="footer-inner">
|
|
<div class="footer-left">
|
|
{% include "_footer.html" %}
|
|
<div class="footer-attribution">
|
|
<p>{{ t_footer_attribution }}</p>
|
|
<ul>
|
|
<li><a href="https://www.maxmind.com/">MaxMind GeoLite2</a></li>
|
|
<li><a href="https://ipinfo.io/">IPinfo Lite</a></li>
|
|
<li><a href="https://db-ip.com/">DB-IP</a></li>
|
|
<li><a href="https://www.routeviews.org/">RouteViews ASN</a></li>
|
|
</ul>
|
|
</div>
|
|
</div>
|
|
<div class="footer-right">
|
|
{% include "_footer_lang.html" %}
|
|
</div>
|
|
</div>
|
|
</footer>
|
|
{% endblock %}
|