Portál AbcLinuxu, 9. května 2025 23:17

Dotaz: TCP ping v Pythonu ?

6.4.2008 12:22 amnesiac
TCP ping v Pythonu ?
Přečteno: 571×
Odpovědět | Admin
Roste k tomu někde hotový modul ? Mezi základníma knihovnama ani na PyPI jsem nic nenašel :-( Hledám něco jako Net::Ping z Perlu.

Předem dík za tipy.

Nástroje: Začni sledovat (1) ?Zašle upozornění na váš email při vložení nového komentáře.

Odpovědi

6.4.2008 12:23 Michal Kubeček | skóre: 72 | Luštěnice
Rozbalit Rozbalit vše Re: TCP ping v Pythonu ?
Odpovědět | | Sbalit | Link | Blokovat | Admin
Co byste si konkrétně pod "TCP ping" představoval?
6.4.2008 22:18 Devilkin | skóre: 17 | blog: domecek | Zlín
Rozbalit Rozbalit vše Re: TCP ping v Pythonu ?
:-)

Každý má právo na nějaký ten "překlep".

Ale k odpovědi tazateli.

Našel jsem tohle: ping.tar.gz, ale nezkoušel jsem. Našel jsem to, když jsem hledal něco jiného :-).
6.4.2008 22:33 amnesiac
Rozbalit Rozbalit vše Re: TCP ping v Pythonu ?
Díky, ale to je implementace ICMP pingu což není to co hledám ;-)
6.4.2008 23:08 Devilkin | skóre: 17 | blog: domecek | Zlín
Rozbalit Rozbalit vše Re: TCP ping v Pythonu ?
Aha, takže žádný překlep ;-).

Tak to promiň, já myslel, že jsi se špatně vyjádřil.
6.4.2008 22:30 amnesiac
Rozbalit Rozbalit vše Re: TCP ping v Pythonu ?
Chtěl bych použít ping k otestování jestli běží vzdálený stroj. TCP pingem se rozumí připojení na port č. 7 (echo) přes protokol TCP/IP. Na rozdíl od ICMP pingu nejsou potřeba rootvská práva.
Luboš Doležel (Doli) avatar 6.4.2008 22:39 Luboš Doležel (Doli) | skóre: 98 | blog: Doliho blog | Kladensko
Rozbalit Rozbalit vše Re: TCP ping v Pythonu ?
To jednak předpokládá, že druhá strana nemá echo zavřené na firewallu, a zadruhé na to nepotřebujete nic extra. Prostě se na ten port pokusíte připojit a zanalyzujete výsledek.
6.4.2008 22:48 Michal Kubeček | skóre: 72 | Luštěnice
Rozbalit Rozbalit vše Re: TCP ping v Pythonu ?
To jednak předpokládá, že druhá strana nemá echo zavřené na firewallu

...a také že tam ta služba vůbec poběží. Což je dnes oboje docela silný předpoklad.

Luboš Doležel (Doli) avatar 6.4.2008 23:27 Luboš Doležel (Doli) | skóre: 98 | blog: Doliho blog | Kladensko
Rozbalit Rozbalit vše Re: TCP ping v Pythonu ?
Narážel jsem na firewall, protože pokud by byl port alespoň otevřený, mohlo by to za funkčnost stroje považovat ten RST, co by následoval.
6.4.2008 23:29 azurIt | skóre: 34 | blog: zatial_bez_mena
Rozbalit Rozbalit vše Re: TCP ping v Pythonu ?
sluzba nemusi bezat na to, aby si zistil, ci bezi stroj - staci, ak ten port nie je filtrovany (nikde po ceste ani v cieli). ak sluzba nie je spustena (a plati prvy predpoklad), dostanes 'connection refused', tzn. stroj bezi.
6.4.2008 23:43 Michal Kubeček | skóre: 72 | Luštěnice
Rozbalit Rozbalit vše Re: TCP ping v Pythonu ?
Musel bych si vyzkoušet, jestli to opravdu poznáte. Tedy jestli na aplikační úrovni odlišíte ICMP message "port unreachable", TCP odpověď s RST příznakem a ICMP message "host unreachable" (nebo rovnou "network unreachable"). Ruku do ohně bych za to určitě nedal.
7.4.2008 11:18 azurIt | skóre: 34 | blog: zatial_bez_mena
Rozbalit Rozbalit vše Re: TCP ping v Pythonu ?
nemusis nic rozlisovat, urobit to za teba OS a ty uz dostanes len chybovu spravu.
7.4.2008 12:49 Michal Kubeček | skóre: 72 | Luštěnice
Rozbalit Rozbalit vše Re: TCP ping v Pythonu ?
No právě. Jde o to, jestli podle errno poznám, který z těch případů nastal. Co jsem se díval do manuálové stránky ke connect(), tak to vypadá, že spíš ne.

Založit nové vláknoNahoru

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.