ARK. D01Parametr monitoringuDostępność · lista 50 parametrów

Połączenie TCP

ważność krytycznamierzonysposób tcp

Czy port 80/443 serwera odpowiada na połączenie. Podstawowy sygnał, że serwer żyje — pada zanim HTTP zdąży odpowiedzieć.

ARK. 1

WIKI

artykuł z 16.09.2026 · źródeł 10

Połączenie TCP to parametr monitoringu stron internetowych, który sprawdza, czy serwer przyjmuje połączenie TCP na porcie usługi WWW: 80 dla HTTP albo 443 dla HTTPS. Pomiar kończy się jednym z trzech wyników: połączenie przyjęte, połączenie odrzucone albo brak odpowiedzi w wyznaczonym czasie. TCP (Transmission Control Protocol) jest protokołem połączeniowym, który za pomocą numerów portów wskazuje usługi aplikacyjne i rozdziela strumienie danych między hostami [1].

Jak działa

Połączenie TCP jest wyznaczone przez parę gniazd, czyli adresów IP z numerami portów po obu stronach [1]. Serwer, który czeka na klientów, utrzymuje port w stanie LISTEN, oznaczającym oczekiwanie na żądanie połączenia od dowolnego zdalnego hosta [1]. Połączenie powstaje w trójetapowym uzgadnianiu (ang. three-way handshake): klient wysyła segment SYN, serwer odpowiada segmentem z flagami SYN i ACK, a klient potwierdza go segmentem ACK [1].

Jeśli na porcie nie działa żadna aplikacja, połączenie nie istnieje, a odpowiedzią na przychodzący segment jest reset (RST) [1]. Według RFC 9293 próba otwarcia połączenia może zawieść na trzy sposoby: przez wyczerpanie ponownych transmisji segmentu SYN, przez otrzymanie RST albo przez komunikat ICMP Port Unreachable [1]. Komunikaty ICMP Destination Unreachable norma dzieli na błędy miękkie, po których TCP nie może przerwać połączenia, i twarde, po których powinien je przerwać [1]. Brak odpowiedzi nie jest wynikiem natychmiastowym: stos TCP ponawia SYN, a ponawianie SYN musi trwać co najmniej 3 minuty, zanim połączenie zostanie zamknięte [1].

RYS. 1.1Nawiązanie połączenia i odrzucenie

Sprawdzenie strony przechodzi przez kilka warstw. Przeglądarka najpierw pyta DNS o adres serwera, a dopiero potem wysyła żądanie HTTP, przesyłane przez TCP/IP [4]. HTTP działa ponad niezawodnym połączeniem warstwy transportowej lub sesji [3], a kod statusu jest częścią odpowiedzi serwera i opisuje wynik żądania [3]. Awaria TCP oznacza więc, że do wymiany HTTP w ogóle nie doszło. Błąd HTTP, np. kod 500, oznacza, że połączenie powstało, a serwer odpowiedział [3]. Przyjęte połączenie TCP nie mówi nic o poprawności certyfikatu, kodzie odpowiedzi ani treści strony.

RYS. 1.2Warstwy sprawdzenia strony

Standardy i specyfikacje

  • RFC 9293 opisuje TCP: stany połączenia, trójetapowe uzgadnianie, reset i ponawianie SYN [1].
  • Rejestr portów IANA przypisuje port 80 usłudze http, a port 443 usłudze https, opisanej jako HTTP przez TLS/SSL; oba wpisy odsyłają do RFC 9110 [2].
  • RFC 9110 ustala, że przy braku portu w adresie domyślny dla http jest TCP 80, a dla https TCP 443, zarezerwowany dla HTTP przez TLS [3]. Przy połączeniu HTTPS klient musi zweryfikować tożsamość serwera, czyli sprawdzić certyfikat [3]. Sonda TCP kończy pracę przed tym etapem.
  • RFC 9114 definiuje HTTP/3 jako odwzorowanie semantyki HTTP na protokół QUIC, udostępniany na portach UDP [9]. Gdy UDP jest zablokowane, klienci powinni przejść na wersje HTTP oparte na TCP [9]. Sonda TCP nie sprawdza więc dostępności HTTP/3.

Zagrożenia i skutki

Brak usługi na porcie. Port jest zamknięty, gdy host odpowiada, ale żadna aplikacja na nim nie nasłuchuje [5]. Taki obraz daje zatrzymany proces serwera WWW, na przykład po awarii albo w trakcie restartu.

Filtrowanie. Port jest filtrowany, gdy filtr pakietów nie dopuszcza sondy: może to być osobny firewall, reguły routera albo firewall na samym hoście [5]. Filtry częściej po cichu porzucają pakiety, niż odsyłają komunikat ICMP [5]. Program Fail2Ban analizuje logi i po zbyt wielu nieudanych logowaniach zmienia reguły firewalla tak, by odrzucać nowe połączenia z danego adresu IP przez ustalony czas [8]. Jeśli taka blokada obejmie adres sondy, strona dla zwykłych użytkowników może działać, a pomiar pokaże awarię.

Przepełnienie kolejki. Argument backlog funkcji listen określa maksymalną długość kolejki oczekujących połączeń [6]. Gdy kolejka jest pełna, klient może dostać błąd ECONNREFUSED albo żądanie zostanie zignorowane, a późniejsza próba może się udać [6].

SYN flood. Atak SYN flooding to metoda odmowy usługi, w której atakujący wysyła serię segmentów SYN, często z podszytych adresów, i zapełnia kolejkę półotwartych połączeń [7]. Przy pełnej kolejce kolejne SYN są ignorowane albo zastępują niedokończone połączenia, a prawidłowe żądania są odrzucane [7]. Zachowanie zależy od implementacji i może obejmować wysyłanie RST [7].

Pomiar z jednej lokalizacji. Brak odpowiedzi nie musi oznaczać awarii serwera. Nmap ponawia sondy, bo pakiet mógł zginąć z powodu przeciążenia sieci, a nie filtrowania [5]. Nagios Core, żeby unikać fałszywych alarmów przy przejściowych problemach, pozwala ustalić, ile razy sprawdzenie ma zostać powtórzone, zanim stan uzna się za rzeczywisty problem [10].

Przykłady

Wynik sondyCo zobaczy sondaTypowa przyczyna
Połączenie przyjęteSYN-ACK, uzgadnianie kończy się ACK [1]aplikacja nasłuchuje na porcie [5]
Odrzuconesegment RST [1]serwer WWW zatrzymany, nic nie nasłuchuje [5]
Nieosiągalnykomunikat ICMP Port Unreachable lub Destination Unreachable [1]cel nieosiągalny po drodze, filtr odsyłający błąd [1] [5]
Brak odpowiedziponawiane SYN bez odpowiedzi do limitu czasu [1]firewall porzucający pakiety, blokada IP sondy [5] [8]
Przejściowe odrzucenia lub brak odpowiedziECONNREFUSED albo zignorowane SYN [6]pełna kolejka połączeń, SYN flood [6] [7]
Przyjęte, strona nie działapołączenie TCP poprawne, błąd w wyższej warstwie [3]kod 5xx, błąd certyfikatu, problem z treścią [3]
TAB. 1.1Przypisy10
  1. [1] RFC 9293 — Transmission Control Protocol (TCP) · IETF
  2. [2] Service Name and Transport Protocol Port Number Registry · IANA
  3. [3] RFC 9110 — HTTP Semantics · IETF
  4. [4] How the web works · MDN Web Docs
  5. [5] Port Scanning Basics — Nmap Reference Guide · Nmap Project
  6. [6] listen(2) — Linux manual page · man7.org
  7. [7] RFC 4987 — TCP SYN Flooding Attacks and Common Mitigations · IETF
  8. [8] Fail2Ban — README · Fail2Ban Project
  9. [9] RFC 9114 — HTTP/3 · IETF
  10. [10] State Types — Nagios Core Documentation · Nagios Enterprises
ARK. 2

STATS

wyniki z systemu · tylko liczby zbiorcze
TAB. 2.1Odczyty per stronaostatni dzień pomiaru 21.09.2026
Stron zmierzonych
204w ostatnim dniu pomiaru
OK
335odczytów
Fail
5odczytów
Nie dało się sprawdzić
4timeout, blokada, limit zapytań
Udział fail
1,5%bez „nie dało się”
TAB. 2.2Od początkuod 17.09.2026
Stron łącznie
206choć jeden odczyt
OK
1933odczytów
Fail
12odczytów
Nie dało się sprawdzić
21timeout, blokada, limit zapytań
Udział fail
0,6%bez „nie dało się”
RYS. 2.130 dnicheck_type: tcp
23.08.202607.09.202621.09.2026
Odczyty parametru Połączenie TCP, 30 dni · wysokość słupka = liczba odczytów dnia, warstwy od dołu: fail, nie dało się sprawdzić, ok · dni bez odczytu: 25 · dni ze stanem „fail”: 17.09.2026, 18.09.2026, 19.09.2026, 20.09.2026, 21.09.2026 · dni ze stanem „nie dało się sprawdzić”: 18.09.2026, 19.09.2026, 20.09.2026, 21.09.2026
Odczyty parametru Połączenie TCP, 30 dni
Dzieńfailnie dało się sprawdzićok
23.08.20260 odczytów0 odczytów0 odczytów
24.08.20260 odczytów0 odczytów0 odczytów
25.08.20260 odczytów0 odczytów0 odczytów
26.08.20260 odczytów0 odczytów0 odczytów
27.08.20260 odczytów0 odczytów0 odczytów
28.08.20260 odczytów0 odczytów0 odczytów
29.08.20260 odczytów0 odczytów0 odczytów
30.08.20260 odczytów0 odczytów0 odczytów
31.08.20260 odczytów0 odczytów0 odczytów
01.09.20260 odczytów0 odczytów0 odczytów
02.09.20260 odczytów0 odczytów0 odczytów
03.09.20260 odczytów0 odczytów0 odczytów
04.09.20260 odczytów0 odczytów0 odczytów
05.09.20260 odczytów0 odczytów0 odczytów
06.09.20260 odczytów0 odczytów0 odczytów
07.09.20260 odczytów0 odczytów0 odczytów
08.09.20260 odczytów0 odczytów0 odczytów
09.09.20260 odczytów0 odczytów0 odczytów
10.09.20260 odczytów0 odczytów0 odczytów
11.09.20260 odczytów0 odczytów0 odczytów
12.09.20260 odczytów0 odczytów0 odczytów
13.09.20260 odczytów0 odczytów0 odczytów
14.09.20260 odczytów0 odczytów0 odczytów
15.09.20260 odczytów0 odczytów0 odczytów
16.09.20260 odczytów0 odczytów0 odczytów
17.09.20262 odczyty0 odczytów204 odczyty
18.09.20261 odczyt3 odczyty202 odczyty
19.09.20263 odczyty10 odczytów617 odczytów
20.09.20261 odczyt4 odczyty575 odczytów
21.09.20265 odczytów4 odczyty335 odczytów
TAB. 2.3Ustaleniaod 13.07.2026
Otwarte teraz
9stron: 9 · w okresie łaski: 4
Nowe w ostatnim dniu
421.09.2026
Otwarte od początku
61stron: 47
Zamknięte
48od początku
Mediana trwania
5 h 59 minod wykrycia do zamknięcia
UstalenieSkutekOtwarte terazŁącznieZamknięte
Połączenie TCP tcpDOWN96148
RYS. 2.2Nowe ustalenia, 30 dni
23.08.202607.09.202621.09.2026
Nowe ustalenia parametru Połączenie TCP, 30 dni · wysokość słupka = liczba ustaleń dnia, warstwy od dołu: nowe ustalenia · dni bez odczytu: 18
Nowe ustalenia parametru Połączenie TCP, 30 dni
Dzieńnowe ustalenia
23.08.20262 ustalenia
24.08.20260 ustaleń
25.08.20261 ustalenie
26.08.20260 ustaleń
27.08.20261 ustalenie
28.08.20260 ustaleń
29.08.20260 ustaleń
30.08.20261 ustalenie
31.08.20262 ustalenia
01.09.20261 ustalenie
02.09.20260 ustaleń
03.09.20260 ustaleń
04.09.20260 ustaleń
05.09.20260 ustaleń
06.09.202614 ustaleń
07.09.20260 ustaleń
08.09.20260 ustaleń
09.09.20261 ustalenie
10.09.20260 ustaleń
11.09.20260 ustaleń
12.09.20260 ustaleń
13.09.20260 ustaleń
14.09.20260 ustaleń
15.09.20260 ustaleń
16.09.20260 ustaleń
17.09.20261 ustalenie
18.09.20263 ustalenia
19.09.20263 ustalenia
20.09.20260 ustaleń
21.09.20264 ustalenia
TAB. 2.4Przebiegi z tym sposobem sprawdzeniaod 09.09.2026
Przebiegów
60sposób tcp
W 30 dni
60przebiegów
Ostatni
19.09.2026start przebiegu
Stron w przebiegach
20461 przebiegów bez liczby stron
ARK. 3

CARD

karta z kodu CREATO_PING, odczyt 16.09.2026
RYS. 3.1Droga parametru przez system: Połączenie TCP
TAB. 3.1Pomiarpliki: 4
Obszar i ważnośćDostępność · krytyczna (D01)
Workflow i częstotliwośćcreato_ping_avail_v2 działa na LAB247cron co 24 h, osobno T1–T4 · Strony w stanie DOWN i WARNING dostają dodatkowy odczyt co 6 h (timer availability_recheck poza n8n). Od 2026-09-16 sposób ssl daje odczyt ssl_expiry (dni do wygaśnięcia certyfikatu); od 2026-09-17 odczyty trafiają do check_results.
Sonda i helpersposób tcp · CREATO_PING/helpers/tcp_check.py
Testy
  1. Otwarcie połączenia TCP na port 443 domeny (asyncio.open_connection) i natychmiastowe zamknięcie.
  2. Do 50 stron równolegle (BATCH_CONCURRENCY).
Typ wynikuenum: ok / fail / timeout + czas połączenia
Jednostkams (czas do nawiązania połączenia)
Próg i regułaTimeout 2,0 s (+0,5 s marginesu wyłącznika). Odrzucenie albo błąd sieci = fail, brak odpowiedzi w czasie = timeout.
Gdzie leżą pokrętłaCREATO_PING/helpers/config.py → TIMEOUTS["tcp"]CREATO_PING/helpers/site_params.py → CRITICAL_CHECK_TYPES
Retencja odczytówKażdy odczyt w tabeli check_results bazy LAB247; kod LAB247 tej tabeli nie czyści. Polityki retencji nikt jeszcze nie ustalił.
Karta przepisana zCREATO_PING/helpers/tcp_check.py · CREATO_PING/helpers/config.py · CREATO_PING/helpers/site_params.py · LAB247/site/src/lib/ingest/apply.ts · odczyt 16.09.2026
TAB. 3.2Co oznacza failtypów ustaleń: 1

1. fail = ustalenie w okresie łaski (IN PROGRESS, bez alertu). 2. fail z rzędu = ustalenie otwarte i status strony DOWN — sprawdzenie należy do krytycznych (tcp, dns, http, ssl). Wyjątki bijące DOWN: BLOKADA (strona odpowiada z innych lokalizacji, zablokowane jest IP monitoringu) i CONFIG (działa tylko jedna forma adresu). Pierwszy odczyt ok zamyka ustalenie.

UstaleniePowagaPewnośćSkutekSubtask / alarmCo zrobić
Połączenie TCPtcpWysokieEwidentneDOWNtak / takSprawdź hosting: serwer, firewall, limit połączeń.
ARK. 4

LOOP

pętli: 2
RYS. 4.1Pętla parametru — sześć etapów
TAB. 4.1Trafność, 30 dnialarmy · prawdziwe · fałszywe · bez rozstrzygnięcia

Trafności jeszcze nie liczymy: zamknięcie subtaska nie niesie dziś werdyktu (prawdziwy / fałszywy / nie dało się sprawdzić). Cztery liczby pojawią się, gdy każde zamknięcie dostanie werdykt — to warunek startu pętli 1.

TAB. 4.2Pętle2 · zmian: 2 · wpływających na cały system: 2
Status BLOKADA: zbanowane IP monitoringuzamknięta historyczna 2026-07-19

Sygnał: Strona wisiała na DOWN, choć działała: hosting klienta zbanował IP serwera monitoringu (SYN porzucany, nie odrzucany) po serii automatycznych odpytań. · dotyczy też: Kod odpowiedzi HTTP, SSL: ważność certyfikatu

  1. 1. Zbiórkaręcznieodczyt z nocnego skanu, bez zapisu per strona
  2. 2. Werdyktręczniedostępność potwierdzona z innych lokalizacji
  3. 3. Miarabrakliczników trafności wtedy nie było
  4. 4. Kartabrakkarta parametru powstała 2026-09-16
  5. 5. Zmianazrobionezewnętrzny cross-check i nowy status strony
  6. 6. Replaybrakbrak zapisanych odczytów do replayu
DataZmianaPowódWpływ na systemCommit · replay
2026-07-19Timeout TCP/HTTP z naszego serwera sprawdzany z zewnątrz; odpowiedź z innych lokalizacji = status BLOKADA zamiast DOWN.helpers/network_block_check.py · helpers/site_params.pyBlokada sieciowa monitoringu to inny mechanizm niż blokada UA — działa poniżej HTTP.cały system Nowy status strony w kolejności pierwszeństwa, nad DOWN — zmienia status każdej strony, nie tylko tego parametru.8c0c0c6bez replayubez zapisu zatwierdzenia
Status CONFIG: działa tylko jedna forma adresuzamknięta historyczna 2026-08-04

Sygnał: Adres bez www odpowiadał 200, a forma z www miała certyfikat samopodpisany — silnik eskalował to do DOWN. · dotyczy też: Rozwiązywanie DNS, Kod odpowiedzi HTTP, SSL: ważność certyfikatu, Przekierowanie www ↔ bez www

  1. 1. Zbiórkaręcznieodczyt z nocnego skanu, bez zapisu per strona
  2. 2. Werdyktręcznieużytkownicy widzą sprawną stronę, więc alarm był fałszywy
  3. 3. Miarabrakliczników trafności wtedy nie było
  4. 4. Kartabrakkarta parametru powstała 2026-09-16
  5. 5. Zmianazrobionesprawdzenie częściowej dostępności i status CONFIG
  6. 6. Replaybrakbrak zapisanych odczytów do replayu
DataZmianaPowódWpływ na systemCommit · replay
2026-08-04Częściowa dostępność (jedna forma 200, druga zepsuta) daje status CONFIG, który bije DOWN.helpers/site_params.py · helpers/partial_availability_check.pyBłąd konfiguracji do naprawy to nie awaria; realny DOWN zostaje, gdy nie odpowiada żadna forma.cały system Nowy status strony nad DOWN; dotyczy wszystkich sprawdzeń krytycznych (tcp, dns, http, ssl).091e318bez replayubez zapisu zatwierdzenia
Blog 24/7
20.09Zastrzeżony PESEL: zmiana raz na 30 minut, blokada przy wypłaciedobreprogramy.pl20.09Fałszywe SMS-y od GITD o mandacie za autostradę wyłudzają dane kartyinstalki.pl20.09Pakiet npm indexed-btree omija blokadę skryptów instalacyjnychbleepingcomputer.com19.09SolarWinds łata CVE-2026-28326 w Access Rights Manager, zdalny kod bez logowaniathehackernews.com19.09Orkes Conductor: luka CVE-2026-58138 atakowana w sieci, poprawka w wersji 3.30.2thehackernews.com19.09Trzy luki jądra Linux w katalogu CISA KEV, Red Hat potwierdza aktywne atakithehackernews.com18.09Publiczne exploity na cztery luki jądra Linux dają lokalnie uprawnienia rootthehackernews.com18.09Brevo: skradziony klucz API Cloudflare i skrypty ClickFix na stronach klientówbleepingcomputer.com18.09WaterPlum z Korei Północnej zainfekowała 30 000 urządzeń w 100 krajachtherecord.media18.09Jedna zgoda OAuth daje napastnikowi dostęp do poczty i plików mimo MFAdarkreading.com