📬 ISN 205: Zbuduj Własny Looking Glass, Opanuj cURL i Poznaj MCP

205 numer poświęcony: awarii systemu Triple Zero, praktycznemu użyciu cURL w terminalu, budowie własnego looking glass, pracy z Jirą w CLI oraz wprowadzeniu do MCP. Krótkie, techniczne wskazówki i gotowe komendy do przetestowania od razu.
📬 ISN 205: Zbuduj Własny Looking Glass, Opanuj cURL i Poznaj MCP

Awaria systemu Triple Zero

Optus firewall upgrade behind 13-hour Triple Zero outage
Telco faces multiple investigations.

W czwartek 20 września 2025 roku o godzinie 12:30 zespół Optus rozpoczął "rutynową" aktualizację firewall'a.

Przez ponad 13 godzin operator nie miał świadomości awarii. Początkowe testy po implementacji zmiany nie ujawniły problemów z połączeniami Triple Zero. Pierwsze zgłoszenia od klientów wpłynęły o 9:00, ale nie zostały odpowiednio eskalowane.

Najbardziej niepokojącym aspektem całego incydentu jest fakt, że Optus nie monitorował specjalnie ruchu połączeń ratunkowych. Systemy telemetryczne operatora nie wykryły anomalii, ponieważ nie były skonfigurowane do śledzenia tego krytycznego typu ruchu.

Incident ujawnia fundamentalną wadę w architekturze sieci Optus. Ruch Triple Zero powinien być traktowany jako krytyczny i obsługiwany przez dedykowane ścieżki sieciowe z własnymi mechanizmami failover.

Ponadto każda modyfikacja infrastruktury sieciowej wymaga dokładnej analizy wpływu. W przypadku Optus zabrakło:

  1. Mapowania zależności - identyfikacji wszystkich usług mogących być dotknięte zmianą
  2. Planów rollback - procedur szybkiego cofnięcia zmian w przypadku problemów
  3. Windows maintenance - ograniczenia krytycznych zmian do określonych okien czasowych

To nie pierwszy raz, gdy Optus ma problemy z Triple Zero. W 2023 roku operator został ukarany grzywną 12 milionów dolarów za podobny incident. Fakt powtórzenia się problemu wskazuje na systemowe braki w zarządzaniu infrastrukturą krytyczną.


cURL w Terminalu

The Internet From Your Terminal: 8 Ways to Use cURL
Master this internet power tool.

Narzędzie cURL to jeden z najbardziej wszechstronnych instrumentów w arsenale każdego doświadczonego inżyniera sieci. Jego kompleksowa implementacja protokołów HTTP i elastyczność czyni go niezastąpionym przy diagnostyce sieciowej, testowaniu API i automatyzacji zadań administracyjnych.

1. Pobieranie Stron i Diagnostyka Protokołów

Podstawowe użycie cURL pozwala na szybkie sprawdzenie dostępności zasobów sieciowych:

curl info.cern.ch

W środowisku produkcyjnym często potrzebujemy przekierować wyjście do pliku w celu dalszej analizy:

curl info.cern.ch > diagnostyka.html
💡
cURL automatycznie wykrywa przekierowanie wyjścia i wysyła informacje o czasie odpowiedzi do stderr, co pozwala na oddzielenie danych diagnostycznych od zawartości odpowiedzi.

Przy pracy z URL-ami zawierającymi znaki specjalne (?, #, &), zawsze używaj cudzysłowów:

curl 'https://api.example.com/data?param=value&token=abc123'

2. Zaawansowane Pobieranie Plików z Monitorowaniem Transferu

Pobierając duże pliki konfiguracyjne lub obrazy systemowe, cURL oferuje zaawansowane opcje monitorowania:

curl -o firmware.bin https://vendor.com/firmware/latest.bin

Alternatywnie, użyj paska postępu dla lepszej kontroli nad długotrwałymi transferami:

curl --progress-bar -o backup.tar.gz https://backup.server.com/daily/backup.tar.gz

3. Bezpieczna Instalacja Narzędzi Administracyjnych

W środowiskach enterprise często instalujemy narzędzia poprzez skrypty shell. Przykład instalacji narzędzia monitoringu sieci:

curl --proto '=https' --tlsv1.2 -LsSf https://setup.monitoring-tool.sh | sh
  • --proto '=https': Wymusza użycie protokołu HTTPS
  • --tlsv1.2: Zapewnia minimum TLS 1.2 dla bezpiecznej komunikacji
  • -L: Automatycznie podąża za przekierowaniami HTTP
  • -sS: Ukrywa pasek postępu, ale pokazuje błędy
  • -f: Traktuje błędy HTTP jako błędy poleceń

4. Sprawdzanie Publicznego Adresu IP w Automatyzacji

Dla skryptów monitorujących i narzędzi diagnostycznych:

curl ifconfig.co

Przykład integracji w skrypcie bash do monitorowania zmian IP:

#!/bin/bash
CURRENT_IP=$(curl -s ifconfig.co)
echo "Aktualny publiczny IP: $CURRENT_IP"

Zaawansowane użycie: Można modyfikować User-Agent dla testowania różnych responsów:

curl -s --user-agent "NetworkMonitor/1.0" ifconfig.co

5. Analiza Nagłówków HTTP i Diagnostyka Protokołów

Dla dogłębnej analizy komunikacji sieciowej, sprawdzanie nagłówków odpowiedzi:

curl -I https://api.company.com/health

Jeśli serwer nie obsługuje żądań HEAD, użyj GET z wyświetleniem tylko nagłówków:

curl -I -X GET https://problematic-server.com/endpoint

Diagnostyka kompletna z nagłówkami żądań i odpowiedzi:

curl -v https://api.service.com/status

To narzędzie jest nieocenione przy debugowaniu problemów z load balancerami, proxy i CDN.

6. Testowanie i Integracja z API

cURL to podstawowe narzędzie do testowania API w środowiskach DevOps i NetOps. Przykład z testowym API:

curl https://dummyjson.com/test

Integracja z narzędziami do przetwarzania JSON:

curl https://dummyjson.com/products | jq '.products[0]' | more

Ten pipeline pozwala na:

  • Pobranie danych z API
  • Parsowanie JSON za pomocą jq
  • Kontrolowane wyświetlanie wyników

Zastosowanie w monitoringu: Idealne do health-checków usług i automatyzacji testów API.

7. Pobieranie i Analiza Feedów RSS w Systemach Monitoringu

Dla systemów zbierających informacje o bezpieczeństwie i aktualizacjach:

curl -s https://security-feed.vendor.com/rss | more

Zaawansowane przetwarzanie XML:

curl -s https://updates.system.com/feed/ | xmllint --xpath '//channel/title/text()' -

Umożliwia to automatyczne pobieranie i przetwarzanie informacji o aktualizacjach bezpieczeństwa.

8. Programistyczne Wykorzystanie libcURL

LibcURL oferuje API programistyczne. Przykład w PHP:

<?php
$ch = curl_init("http://network-device.local/api/status");
$fp = fopen("device-status.json", "w");

curl_setopt($ch, CURLOPT_FILE, $fp);
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_TIMEOUT, 30);

curl_exec($ch);

if (curl_error($ch)) {
    fwrite($fp, curl_error($ch));
}

curl_close($ch);
fclose($fp);
?>

Postaw własny looking glass

GitHub - thatmattlove/hyperglass: hyperglass is the network looking glass that tries to make the internet better.
hyperglass is the network looking glass that tries to make the internet better. - thatmattlove/hyperglass

hyperglass to narzędzie typu looking glass, które pozwala operatorom sieci udostępniać publiczne testy i przeglądanie stanu swojej sieci. Umożliwia uruchamianie poleceń takich jak BGP Route, BGP Community, BGP AS Path, Ping i Traceroute (można też dodawać własne), działa w pełni z IPv6 i pozwala pytać wiele urządzeń jednocześnie. Całość jest w pełni konfigurowalna — od funkcji przez interfejs i komunikaty aż po reguły dostępu (whitelist/blacklist).


Jira w terminalu

JiraTUI - Where Jira Meets the Command Line
JiraTUI is a command-line tool that allows developers to manage their Jira tasks efficiently and effortlessly from the terminal using a textual user interface.

JiraTUI to narzędzie umożliwiające zarządzanie zadaniami Jira z terminala. Pozwala szybko wyszukiwać zadania (również przez JQL), tworzyć nowe wpisy, aktualizować statusy, przypisania, etykiety i terminy, dodawać/usuwać komentarze oraz łączyć zadania jako zależności.

Wprowadzenie do MCP

Świetnie! Udało ci się pomyślnie zarejestrować.
Witaj z powrotem! Zalogowałeś się pomyślnie.
Pomyślnie subskrybowałeś Inna Sieć.
Twój link wygasł.
Sukces! Sprawdź swoją skrzynkę e-mailową, aby uzyskać magiczny link do logowania.
Sukces! Twoje informacje rozliczeniowe zostały zaktualizowane.
Twoje informacje rozliczeniowe nie zostały zaktualizowane.