PING(8) | System Manager's Manual | PING(8) |
NÉV¶
ping
—
VÁZLAT¶
ping
[-dfnqrvR
]
[-c
(számláló)]
[-i
(várakozás)]
[-l
(előterhelés)]
[-p
(mintázat)]
[-s
(csomagméret)]
LEÍRÁS¶
Aping
ICMP (hálózatközi
vezérlőüzenet protokol) kötelező
ECHO_REQUEST (visszhang-kérés) datagramot küld
azért, hogy egy ICMP ECHO_RESPONSE (visszhang-válasz)
válaszcsomagot kapjon egy géptől vagy
átjárótól. Az ECHO_REQUEST datagramok
(``ping''-ek) egy IP és egy ICMP fejléccel rendelkeznek, amit
egy “struct timeval” késés követ, majd
tetszőleges számú kitöltő ``pad'' byte ami
megtölti a csomagot.
-c
számláló- A program leállása számláló ECHO_RESPONSE csomag fogadása után.
-d
- Beállítja a
SO_DEBUG
(hibakeresési) opciót a használt csatlakozóponton (socket-en). -f
- Elárasztó (flooding) ping. A kimenő csomagok olyan gyorsak, hogy vagy másodpercenként százszor, vagy a visszaérkezés után azonnal indulnak, amelyik gyorsabb. Minden egyes elküldött ECHO_REQUEST után egy pont ``.'' jelenik meg, és minden kapott ECHO_REPLY után egy visszatörlés (backspace). Ez gyorsan láthatóvá teszi, hogy hány csomag veszett el. Ezt az opciót csak a szuper-felhasználó használhatja. Figyelmeztetés: ez komoly hálózat terhelést okoz, és csak fokozott óvatossággal használható.
-i
várakozás- Minden csomag között
várakozás másodpercnyi
várakozás. Az alapértelmezett egy
másodpercnyi várakozás minden csomag
között. Ez az opció összeférhetetlen az
-f
opcióval. -l
előterhelés- Ha az előterhelés opciót
megadjuk, a
ping
először ennyi csomagot küld, amilyen gyorsan csak lehetséges, mielőtt visszatérne normál működési állapotába. Ezt az opciót csak a szuper-felhasználó használhatja. -n
- Csak számjegyes kijelzés. Nem történik kísérlet a gépek címeihez tartozó szimbolikus nevek visszakeresésére.
-p
mintázat- Meghatározható legfeljebb 16 kitöltő, ``pad''
byte a küldött csomag kitöltéséhez. Ez
akkor hasznos, ha a hálózat adatfüggő
problémáit szeretnénk diagnosztizálni.
Például, a “
-p ff
” hatására a küldött csomag csupa egyessel lesz kitöltve. -q
- Csöndes kijelzés. Semmi sem íródik ki, csak az összegző sor induláskor és befejezéskor.
-R
- Útvonal feljegyzés. Tartalmazza a RECORD_ROUTE opciót az ECHO_REQUEST csomagban és a visszatérő csomagokban lévő útvonal puffert megjeleníti. Megjegyzendő, hogy az IP fejlécbe csak kilenc ilyen útvonal fér bele. Sok gép nem veszi figyelembe, vagy eldobja ezt az opciót.
-r
- Kikerüli a rendes útvonal választó táblázatot és közvetlenül a csatolt hálózat gépének küld. Hibajelzés érkezik, ha a gép nem a közvetlenül csatolt hálózaton található. Ez az opció akkor használható, ha egy helyi gépet szeretnénk pingelni egy olyan csatolón keresztül, aminek nincs közvetlen útvonala felé (például miután a csatolót eldobta a routed(8)).
-s
csomagméret- Az elküldendő adatbájtok számát határozza meg. Az alapértelmezett 56, ami 64 ICMP adatbájtra módosul, amikor az ICMP 8 bájtos fejléce hozzáadódik.
-v
- Bőbeszédű kimenet. Minden fogadott ICMP csomag, ami nem ECHO_RESPONSE kiíródik.
Amikor a ping
segítségével hibát keresünk,
először mindig a saját gépet kell
ellenőrizni, hogy a helyi hálózati csatoló
jól működik. Utána egyre távolabbi
gépeket és átjárókat kell ``pingelni''. A
program a válaszidők és a csomag veszteségek
statisztikáját kiszámolja. Ha kettőzött
csomagok érkeznek, azokat nem számolja bele a
csomagveszteségi statisztikába, habár ezen csomagok
válaszidejét használja a minimum/átlag/maximum
válaszidő kiszámításához. Amikor a
meghatározott darabszámú csomagot elküldte
(és megkapta), vagy SIGINT
hatására megszakad a program futása, egy rövid
összegzést ír ki.
Ha a ping
nem kap egyetlen
válaszcsomagot sem, 1-es kilépési kódot
eredményez. Hiba esetén 2-es, egyébként
0-ás kóddal lép ki. Ezért a
kilépési kód használható annak
megállapítására, hogy egy gép
``él'' vagy sem.
Ezen programot a hálózat
ellenőrzésére, mérésére és
menedzselésére szánták. A terhelés miatt,
amit a hálózaton okoz, nem tanácsos a
ping
használata normál
működés során, vagy automatikus
parancsfájlokban.
AZ ICMP CSOMAG RÉSZLETEI¶
Egy IP fejléc opciók nélkül 20 byte hosszú. Egy ICMP ECHO_REQUEST csomag ezenkívül tartalmaz egy 8 bájtos ICMP fejlécet, amit tetszőleges mennyiségű adat követ. Amikor a csomagméretet megadjuk, ezt a többlet adatmennyiséget határozzuk meg (az alapértelmezett 56). Tehát az IP csomag belsejében kapott ICMP ECHO_REPLY típusú adat mennyisége mindig 8 bájttal (az ICMP fejléccel) több lesz, mint az kért adatmennyiség.Ha ez az adatmennyiség legalább 8 byte
hosszú, a ping
ennek az első nyolc
bájtját használja arra, hogy időjelzést
tegyen bele, amit a visszatérési idő
kiszámítására használ. Ha kevesebb, mint
nyolc kitöltő bájtot határozunk meg, akkor a
visszatérési időket nem adja meg.
KÉTSZEREZETT ÉS SÉRÜLT CSOMAGOK¶
APing
jelez minden megkétszerezett és
sérült csomagot. Kétszerezett csomagnak normális
esetben nem lenne szabad előfordulnia, és úgy
tűnik, hogy hibás link-szintű
újraküldések okozzák. A
kétszereződések sok helyzetben előfordulhatnak,
és habár ritkán, (vagy sosem) jelentenek jót, az
alacsony szintű kettőződések
előfordulása nem minden esetben ad okot a riadalomra.
A sérült csomagok feltétlenül
riasztó jelek, és a ping
csomag
útjában (a hálózaton vagy a gépeken)
hibás hardvert jeleznek.
KÜLÖNBÖZŐ ADATMINTÁZATOK KIPRÓBÁLÁSA¶
A hálózat(között)i réteg sohasem kezelheti a csomagokat eltérően, az adatrészükben tartalmazott adatoktól függően. De sajnos, adatfüggő problémák osonhatnak be a hálózatokba, amik ott hosszú ideig felfedezetlenek maradhatnak. Sok esetben az a különös mintázat, amivel a probléma van olyan, amiben nincs elég ``átmenet'', mint pl. a csak nullák, csak egyesek, vagy olyan minta, ami ehhez közelít, mint pl. a majdnem csak nullák. Nem feltétlenül elégséges, ha a parancssorban olyan adatmintázatot határozunk meg, ami (például) csak nullákból áll, mivel az adatkapcsolati szinten lévő mintázat számít, és a kapcsolat a parancssorba beírt adat és a vezérlő által továbbított adat között igen bonyolult lehet.Ez azt jelenti, hogy ha adatfüggő
problémát kell keresni, valószínűleg igen
sokat kell próbálgatni hogy megtaláljuk. Ha
szerencsénk van, található egy olyan fájl, ami
vagy nem megy át a hálózaton, vagy az átvitele
sokkal tovább tart, mint a hasonló
hosszúságú fájloké. Akkor ebben a
fájlban lehet olyan ismétlődő
mintázatokat keresni, amit ki lehet próbálni a
ping
-p
opciójával.
TTL RÉSZLETEI¶
Egy IP csomag TTL értéke jelzi az IP útvonalválasztók maximális számát, amin a csomag keresztül tud menni, mielőtt eldobják. A jelenlegi gyakorlat szerint az Interneten minden útvonalválasztótól az várható, hogy a TTL mezőt pontosan eggyel csökkenti.A TCP/IP specifikációja szerint a TTL mezőt a TCP csomagoknál 60-ra kell állítani, de sok rendszer kisebb értékeket használ ( a BSD 4.3 30-at, a 4.2 15-öt használt).
Ennek a mezőnek a lehetséges legnagyobb értéke 255, és a legtöbb Unix rendszer az ICMP ECHO_REQUEST csomagokban a TTL mezőt 255-re állítja. Ezért van az, hogy néhány gép ``ping''-elhető, de nem érhető el telnet(1) -tel vagy ftp(1) -vel.
Normális működés esetén a ping a megkapott csomagok TTL értékét kiírja. Amikor a távoli rendszer megkapja a ping csomagot, a következő három dolog valamelyikét teheti a TTL mezővel a válaszában:
- Nem változtatja; ez az, amit a Berkeley Unix rendszerek csináltak a 4.3BSD-Tahoe változat előtt. Ebben az esetben a TTL értéke a megkapott csomagban 255 minusz az oda-vissza úton érintett útvonalválasztók száma lesz.
- Beállítja 255-re; ez az, amit a jelenlegi Berkeley Unix rendszerek tesznek. Ebben az esetben a TTL értéke a kapott csomagban 255 minusz az útvonalválasztók száma lesz a távoli rendszer felől a pingelő gép irányában.
- Valami más értékre állítja. Néhány gép ugyanazt az értéket használja az ICMP csomagok számára, mint amit a TCP csomagok esetében, például 30-at vagy 60-at. Egyebek használhatnak teljesen vad értékeket.
HIBÁK¶
Sok gép és átjáró figyelmen kívül hagyja a RECORD_ROUTE opciót.Az IP fejléc maximális hossza túl kicsi ahhoz, hogy az olyan opciók, mint a RECORD_ROUTE teljesen hasznosak lehessenek. Ezzel azonban nem sokat lehet tenni.
Az elárasztó pingelés általában nem ajánlott, az üzenetszórási címnek az elárasztó pingelése pedig csak nagyon ellenőrzött körülmények között végezhető.
LÁSD MÉG¶
netstat(1), ifconfig(8), routed(8)TÖRTÉNETE¶
Aping
parancs először a
4.3BSD rendszerben jelent meg.
MAGYAR FORDÍTÁS¶
Bozsér Zoltán <ZOLTAN.BOZSER@hun.conoco.com>August 30, 1996 | Linux NetKit 0.09 |