====== Как определить геолокацию своих пиров ======
С помощью нижеследующих команд можно определить, в каких странах находятся узлы, к которым вы подключены (или которые подключены к вам).
//**Примечание:** в [[yggdrasil:config_russian|конфигурационном файле Yggdrasil]] должен быть задан параметр ''%%AdminListen%%'', отличный от none.//
//**Примечание:** не обрабатываются IPv6-адреса пиров.//
===== С помощью geoiplookup =====
sudo apt install geoip-bin
Вывод IP-адресов всех пиров с кодами стран:
sudo yggdrasilctl getPeers | grep -Eo '[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}' | while read ip; do printf "%-16s" "$ip "; geoiplookup $ip | sed 's/GeoIP Country Edition: \([A-Z ]\{2\}\).*/\1/';done;
Подсчет количества пиров по странам:
sudo yggdrasilctl getPeers | grep -Eo '[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}' | while read ip; do geoiplookup $ip | sed 's/GeoIP Country Edition: \([A-Z ]\{2\}\).*/\1/'; done | sort | uniq -c
===== С помощью whois =====
sudo apt install whois
sudo yggdrasilctl getPeers|grep -Eo '[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}' | while read ip; do printf "%-16s" "$ip "; whois $ip |grep country;done;
===== С помощью сервиса ipinfo.io =====
sudo apt install curl jq
sudo yggdrasilctl getPeers|grep -Eo '[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}' | while read ip; do printf "%-16s" "$ip "; echo $(curl --silent "ipinfo.io/$ip") |jq '.country';done;
====== Ссылки ======
API для администрирования: [[this>yggdrasil:admin_api]] \\
Коды названий стран: [[wpru>ISO_3166-1#Список_кодов|https://ru.wikipedia.org/wiki/ISO_3166-1]]