TCPing to narzędzie diagnostyczne służące do testowania dostępności portów TCP na zdalnych serwerach. W przeciwieństwie do tradycyjnego polecenia ping, które wykorzystuje protokół ICMP, TCPing nawiązuje rzeczywiste połączenia TCP, co czyni go niezwykle użytecznym w środowiskach, gdzie ICMP jest blokowany przez zapory sieciowe.
Dlaczego TCPing jest przydatny?
Główne zalety:
- Testowanie konkretnych portów - możliwość sprawdzenia dostępności określonych usług (HTTP, HTTPS, FTP, SSH)
- Omijanie blokad ICMP - działa tam, gdzie tradycyjny ping jest zablokowany
- Diagnostyka aplikacji - pozwala zidentyfikować problemy z konkretnymi usługami
- Pomiar opóźnień - mierzy czas odpowiedzi połączeń TCP
- Monitorowanie dostępności - idealne do ciągłego monitoringu usług sieciowych
Podstawowe użycie TCPing
Składnia polecenia
tcping <hostname/ip> <port>
Przykłady użycia
Test połączenia z serwerem WWW:
tcping google.com 80
Test połączenia HTTPS:
tcping example.com 443
Test z limitem prób:
tcping -c 10 example.com 80
Test z określonym interwałem (co 2 sekundy):
tcping -i 2 example.com 443
Test z timeoutem (5 sekund):
tcping -t 5 example.com 3306
Test z wyświetlaniem znaczników czasu:
tcping -D example.com 443
Najczęstsze zastosowania
Diagnostyka serwerów WWW
Sprawdzenie, czy serwer WWW odpowiada na porcie 80 lub 443:
tcping mojadomena.pl 443
Testowanie baz danych
Weryfikacja dostępności serwera MySQL z limitem 20 prób:
tcping -c 20 192.168.1.100 3306
Sprawdzanie SSH
Test dostępności serwera SSH z 3-sekundowym timeoutem:
tcping -t 3 serwer.example.com 22
Monitorowanie usług
Ciągłe monitorowanie dostępności usługi co 5 sekund:
tcping -i 5 example.com 8080
Zapis wyników do pliku CSV
Monitorowanie z zapisem do pliku CSV:
tcping --csv wyniki.csv -c 100 example.com 443
Interpretacja wyników
Przykładowy wynik:
Probing 93.184.216.34:80/tcp - Port is open - time=15.234ms
Probing 93.184.216.34:80/tcp - Port is open - time=14.892ms
Probing 93.184.216.34:80/tcp - Port is open - time=15.103ms
Co oznaczają wyniki:
- Port is open - port jest otwarty i usługa odpowiada
- Port is closed - port jest zamknięty
- Connection timed out - brak odpowiedzi (może być blokowany przez firewall)
- time=X ms - czas odpowiedzi w milisekundach
Porównanie TCPing vs Ping
| Cecha | Ping (ICMP) | TCPing |
|---|---|---|
| Protokół | ICMP | TCP |
| Test konkretnych portów | Nie | Tak |
| Działa przez firewall | Często blokowany | Zazwyczaj tak |
| Test usług aplikacyjnych | Nie | Tak |
| Szybkość | Szybszy | Nieco wolniejszy |
Wszystkie dostępne opcje
-4- wymuszenie użycia tylko IPv4-6- wymuszenie użycia tylko IPv6-D- wyświetlanie znaczników czasu w wynikach-I- określenie interfejsu sieciowego lub adresu-c- zatrzymanie po określonej liczbie prób (np.-c 100)--csv- zapis wyników do pliku CSV--db- zapis wyników do bazy danych SQLite-h- wyświetlenie pomocy-i- interwał między próbami w sekundach (np.-i 2.5)-j- format wyjścia JSON--no-color- wyłączenie kolorowania wyników--pretty- wcięcia w formacie JSON (wymaga-j)-r- ponowne rozwiązywanie nazwy hosta po określonej liczbie nieudanych prób--show-failures-only- pokazywanie tylko nieudanych prób--show-source-address- pokazywanie adresu i portu źródłowego-t- timeout oczekiwania na odpowiedź w sekundach (0 = nieskończony)-u- sprawdzenie aktualizacji-v- wyświetlenie wersji
Przykłady zaawansowanego użycia
Monitorowanie z zapisem do CSV
tcping --csv monitoring.csv -i 5 -c 1000 example.com 443
To polecenie wykona 1000 prób połączenia z portem 443, co 5 sekund, zapisując wyniki do pliku CSV.
Test z wyświetlaniem tylko błędów
tcping --show-failures-only -c 100 example.com 80
Przydatne do szybkiego wykrycia problemów z połączeniem.
Wyjście w formacie JSON
tcping -j --pretty -c 10 example.com 443
Idealne do integracji z innymi narzędziami i skryptami.
Test z wymuszeniem IPv4 i timestampem
tcping -4 -D -i 1 example.com 443
Monitorowanie z automatycznym odświeżaniem DNS
tcping -r 10 -i 2 example.com 443
Ponownie rozwiązuje nazwę hosta po każdych 10 nieudanych próbach.
Praktyczne scenariusze użycia
Sprawdzanie dostępności serwera WWW
tcping -c 50 -i 1 mojstrona.pl 443
Diagnostyka problemów z bazą danych
tcping -t 10 -c 20 db.example.com 5432
Monitorowanie usługi przez 24 godziny
tcping --csv raport_24h.csv -i 60 -c 1440 api.example.com 8080
Test z różnych interfejsów sieciowych
tcping -I 192.168.1.100 example.com 443
Alternatywy dla TCPing
- telnet - podstawowe narzędzie do testowania portów
- nc (netcat) - wszechstronne narzędzie sieciowe
- nmap - zaawansowany skaner portów
- hping3 - zaawansowane narzędzie do testowania pakietów
- psping (Windows) - narzędzie Microsoft Sysinternals
Rozwiązywanie problemów
TCPing nie działa
- Sprawdź, czy plik
tcping.exejest w PATH - Upewnij się, że masz uprawnienia do wykonywania połączeń sieciowych
- Sprawdź, czy firewall nie blokuje połączeń wychodzących
Timeout przy każdej próbie
- Serwer może być niedostępny
- Firewall blokuje połączenia na tym porcie
- Nieprawidłowy adres IP lub nazwa hosta
- Port jest zamknięty
Wolne odpowiedzi
- Problem z siecią
- Przeciążony serwer
- Problemy z DNS (użyj
-rdo ponownego rozwiązywania)
Podsumowanie
TCPing to nieocenione narzędzie dla administratorów systemów i sieci, deweloperów oraz wszystkich zajmujących się diagnostyką połączeń sieciowych. Jego prostota użycia w połączeniu z efektywnością czyni go must-have w zestawie narzędzi każdego specjalisty IT.
Dzięki możliwości testowania konkretnych portów TCP, TCPing wypełnia lukę pozostawioną przez tradycyjne polecenie ping i pozwala na precyzyjną diagnostykę usług sieciowych. Opcje takie jak zapis do CSV, format JSON czy wyświetlanie tylko błędów sprawiają, że narzędzie to jest niezwykle elastyczne i przydatne w różnych scenariuszach.
Jeśli potrzebujesz wsparcia w diagnostyce problemów sieciowych albo monitoringu infrastruktury, skontaktuj się z nami.
Przydatne linki
Najczęściej zadawane pytania
Czym różni się TCPing od polecenia ping?
Ping używa protokołu ICMP i sprawdza jedynie dostępność hosta. TCPing nawiązuje rzeczywiste połączenie TCP z konkretnym portem, dzięki czemu testuje dostępność konkretnej usługi (np. HTTP, HTTPS, SSH, bazy danych).
Czy TCPing działa przez firewall blokujący ping?
Tak. Ponieważ TCPing używa protokołu TCP na porcie usługi, działa nawet tam, gdzie zapora blokuje pakiety ICMP wykorzystywane przez klasyczny ping.
Jak monitorować dostępność usługi w sposób ciągły?
Użyj interwału, np. tcping -i 5 example.com 443, aby sprawdzać port co 5 sekund. Dodając opcję --csv, zapiszesz wyniki do pliku do późniejszej analizy.
Jak zapisać wyniki TCPing?
TCPing obsługuje eksport wyników do pliku CSV (--csv), do bazy SQLite (--db) oraz w formacie JSON (-j, opcjonalnie z --pretty dla czytelniejszego formatowania).
Czy TCPing jest dostępny na Windows?
Tak, TCPing działa na Windows jako tcping.exe. Upewnij się, że plik znajduje się w zmiennej środowiskowej PATH, aby uruchamiać go z dowolnego katalogu.