Paikalliverkossa käytössä olevia osoitteita
IP
DHCP
DNS
NAT
Portit
Internet yhteys tarvitsee kahdenlaisia verkkoja ja kahdenlaisia osoitteita.
LAN, Local Area Network, paikallisverkko, kotiverkko,
- nopea yhteys paikallisten laitteiden välillä
WAN, Wide Area Network, Internet, julkinen verkko
- mahdollistaa yhteyden laajalla alueella,
Kummatkin verkot yhdistää reititin joka hoitaa dataliikenteen verkkojen välillä.
Noissa kummassakin tarvitaan osoitejärjestelyjä, joita seuraavassa selvitän.
AC1200 Wireless Dual Band Gigabit Router TP-Link Archer C5
Paikallisverkko
(kotiverkko) syntyy siten, että laitteet, pöytätietokone, kannettava tietokone, RaspberryPi-tietokone ja tulostin liitetään reitittimen keltaisiin Ethernet-liittimiin CAT5-parikaapeleilla. Reitittimessä on 2 Gigabitin WLAN langattomia laitteita varten.
Seuraava teksti liittyy kuvan reitittimeen (tai vastaavaan).
Kertaus
Internetin toiminta perustuu siihen, että koneelta toiselle siirrettävä data palastellaan tietyn suuruisiin datapaketteihin, pakettiin lisätään tietoja joilla yksittäinen paketti osaa kulkea monimutkaisten verkkojen kautta vastaanottajalle. Jotta tuo onnistuisi, verkossa olevat laitteet tarvitsevat kukin oman IP-osoitteensa. Tuo kerrotaan yksityiskohtaisesti linkissä “Miten web toimii?”
Jotta datapaketti osaa perille, siinä on oltava lähettävän koneen IP-osoite ja vastaanottavan koneen IP-osoite. IP, Internet Protokolla, on säännöstö jonka perusteella paketti löytää perille ja vastaukset tulevat takaisin. IP-osoite koostuu kahdesta osasta, jotka ovat operaattorin yksilöivä alkuosa ja operaattorin sisällä yksilöity liittymä. Osoitteesta ei yleensä voi päätellä missä päin maailmaa laitteisto sijaitsee, eikä siitä käy ilmi kuka on käyttäjä. Palvelimilla on yleensä kiinteä IP, asiakkaiden osoite vaihtelee.
Internetin IP-osoitteet
IETF, The Internet Engineering Task Force, on Internet-protokollien standardoinnista vastaava organisaatio. Se määritteli vuonna 1979 IPv4-protokollan, joka on internetin osoitteiden rakenteen määrittävä ohjeisto. Osoite on 32-bittinen joten sen osoiteavaruus on 2 potenssiin 32 eli kaikkiaan yli 4000 miljoonaa osoitetta, tarkalleen 4 294 967 296.
Osoitteen määrittävä 32-bittinen luku on jaettu neljään 8-bitin osaan, jotta se olisi helpompi hahmottaa. Osoite on tyypiltään desimaalisena 192.168.0.33.
Koska kukaan ei tuollaisia numero-osoitteita muista, kehitettiin protokolla jolla nimiosoitteet, kuten esimerkiksi www.punomo.fi muutetaan numeroiksi. Siitä myöhemmin lisää.
Pian kuitenkin havaittiin etteivät osoitteet riitä, koska webin myötä verkkoon liitettyjen tietokoneiden määrä kasvoi pikavauhtia. Siksi IETF kehitti uuden version, IPv6:n, jolla osoiteongelma ja samalla myös joitakin muita ongelmia voitaisiin ratkaista. IPv6-osoitteessa on käytettävissä 128 bittiä, mikä tarkoittaa 2 potenssiin 128, joka on 3,4 x10 potenssiin 38 osoitetta. Tuon pitäisi riittää.
Tärkeää ymmärtää:
IP-osoite määrittää verkon ja laitteen liitännän tuossa verkossa. Se ei määritä yksittäistä konetta, joten tuo ĺiitännän osoite voi olla tänään eri koneen kuin eilen. IP-osoitteistossa on myös broadcast-ominaisuus, moniosoite, jolla datapaketti voidaaan lähettää verkon kaikille koneille. Multicast-osoitteet niissä datapaketti lähetetään usealle, mutta ei kaikille, samaan aikaan.
Paikallisverkossa käytetään datan siirtoon fyysisiä osoitteita, MAC-osoitteita.
Oletus: meillä on samassa verkossa koneet A ja B. A-koneen sovellus generoi datapaketin B-koneen sovellukselle. Paketin siirtämiseen koneesta A koneeseen B käytetään MAC-osoitteita. MAC-osoite on yksilöllinen, jokaisella verkon laitteella on oma, verkkolaitteen valmistajan määrittämä osoite.
Alkuperäiset IPv4 osoitteistot on jaettu viiteen luokkaan.
A-luokka: 126 verkkoa, 16 miljoonaa konetta/verkko
B-luokka: 16382 verkkoa, 65528 konetta/verkko
C-luokka: noin 2 miljoonaa verkkoa, kussakin korkeintaan 254 konetta
D-luokka: monilähetys-osoite, multicast
E-luokka: varattu tulevaan käyttöön
Meitä kiinnostaa vain C-luokan osoitteet.
Ne osoitteet on tarkoitettu toimimaan paikallisverkoissa. Jos jonkun näistä osoitteista sisältävä data-paketti pääsee internettiin, niin ensimmäinen vastaantuleva reititin-kone blokkaa sen pois (tuhoaa paketin).
C-luokan osoitteet yksityisiin verkkoihin:
10.0.0.0 - 10.255.255.255 välillä käsittäen osoitteita kaikkiaan 16.777.216 kpl
172.16.0.0 - 172.31.255.255 osoitteita 1.048.576
192.168.0.0 - 192.168.255.255 osoitteita 65.536
Tavallisen kotiverkon rakentajan käytössä ovat nuo C-luokan osoitealueet.
Aliverkon peite, subnet mask
Aliverkon peite eli nettimaski on 32-bittinen numero jolla erotellaan IP-osoitteesta verkon ja koneen osoite.
Kun kone lähettää datapaketin toiselle, sen on ensin selvitettävä onko kohdelaite samassa verkossa. Selvitykseen se käyttää tuota nettimaskia, joka on numerosarja (esim 255.255.255.0) jolla oma osoitenumero (esim 192.168.0.22) kerrotaan “binäärisellä kertolaskulla” (AND-operaatio).
Jos tulos on se, että laitteet ovat samassa aliverkossa, ne voivat keskustella suoraan keskenään (MAC-osoitteiden avulla) ilman reitittimen apua. Muussa tapauksessa paketti lähetetään “ulos”.
Mitä vielä tarvitaan jotta netti saadaan käyttöön?
Tarvitaan laitteelle IP-osoite.
Tarvitaan DNS-nimipalvelimen osoite.
Tarvitaan tieto mistä osoitteesta pääsee paikallisverkosta ulos internettiin, oletusyhdyskäytävä.
Miten verkkoon kytketty laite saa IP-osoitteen?
Nykyään se hoituu automaattisesti. Vaivatonta ja luotettavaa. Siihen tarvitaan: DHCP, Dynamic Host Configuration Protocol
DHCP on protokolla, jonka avulla tietokoneille ja muille verkkoon kytketyille laitteille määritetään IP-osoite automaattisesti. IP-osoitteen lisäksi DHCP antaa yleensä muitakin verkkoa koskevia asetuksia, mm. aliverkon peite, oletusreititin (gateway) ja DNS- eli nimipalvelimet. Tällöin verkon ylläpitäjän ei tarvitse asettaa verkkoasetuksia jokaisella työasemalla.
DHCP hyväksyttiin Internet-standardiksi vuonna 1993.
Kuvan DHCP-palvelin antaa kotiverkon laitteilla osoitteita alkaen 192.168.0.2 aina osoitteeseen 192.168.0.254. Default Gateway joka laitteille on kerrottava jotta ne “osaavat ulos internetiin”.
Mutta.
Miten paikallisverkkoon juuri kytketty laite osaa kysyä yhtään mitään DHCP-palvelimelta, kun se ei edes tiedä sen IP-osoitetta? Päätelaitteen lähettämä paketti voi löytää perille vain jos sillä on tiedossa vastaanottajan IP-osoite, eikä IP-osoitteeksi kelpaa ”DHCP”.
Tarvitaan seuraava menettely:
Kun päätelaite on liitetty paikallisverkkoon, se ei tässä vaiheessa vielä tiedä vastaanottajan, siis reitittimen, osoitetta, joten se käyttää yleislähetystä (broadcast). Broadcast-lähetys menee kaikille verkossa oleville laitteille. Siinä se pyytää IP-osoitetta.
Reititin tunnistaa kysyjän ja vastauksena sen lähettämä IP-paketti menee vain kysyjälle ja sisältää automaattisesti lähettäjän, eli tässä tapauksessa DHCP-palvelimen IP-osoitteen.
Tähän asti kaikki hyvin.
Samoin toimii suoraan WAN-verkossa eli internetissä kiinni oleva reitittimen puoli. Se pyytää IP-osoitteensa palveluntarjoajan eli ISP:n DHCP-palvelimelta.
Eli me tarvitsemme kaksi DHCP-palvelinta:
* toinen sijaitsee omassa reitittimessä ja se on oman paikallisverkon koneille ja
* toinen on internet-palvelun myyjän omistama, josta se jakaa kaikille internetissä sen omassa verkossa oleville laitteille (asiakkaiden reitittimet) IP-osoitteen.
Suurissa verkoissa, WAN, verkkovastaavan tehtävänä on konfiguroida DHCP-palvelin, kotiverkoissa se on sisäänrakennettu reitittimeen ja toimii automaattisesti. Vaikka kotiserveri ei tarvitse konfigurointia, laitteille kuten tabletit, PC:t ja kännykät, pitää kertoa, että käyttävät DHCP-protokollaa.
Kotireititin saa IP-osoitteen WAN-verkosta (Internet). Se voi olla muotoa: 86.z.x.y, joka näkyy siis internettiin päin. Reitittimestä lähtevä data menee palveluntarjoajan Default Gateway-osoitteeseen 86. ja jotain ja sieltä edelleen internetiin.
Miten paikallisverkon datapaketit osaavat ulos internettiin?
Päätelaitteeseen on määritelty kaksi asetustietoa:
- LAN-verkon oletusyhdyskäytävän (default gateway) osoite
- nimipalvelimen, DNS, osoite
Yhdyskäytävä, default gateway
Gateway on oletusyhdyskäytävä, eli reitti LAN-aliverkosta ulkoiseen WAN-verkkoon. Gateway on reitittimessä oleva “reikä”, josta paikalliverkon datapaketit pääsevät ulos internetiin.
Reititin toimii TCP/IP-pinon verkkokerroksella, eli se ohjaa paketteja eteenpäin pelkän IP-osoitteen perusteella.
Tyypillisesti IP-osoitteita ei käytetä numerosarjana, koska niitä ei kukaan muista.
Tarvitaan nimipalvelin-järjestelmä joka muuttaa selväkieliset osoitteet kuten www.punomo.fi varsinaisiksi IP-osoitteiksi.
DNS, Domain Name System, nimipalvelin
Mitä tapahtuu kun paikallisverkossa olevan pöytäkoneen käyttäjä haluaa lukea Iltalehden uusimman numeron?
Hän avaa koneessa Firefox-selaimen ja kirjoittaa osoitekenttään www.iltalehti.fi.
Internetin laitteet osaavat vain numero-osoitteet, siksi pöytäkone ottaa yhteyden reitittimen kautta internetissä olevaan nimi- eli DNS-palvelimeen. DNS tietää mikä on Iltalehden IP-osoite ja kaikkien muidenkin nimi/numero-osoitteet. Ellei sillä ole tätä tietoa, se kysyy osoitetta toiselta nimipalvelimelta.
DNS palauttaa numero-osoitteen selaimelle ja Iltalehti löytyy sillä. Iltalehden web-palvelin lähettää halutun www-sivun kotiverkon koneeseen, selaimeen. Kaikki tapahtuu muutamassa sekunnissa.
Nettisivujen nimi on helpompi muistaa, esim punomo.fi, kuin sen numero-osoite jota järjestelmä käyttää.
DNS-palvelin muuttaa nimen numeroiksi automaattisesti, jotta data pääsee kulkemaan netissä.
Kuvassa kotireitittimen DNS-palvelun osoitteet. Yleensä niitä määritetään kaksi.
Vaikka nimipalvelusta ei tavallinen käyttäjä tiedä yhtään mitään, se on keskeinen osa Internetin toimintaa. Ilman sitä Web-palvelun käyttö olisi lähes mahdotonta.
Nimipalvelun toiminta perustuu verkkotunnuksiin (domain name) ja URL (Uniform Resource Locator) osoitteisiin. Tutki: http://www.iana.org/domains/root/servers.
Esimerkkinä URL:sta on https://punomo.fi/tvt-ict-tekniikka/punomo-ja-iot-internet-of-things/ jonka osat ovat:
* https (Hypertext Transfer Protocol Security) määrittelee protokollan, yhteyskäytännön,
* punomo.fi määrittelee palvelimen, josta resurssi on löydettävissä ja
* loppuosuus määrittelee verkkosivun, jonka sisältö lopulta näytetään käyttäjälle.
Vaikka *.fi on ylimmällä hierarkkiatasolla Suomen maatunnus, se ei tarkoita sitä, että osoitteen takana oleva laite tai palvelin olisi Suomessa, ainoastaan että kyseinen tunnus on myönnetty Suomessa (fi-juuren alaisia nimiä jakaa keskitetysti Viestintävirasto).
NAT, Network Address Translation
NAT on 1997 kehitetty tekniikka, jonka tarkoituksena oli vähentää IPv4-osoitteiden kulutusta. NAT on osoitteen muunnin. Reitittimessä oleva NAT-palvelu liittyy internetiin ISP-palvelimelta (internet-yhteyden myyjä) saadulla IP-osoitteella ja se antaa alaverkon osoitteita kotiverkon laitteille.
Jokainen kotiverkon laite saa oman IP-osoitteen reitittimeltä, mutta se ei näy internettiin, vaan NAT-palvelu muuttaa lähtevän paketin osoitteeksi ulkoisen ISP-osoitteen ja takaisin tulevan paketin osoitteen aliverkon MAC-laiteosoitteeksi, jolloin se osaa mennä oikeaan laitteeseen.
Jokaista NAT:ia samaan aikaan käyttävää yksityisen verkon tietokonetta kohden on vain yksi yhteinen julkisen verkon IP-osoite, jonka se on saanut internet-yhteyksien myyjän DHCP-palvelimelta. Näin sisäverkon ulkopuolella olevat koneet eivät voi tietää pakettien tulevan useammalta kuin yhdeltä koneelta. NAT-palvelu pitää kirjaa verkon laitteista jotta se tietää kenelle tulevat paketit ohjataan.
NAT lisää tietoturvaa estämällä sisäverkon osoitteita näkymästä ulospäin ja samalla se suojaa sisäverkkoa. Ja mikä parasta se säästää IP-osoitteita. NAT:in ansiosta kaikki liikenne näyttää kulkevan yhden osoitteen kautta, jolloin sisäverkon rakenne ei paljastu ulkopuolisille.
Seuraavaksi esimerkki, joka havainnollistaa NAT:in toimintaperiaatetta.
NAT:ia voidaan käyttää palomuurissa, reitittimessä tai tietokoneessa, joka on sisä-ja ulkoverkon välissä. NAT toimii verkkokerroksessa eli TCP/IP-pinon kolmannella kerroksella, jossa myös reititin toimii. Aluksi kannattaa opiskella mikä on IP-osoite: https://fi.wikipedia.org/wiki/IP-osoite
Porttinumero, port number:
Koska yhden IP osoitteen takana voi olla useita palveluja (esim. WWW palvelin, FTP palvelin, postipalvelin) ja lisäksi yhdestä laitteesta voidaan käynnistää useita istuntoja, tarvitaan pakettien perille toimittamiseen lisätarkenne. Tämä on ns. porttinumero (16 bittinen luku välillä 0-65535).
Yleinen merkintätapa on erottaa porttinumero kaksoispisteellä : esim. 192.168.32.15:80
Tuossa porttinumero on www-portti 80.
TCP/IP-yhteyksille on varattu mm seuraavia portteja:
20 FTP data
21 FTP ohjaus
22 SSH, Secure Shell
25 SMTP-sähköposti
53 DNS
80 HTTP, www-selain
10 POP3-sähköposti
143 IMAP-sähköposti
443 HTTPS
6667 IRC
8080 vaihtoehtoinen HTTP-portti
Mikä on RasPin osoite internettiin päin?
Käynnistä RasPissa Cromium-selain. Kirjoita osoitekenttään: www.whatismyip.com
Raspberry Pi ja kiinteä IP-osoite
Kun olet kytkenyt RasPin omaan kotiverkkoosi, sen reitittimen DHCP-palvelin antaa Raspillesi seuraavan vapaan IP-osoitteen.
On järkevämpää käyttää kiinteää osoitetta, varsinkin jos käytät VNC-etäyhteyttä.
Tehdään se näin, ellei jo ole tehty.
Loggaudu pi-käyttäjänä Raspberryyn. Käynnistä LXTerminal-ohjelma.
Kirjoita komento: sudo nano /etc/dhcpcd.conf
Poista #Example-rivin alapuolella olevista riveistä risuaika-merkki, eli poista niistä kommentointi eli rivit otetaan käyttöön. Muuta osoitteet “omiksi”.
Talleta ja poistu.
Bootin jälkeen IP osoite on tuo.