Verkon vianhaku
Seuraavassa käymme läpi muutamia verkon kartoittamista helpottavia komentoja. Komentoja voi käyttää mm. vikojen etsintään ja tehtyjen asetusten (kuten TCP/IP tutkimisessa) selvittämiseen. Tehtävissä olevat komennot suoritetaan komentorivitilassa (ns. DOS-tila). Toiminnot edellyttävät verkkoyhteyttä.
HUOM! Kun kokeilet alla olevia toimintoja niin huomaa, että osa komennoista toimii vain tiettyjen käyttöjärjestelmien tietyissä versioissa!
1. IPConfig
Idea
IPConfig-ohjelma (Windows 95/98:ssä WinIPCfg) kertoo voimassa olevat TCP/IP-asetukset.
Hyöty
Ohjelman avulla voidaan todentaa, että manuaalisesti tehdyt asetukset ovat
tulleet voimaan. Jos tietokone lainaa IP-osoitteen DHCP-palvelimelta (Dynamic
Host Configuration Protocol), ohjelman avulla voidaan todentaa, onko kone
todellakin saanut osoitteen palvelimelta ja mikä osoite on.
Toiminnot (kokeile)
Kirjoita |
Selitys |
ipconfig | Ilman optiota IPConfig kertoo IP-osoitteen, aliverkon peitteen ja oletuksena olevan reitittimen osoitteen. |
ipconfig/all | Näyttää enemmän tietoja, kuten WINS- ja DNS-palvelimien osoitteet sekä verkkosovittimiin upotetut fyysiset osoitteet. Jos osoite on lainassa DHCP-palvelimelta, ohjelma näyttää myös DHCP-palvelimen IP-osoitteen sekä ajankohdan, johon asti laina on voimassa. |
ipconfig/release | Palauttaa koneen kaikkien verkkorajapintojen lainatut IP-osoitteet takaisin DHCP-palvelimelle. |
ipconfig/renew | Lähettää yhteyspyynnön DHCP-palvelimelle uusien IP-osoitteiden saamiseksi. |
Alla olevasta kuvasta näkyy ipconfig-komennon antama koneen IP-osoite, aliverkon peite ja yhdyskäytävän IP-osoite.
2. Ping (Packet Internet Groper)
Idea
Ping-ohjelmaa käytetään selvittämään, onko isäntäkone valmiina ottamaan vastaan
ja lähettämään datagrammeja toisen koneen kanssa.
Hyöty
Jos yhteys Pingin kautta onnistuu, voidaan päätellä, että tietyt
TCP/IP-asetukset ovat oikein ja verkko on tältä osin toimiva. Siitä ei
kuitenkaan voida päätellä, että TCP/IP olisi konfiguroitu oikein koko verkossa.
Sitä varten on tehtävä useita Ping-kokeita käyttäen paikallisia ja etäyhteyksiä.
Jos Ping toimii oikein, voidaan lähes täysin sulkea pois verkkokerroksen,
sovittimen, kaapeloinnin ja jopa reitittimen ongelmat. Ping lähettää
datagrammeja tietylle isäntäkoneelle käyttäen ICMP-kaiutuskomentoa.
Ping tulostaa tilastoja, kuten kadonneiden datagrammien lukumäärän ja vastauksen saapumiseen kuluneen ajan millisekunteina. Windows NT:ssä oletuksena on, että Ping-lähettää 4 kaiutuspyyntöä. Kaiken toimiessa oikein vastauksia tulee 4.Ping näyttää myös TTL-arvon (Time to Live), joka kertoo kuinka monen reitittimen läpi datagrammi voisi vielä kulkea ennen kuin se hylättäisiin. Jos vastauksena tulleen datagrammin TTL-arvo on esimerkiksi 119, voidaan arvata, että sen alkuarvo on ollut 128 paketin lähtiessä lähetettävästä koneesta. Vähennyslaskulla 129-119 saadaan selville, että lähettävä kone on 9 reititinhypyn päässä.
Ennen Pingin käyttämistä ajetaan IPConfig-ohjelma, jotta saadaan selville koneen ja oletusreitittimen IP-osoitteet.
Toiminnot (kokeile)
Kirjoita |
Selitys |
ping 127.0.0.1 | Testataan yhteyttä paikallisen koneen IP-ohjelmistoon. Ping-ohjelma ei tarvitse tässä tapauksessa verkkoa. Komennon epäonnistuminen on merkki väärin asennetusta tai väärin toimivasta TCP/IP-ohjelmistosta. Komento toimii, vaikka kaapeli olisikin irti. |
ping oman koneen IP-osoite | Komento on osoitettu oman koneen IP-osoitteeseen. Sen tulisi toimia aina. Epäonnistuminen on merkki ongelmista asennuksessa tai toiminnassa. Jos se alkaa toimia kytkettäessä verkkokaapeli omaan koneeseen, syynä saattaa olla, että jollekin toiselle koneelle on annettu sama IP-osoite. Komento toimii, vaikka kaapeli olisikin irti. |
ping oletusreitittimen IP-osoite | Komennon avulla kokeillaan yhteys oletusreitittimeen. Onnistuminen kertoo, että reititin on toiminnassa. |
ping isäntäkoneen nimi | Komennon seurauksena verkko yrittää selvittää nimeä vastaavan IP-osoitteen ennen varsinaisen pyynnön lähettämistä. Epäonnistuminen kertoo ongelmista nimipalvelun toiminnassa tai Hosts-tiedostossa. |
ping etäkoneen IP-osoite tai toimialueen nimi (esim. www.ifi.fi). | Neljä vastausta kertoo kertoo onnistuneesta yhteydestä oletusreitittimen kautta (ellei Route-komennon avulla ole valittu tiettyä reititintä). |
ping localhost | Paikalliselle koneelle on varattu nimi localhost. Jokaisen tietokoneen on muunnettava tämä nimi osoitteeksi 127.0.0.1. Epäonnistuminen kertoo ongelmasta Hosts-tiedostossa. |
ping nic.funet.fi (esimerkki) | Komennon suorittaminen edellyttää ensin nimen muuttamista IP-osoitteeksi DNS-palvelimella. Epäonnstuminen saattaa johtua väärin konfiguroiduista IP-osoitetiedoista DNS-palvelimessa. |
ping IP-osoite -t | Optiolla -t Ping suorittaa komentoa, kunnes se keskeytetään, tavallisesti Ctrl-C:llä. |
ping IP-osoite -n 10 | Suorittaa Ping-komentoa tietyn määrän, esimerkissä 10 kertaa. |
Alla olevasta kuvasta näkyy ping-komento, jossa testataan yhteys okol.osakk.fi -palvelimelle.
3. ARP (Address Resolution Protocol)
Idea
ARP on keskeinen TCP/IP-protokolla. Sen tehtävänä on määritellä IP-osoitetta
vastaava fyysinen osoite.
Hyöty
ARP-komennon avulla voi tutkia paikallisen tai etäkoneen ARP-välimuistin sen
hetkistä sisältöä. Lisäksi komennon avulla voi lisätä pysyvästi välimuistiin
osoitetietueita, joissa on fyysinen ja IP-osoite. Liikenteen vähentämiseksi
muistiin saattaa olla tarpeen lisätä usein käytettyjä osoitteita kuten
oletusreitittimet tai paikalliset palvelimet. Oletusarvona, että ARP-välimuistin
sisältö on muuttuva. Tietueita lisätään sitä mukaa, kun datagrammeja lähetetään
osoitteisiin, joista ei ole ennestään tietuetta muistissa.
Tietueet alkavat vanheta heti käytön jälkeen. Esimerkiksi Windows NT:ssä tietue vanhenee 2-10 minuutissa, jos sitä ei ole käytetty uudelleen luomisen jälkeen. Näin ollen ei kannata hämmästyä, josa ARP-välimuistissa on vain muutama osoite tai muisti on kokonaan tyhjä Tietueita voidaan lisätä muistiin Pingin avulla.
Toiminnot (kokeile)
Kirjoita |
Selitys |
arp -a | Näyttää kaikki välimuistissa olevat osoitetietueet (NT) |
arp -g | Näyttää kaikki välimuistissa olevat osoitetietueet (UNIX ja NT) |
arp -a ja IP-osoite | Käytetään, kun koneessa on useita verkkosovittimia. Parametriksi annetaan sovittimen IP-osoite, jolloin komento näyttää tähän sovittimeen liittyvän ARP-välimuistin. |
arp -s ja IP-osoite ja fyysinen osoite | Sijoittaa osoiteparin
pysyvästi ARP-välimuistiin. Tieto säilyy koneen sammuttamisen yli ja se
päivittyy automaattisesti, jos manuaalisesti konfiguroiduista fyysisistä
osoitteista aiheutuu virheitä. Esimerkiksi IP-osoitteeseen 192.59.66.250
liitetään fyysinen osoite* 008C7EO7EC5
komennolla: arp -s 192.59.66.250 008C7EO7EC5 |
arp -g ja IP-osoite | Poistaa pysyvästi tietueen
välimuistista. Esimerkiksi edellinen tietue poistetaan välimuistista
komennolla: arp -s 192.59.66.250 |
arp -d IP-osoite | Poistaa välimuistissa olevat IP-osoitteet. |
* Valmistajan toimesta verkon laitteisiin kiinteästi annettu yksilöllinen laiteosoite. Osoitteen avulla laite tunnistetaan verkossa.Vrt. MAC-osoite eli yksikäsitteinen 48-bittinen tunnusnumero, jonka valmistaja on antanut verkkokortille. Fyysistä MAC-osoitetta käytetään TCP/IP-verkon tietoliikenteen kartoittamiseen.
Alla olevasta kuvasta näkyy arp -a -komento.
4. TraceRoute
Idea
TraRoute-ohjelmaa käytetään jäljittämään reitti (polku), jota pitkin
datagrammit vaeltavat omasta tietokoneesta määränpäähänsä. Ohjelman ilmoittama
reitti on vain yksi mahdollisista vaihtoehdoista eli ei ole mitään takeita
siitä, että datagrammit kulkisivat samaan tietä seuraavalla kerralla.
Hyöty
TraceRoute on hyödyllinen selvitettäessä datagrammin kulkureittiä ja sitä,
kuinka monta reititintä datagrammin on läpäistävä päästäkseen päämääräänsä.
Komentoa voi käyttää myös vian paikantamiseen. Jos esimerkiksi Internet-yhteydet
eivät toimi, voit selvittää komennolla traceroute IP-osoite, missä vika piilee.
Suuressa organisaatiossa reitti kulkee ensin useiden reitittimien sekä
palomuurin lävitse Internetiin. Mahdollinen vikapaikka on kohta, jossa
TraceRoute ei enää kykene antamaan tietoja.
Toiminnot (kokeile)
Kirjoita |
Selitys |
traceroute IP-osoite | Toimii UNIX-koneissa. |
tracert IP-osoite | Toimiin Microsoftin käyttöjärjestelmissä. |
Alla olevassa kuvassa näkyy tracert-komento, jossa jäljitetään yhteys palvelimeen okol.osakk.fi.
5. Route
Idea
Useimmat tietokoneet sijaitsevat segmenteissä, joihin on kytketty vain yksi
reititin. Silloin ei ole vaihtoehtoja, mitä reittiä datagrammit lähtevät
etäkoneelle. Reitittimien IP-osoite voidaan asettaa oletuksena yhdyskäytäväksi
(default gateway) kaikkiin segmentin koneisiin.
Jos segmenttiin on kytketty sen sijaan kaksi tai useampia reitittimiä, ei haluta käyttää välttämättä vain oletusreititintä. Silloin reititystauluihin on tallennettava reititystietoja. Jokaisella tietokoneella ja reitittimellä on oma reititystaulunsa. Useimmat reitittimet käyttävät erityisiä reititinprotokollia dynaamiseen tietojen vaihtoon näiden taulujen kesken. Joskus on tarpeen kuitenkin asettaa tietoja manuaalisesti sekä tietokoneiden että reitittimien tauluihin.
Hyöty
Käytetään reititystietojen lisäämiseen, poistamiseen ja muuttamiseen. Se
soveltuu myös reititystaulujen pysyvien ja dynaamisten tietojen näyttämiseen.
HUOM! Tällä komennolla lisätyt reititystiedot eivät säily, vaan ne katoavat
koneen sammuttua. Sen vuoksi route-komentoja on usein käynnistysskripteissä.
Toiminnot (kokeile)
Kirjoita |
Selitys |
route print | Komento näyttää reititystaulun sisällön. |
route add | Komennon avulla lisätään
uusi reititystieto reititystauluun. Esimerkiksi komento: route add 205.34.17.0 mask 255.255.255.224 192.59.66.5 metric 5 Tulkinta: Kohdeverkkoon 205.34.17.0 määritellään viiden reitittimen kautta kulkeva reitti alkamaan reitittimestä 192.59.66.5 aliverkon peitteen ollessa 225.225.225.224 |
route change | Muutetaan reititystietoa,
mutta ei kuitenkaan tietojen määränpäätä. Esimerkiksi komento: route change 207.34.17.0 mask 255.255.255.224 192.59.66.7 metric 3 Tulkinta: Muuttaa reitityksen käyttämään toista reititintä, jonka kautta on suorempi kolmen hypyn yhteys vastaanottavaan verkkoon. |
route delete | Poistaa reititystiedon reititystaulusta. Esimerkiksi route delete 207.34.17.0 |
6. Hostname
Idea
Kertoo paikallisen koneen verkkonimen.
Hyöty
Saadaan selville verkkonimi.
Toiminnot (kokeile)
Kirjoita |
Selitys |
hostname | Antaa paikallisen koneen verkkonimen |
7. NetStat
Idea
Tulostaa IP-, TCP-, UDP ja ICMP-protokollista tilastotietoja.
Hyöty
Tulostus sisältää esimerkiksi tietoja lähetettyjen ja vastaanotettujen
datagrammien lukumääristä sekä tietoja erilaisista virhetilanteista.
Toiminnot (kokeile)
Kirjoita |
Selitys |
netstat -s | Tulostaa tilaston protokollittain. Komentoa tarvitaan, jos käyttäjän sovellus, esimerkiksi selain, on epätavallisen hidas tai ei kykene näyttämään WWW-sivuja. Silloin kannattaa tarkastella virheistä kertovia rivejä. Jos virheiden osuus on merkittävä suhteessa vastaanotettuihin IP-paketteihin, on asiaa syytä tutkia tarkemmin. |
netstat -e | Komentoa tulostaa tilaston Ethernetistä. Lista sisältää tiedon tavuista, virheistä, hylkäämisestä, välitetyistä datagrammeista ja yleislähetyksistä. Tilasto kertoo tiedot lähetetyistä ja vastaanotetuista datagrammeista. |
netstat -r | Optio tulostaa tietoja reititystaulusta samaan tapaan kuin route print -komento. Lisäksi se näyttää aktiiviset reitit ja yhteydet. |
netstat -a | Optio näyttää listan aktiivisista yhteyksistä mukaan lukien sekä jo muodostetut että vasta yhteydenottoa odottavat yhteydet. |
netstat -n | Näyttää muodostetut aktiiviset yhteydet. |
netstat -p TCP | Näyttää muodostetut TCP-yhteydet. |
netstat -p UDP | Näyttää muodostetut UDP-yhteydet. |
8. Net Use/View
Idea
Net Use ja Net View -ohjelmien avulla todetaan NetBIOS-yhteys kahden koneen
välillä. NetBIOS-tekniikka tekniikka on pääasiassa Windows-tietokoneille
tarkoitettu menetelmä, jonka avulla koneet löytävät toisensa ja osaavat
kommunikoida keskenään verkossa. NetBIOS käyttää koneiden ja jakopisteiden
tunnistamiseen menetelmää nimeltään Universal Naming Convention (INC). Jakopiste
(share point) on kohta, josta asiakaskoneet voivat ottaa yhteyden
tietokoneeseen, esimerkiksi jaettuun hakemistoon.
UNC-nimet alkavat aina kaksinkertaisella kenoviivalla, jonka jälkeen tulee tietokoneen nimi. Esimerkiksi \\Tiedostopalvelin tarkoittaa palvelinta nimeltä Tiedostopalvelin. Jakopisteen nimi kirjoitetaan siten, että palvelimen nimen jälkeen ensi kenoviiva ja sitten ja sitten jakopisteen nimi. Esimerkiksi UNC-nimi \\Tiedostopalvelin\julkinen tarkoittaa jaettua hakemistoa julkinen palvelimella Tiedostopalvelin.
Hyöty
Net-komentojen avulla voidaan nopeasti tarkistaa toimiiko NetBIOS.
Toiminnot (kokeile)
Kirjoita |
Selitys |
net view | Komennon avulla voi tarkastella palvelimien jakopisteiden nimiä. Jokainen voi käyttää tätä komentoa. Se ei edellytä käyttäjätunnusta ja salasanaa toisin kuin net use -komento. Ensimmäinen testi on antaa net view \\palvelimennimi, josta selviää, onko NetBIOS toiminnassa ja voiko palvelimen kanssa kommunikoida. Jos ne toimivat, tulostuu lista jakopisteiden nimiä. |
net use | Komennon avulla luodaan tai poistetaan kirjaintunnuksen avulla toimiva yhteys jakopisteeseen. Komento saattaa kysyä käyttäjätunnusta ja salasanaa. Esimerkiksi komento net use F:\\Tiedostopalvelin\julkinen luo yhteyden jaettuun hakemistoon, joka on palvelimella Tiedostopalvelin. Sama kirjaintunnus ei saa olla ennestään käytössä. Jos komennon suorittaminen onnistuu, voi sen jälkeen käyttää tätä toisella koneella sijaitsevaa hakemistoa viittaamalla siihen tunnuksella F: |
9. NBTStat
Idea
NBTStat-ohjelma (NetBIOS ovet TCP/IP statistics) antaa tietoja
NetBIOS-järjestelmästä.
Hyöty
NBTStat näyttää paikallisen ja etäkoneen NetBIOS-nimitaulun.
Toiminnot (kokeile)
Kirjoita |
Selitys |
nbtstat -n | Näyttää paikalliset NetBIOS-nimet. |
nbtstat -c | Näyttää etänimivälimiesmuistin sisällön. Välimuisti sisältää NetBIOS-nimistä ja vastaavista IP-osoitteista muodostuvia pareja. Nimet ovat peräisin niistä koneista, joiden kanssa tietokone on vastikään kommunikoinut. |
10. nslookup
Tällä komennolla saat selville mikä on tietyn palvelimen ip-osoite numeerisessa muodossa (tai vastaavasti mitä numeerisen ip:n takana olevan palvelimen "oikea nimi". Toteutetaan komentorivitilassa.
Kirjoita |
Selitys |
nslookup | - nslookup
okol.osakk.fi - nslookup 193.65.248.184 |
11. Apuohjelmien käyttö vikojen etsinnässä
TCP/IP-pinosta voi löytää vianaiheuttajan kokeilemalla erilaisia sovelluksia, jotka käyttävät TCP- ja UDP-protokollia, ja käyttämällä sekä socket- että NetBIOS-rajapintoja. Kokeilujen avulla voi päätellä mikä toimii ja mikä ei.
Vian etsinnässä kannattaa käyttää systemaattista menettelyä. Voit noudattaa seuraavia askelia: