Skip to content

Instantly share code, notes, and snippets.

@nerun
Last active January 7, 2026 14:30
Show Gist options
  • Select an option

  • Save nerun/0e8687bc7587912bea8538b834503210 to your computer and use it in GitHub Desktop.

Select an option

Save nerun/0e8687bc7587912bea8538b834503210 to your computer and use it in GitHub Desktop.
Void Linux Mirror Ping Tester: Script Bash que testa a latência de 32 mirrors oficiais e mostra os 5 mais rápidos para sua localização com ping -c 3.
#!/bin/bash
# https://xmirror.voidlinux.org/
# Lista de URLs
URLs=(
"https://mirrors.cicku.me/voidlinux"
"https://mirror.ps.kz/voidlinux/"
"https://mirror.nju.edu.cn/voidlinux/"
"https://mirrors.bfsu.edu.cn/voidlinux/"
"https://mirrors.tuna.tsinghua.edu.cn/voidlinux/"
"https://mirror.sjtu.edu.cn/voidlinux/"
"https://mirrors.kubarcloud.net/voidlinux/"
"https://repo.jing.rocks/voidlinux/"
"https://mirror.meowsmp.net/voidlinux/"
"http://ftp.dk.xemacs.org/voidlinux/"
"https://mirrors.dotsrc.org/voidlinux/"
"https://ftp.cc.uoc.gr/mirrors/linux/voidlinux/"
"https://voidlinux.mirror.garr.it/"
"https://void.cijber.net/"
"https://void.sakamoto.pl/"
"http://ftp.debian.ru/mirrors/voidlinux/"
"https://mirror.yandex.ru/mirrors/voidlinux/"
"https://ftp.lysator.liu.se/pub/voidlinux/"
"https://mirror.accum.se/mirror/voidlinux/"
"https://mirror.puzzle.ch/voidlinux/"
"https://mirror.vofr.net/voidlinux/"
"https://mirror.clarkson.edu/voidlinux/"
"https://mirrors.lug.mtu.edu/voidlinux/"
"https://mirror.aarnet.edu.au/pub/voidlinux/"
"https://ftp.swin.edu.au/voidlinux/"
"http://void.chililinux.com/voidlinux/"
"https://mirror.linux.ec/voidlinux/"
"https://mirror.freedif.org/voidlinux/"
"https://repo-fi.voidlinux.org/"
"https://repo-de.voidlinux.org/"
"https://repo-fastly.voidlinux.org/"
"https://mirrors.summithq.com/voidlinux/"
)
# Arquivo temporário para armazenar resultados
temp_file=$(mktemp)
echo "Testando ping para cada servidor (3 tentativas cada)..."
echo "======================================================"
# Para cada URL, extrair o domínio e fazer ping
for url in "${URLs[@]}"; do
# Extrair o domínio da URL
domain=$(echo "$url" | sed -e 's|^[^/]*//||' -e 's|/.*$||' -e 's|^http://||' -e 's|^https://||')
echo -n "Testando $domain... "
# Fazer ping 3 vezes e capturar o tempo médio
# -c 3: 3 tentativas
# -W 2: timeout de 2 segundos
# grep 'min/avg/max': linha com estatísticas
# awk: extrair a média
ping_result=$(ping -c 3 -W 2 "$domain" 2>/dev/null | grep 'min/avg/max')
if [ $? -eq 0 ]; then
avg_ping=$(echo "$ping_result" | awk -F'/' '{print $5}')
echo "$avg_ping ms"
echo "$avg_ping $domain" >> "$temp_file"
else
echo "FALHOU ou TIMEOUT"
echo "99999 $domain" >> "$temp_file" # Valor alto para falhas
fi
done
echo ""
echo "======================================================"
echo "TOP 5 servidores com menor ping:"
echo "======================================================"
# Ordenar por ping (menor primeiro) e pegar os 5 primeiros
grep -v '^99999 ' "$temp_file" | sort -n | head -5 | while read ping domain; do
if [ "$ping" == "99999" ]; then
echo "$domain: FALHOU"
else
LC_ALL=C printf "%-40s: %.2f ms\n" "$domain" "$ping"
fi
done
# Limpar arquivo temporário
rm "$temp_file"
@nerun
Copy link
Author

nerun commented Jan 7, 2026

Eu moro no interior de São Paulo, e o mirror https://repo-fastly.voidlinux.org foi o mais rápido pra mim, com ping 13 ms. E ele é Tier 1.

Conselho: privilegiam o uso de mirrors Tier 1 sempre que possível.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment