Ping

**Ping** komandoa bi urrutiko bi konputagailuren artean konexioa egiaztatzen duen baliabide bat da, zeinak oihartzun eskaerako paketeak (ICMP protokoloan definiturik daudenak) bidaltzen dizkion urrutiko konputagailuari eta urrutiko konputagailuak eskaera horiei erantzuten die. Honek IP sistema bat sare batean atzigarri dagoen edo ez egiaztatzen du. IP bideratzaileetan edota sareetan erroreak antzemateko baliagarria da.

Askotan ping komandoa bi urrutiko konputagailuren artean dagoen latentzia neurtzeko erabiltzen da. Horregatik sarearteko bideo-joko zaleek **PING** terminoa erabiltzen dute beren konexioaren latentzia adierazteko.

Badago komandoaren beste mota bat, **Ping ATM**, zeina ATM sareetan erabiltzen den (hauetako bat ADSL izan daiteke) eta kasu honetan, transmititutako tramak ATM dira (OSI egituraren bigarren mailan). Pakete mota hauek ATM loturan zuzenki definiturik dauden probatzeko bidaltzen dira.

## Ping komandoaren erabilera datuen transferentzia egiaztatzeko 
Ping komandoa orokorrean sare bateko bi konputagailuren arteko konexioa egiaztatzeko erabiltzen da. Ping egiteko honakoa tekleatu behar dugu komando lerroan: **ping + beste_konputagailuaren_IPa**

Adibidez:

Windows-en:
thumb|600px|ezkerrera

Linux-en:

```
herlitzcorp@admin:/$ ping 192.168.1.1
PING 192.168.1.1 (192.168.1.1) 56(84) bytes of data.
64 bytes from 192.168.1.1: icmp_seq=1 ttl=64 time=0.219 ms
64 bytes from 192.168.1.1: icmp_seq=2 ttl=64 time=0.187 ms
64 bytes from 192.168.1.1: icmp_seq=3 ttl=64 time=0.178 ms
64 bytes from 192.168.1.1: icmp_seq=4 ttl=64 time=0.167 ms
64 bytes from 192.168.1.1: icmp_seq=5 ttl=64 time=0.168 ms
64 bytes from 192.168.1.1: icmp_seq=6 ttl=64 time=0.186 ms

--- 192.168.1.1 ping statistics ---
6 packets transmitted, 6 received, 0% packet loss, time 4999ms
rtt min/avg/max/mdev = 0.167/0.184/0.219/0.019 ms
herlitzcorp@admin:/$
```

Pantailan txosten bat agertzen da bidalitako paketeen tamaina bytetan eta hauek itzultzen zenbat denbora ematen duten adierazten duena.

Probaren amaieran laburpen bat bistaratzen da honek eman dituen emaitzekin.

Ping komandoaren deia berdin egiten da Windows zein Linux-en, baina bere argumentuen idazkeran desberdintzen da.

•**Windows-entzat honako parametro hauek daude:**

```
ping [-t] [-a] [-n zenbatekoa] [-l tamaina] [-f] [-i TTL] [-v TOS] [-r zenbatekoa] [-s zenbatekoa]
[[-j host-zerrenda] | [-k host-zerrenda]] [-w itxarote-denbora] helburuaren izena
```

**Aukerak:**

```
-t                     Adierazitako makinari Ping egiten dio gelditu arte.
                        Bitartean emaitzak ikusteko eta jarraitzeko –Ctrl+Enter,                
                        gelditzeko – Ctrl+C.
 -a                     Host izenetik helbidea lortzeko.
 -n kopurua             Oihartzun eskaera kopurua.
 -l tamaina             Bufferraren tamaina bidaltzeko.
 -f                     Paketeak ez fragmentatzeko adierazlea aktibatu.
 -i TTL                 Bizi iraupena (Time to Leave).
 -v TOS                 Zerbitzu mota.
 -r kopurua             Erregistroaren ibilbidea, jauzien kontaketarako.
 -s kopurua             Ordu zigilua jauzien kontaketarako.
 -j host-zerrenda       Jatorriko ibilbidea eskeintzen du host zerrendan zehar.
 -k host-zerrenda       Host zerrendari jatorriko ibilbidea galarazten dio.
 -w itxarote-denbora    Erantzunaren zain emandako itxarote-denbora (milisegundotan).
```

•**Parametroak Linux-en**:

```
ping -s [-d] [-l aurrekarga] [-L] [-n] [-r] [-R] [-v] [ -i interfaze_helbidea ] [-I itxarote-denbora]
[-t ttl] host [pakete-tamaina] [kopurua]
```

**Aukerak Linux-en**:

```
-d      SO_DEBUG aukera aktibatzen du erabilitako socket-an.

    -l      Aukera hau erabili IP goiburukoan emandako host-ari paketea bidaltzeko eta honek bueltan   
            itzultzeko.   
 
    -I itxarote-denbora
	    Adierazitako denbora kopurua itxaroten du (segundotan) paketeen bidaltzeen artean. 
            Defektuz segundo bat itxoiten du. –f aukerarekin bateraezina da.

    -L      Multicast paketeen loopback-a desaktibatzen du. 
           
    -n      Zenbakizko irteera soilik. Ez da saiakerarik egiten zerbitzariaren izen sinbolikoak  
            bilatzeko.

    pakete-tamaina
            Datu kopurua adierazten du (bytetan). Defektuzko kopurua 56 da, zeinak 64 byte izatera 
            pasatzen diren ICMP goiburukoa gehitzen zaienean. 

    -q      Irteera mutua. Ez da informaziorik pantailaratzen, soilik laburpen lerroak komandoa 
            hasieratzean etab ukatzean.

    -R      Ibilbide erregistroa. RECORD_ROUTE aukera barneratzen du ECHO_REQUEST eskaera paketean 
            eta bueltatutako paketeei dagokien ibilbide bufferra pantailaratzen du,. IP goiburukoak 
            soilik mota honetako bederatzi ibilbide barneratu ditzake. Zerbitzari askok aukera hau 
            alde batera uzten dute.

    -r      Bideratze taulei ezikusi egiten die eta datuak zuzenean sare lokalari konektatutako sare 
            batean dagoen konputagailu bati bidaltzen dizkio. Baldin eta ordenagailu hartzailea ez 
            badago konexio zuzena duen sare batean, errore bat itzultzen du. Aukera hau ordenagailu 
            lokal bati ping egiteko erabil daiteke, ordenagailu hartzaile hau bere ibilbideetako 
            baten barnean ez duen interfaze bat erabiliz. 
    
    -t TTL  
            IP paketeei erabiltzaileak adierazitako Time to Leave esleitzen die. 

    -v      
	    Pantailaratutako informazioa zabaltzen du. ECHO_RESPONSE ez diren jasotako ICMP paketeak 
            ere pantailaratzen dira.
```

Informazio gehiago lortzeko $ man ping komandoa erabiliko dugu.

## Ping komandoaren jatorria 
Ping komandoaren jatorria urpekontziak eta bere sonarrak dira. Oztoporen bat baldin bazegoen jakiteko, soinu-seinale bat bidaltzen zuten. Hau itzultzen bazen, oztoporen bat zegoen seinale zen. Berez, oztopoarekiko distantzia ere neur zezaketen, seinaleak itzultzen tardatzen zuenaren arabera (uhina igorri egiten da, zerbaitek aurrera jarraitzea eragozten dio eta talkaren arabera itzultzen da, oztopoak duen posizioa adieraziz).

Hau da ere ping komandoak erabiltzen duen filosofia, konputagailu bat zein urrun dagoen jakin dezakegu TTL-ak begiratuz.

## Ikus, gainera 
* IP
* ICMP
* OSI
## Kanpo estekak 
*  TCP/IP-ri buruzko liburua