Ero sivun ”NAT” versioiden välillä
Siirry navigaatioon
Siirry hakuun
p
ei muokkausyhteenvetoa
Pb (keskustelu | muokkaukset) (Linkkejä Wikipediaan) |
pEi muokkausyhteenvetoa |
||
(16 välissä olevaa versiota 10 käyttäjän tekeminä ei näytetä) | |||
Rivi 1: | Rivi 1: | ||
NAT eli Network Address Translation on 1996/97 kehitetty tekniikka, jonka tarkoituksena oli vähentää [[IPv4]]-osoitteiden kulutusta. Ennen sen kehittämistä jokaisella Internetiin kytketyllä koneella oli oltava oma IP-osoite. | '''NAT''' eli '''Network Address Translation''' on 1996/97 kehitetty tekniikka, jonka tarkoituksena oli vähentää [[IPv4]]-osoitteiden kulutusta. Ennen sen kehittämistä jokaisella Internetiin kytketyllä koneella oli oltava oma [[wikipedia:fi:IP-osoite|IP-osoite]]. | ||
NATin avulla [[wikipedia:fi:reititin|reititin]] voi saada kaikki sen takaa sisäverkosta ulospäin Internetiin otetut yhteydet näkymään | NATin avulla [[wikipedia:fi:reititin|reititin]] voi saada kaikki sen takaa sisäverkosta ulospäin Internetiin otetut yhteydet näkymään reitittimen omalla IP-osoitteella, jolloin sisäverkon koneilla voi olla mitkä tahansa lähiverkon IP-osoitteet niiden vaikuttamatta Internet-liikenteeseen. | ||
Kun paketti NATatun verkon sisäpuolelta tulee Internetiin päin olevaan reitittimeen, vaihtaa reititin siihen oman julkisen IP-osoitteensa sisäverkon koneen IP-osoitteen tilalle. Vastaavasti reititin vaihtaa verkkonsa sisäpuolelle tulevien pakettien osoitteet julkisesta koneiden yksityisiin. Näin sisäverkon ulkopuolella olevat koneet eivät voi tietää pakettien tulevan useammalta kuin yhdeltä koneelta. | Kun paketti NATatun verkon sisäpuolelta tulee Internetiin päin olevaan reitittimeen, vaihtaa reititin siihen oman julkisen IP-osoitteensa sisäverkon koneen IP-osoitteen tilalle. Vastaavasti reititin vaihtaa verkkonsa sisäpuolelle tulevien pakettien osoitteet julkisesta koneiden yksityisiin. Näin sisäverkon ulkopuolella olevat koneet eivät voi tietää pakettien tulevan useammalta kuin yhdeltä koneelta. | ||
Ongelma NATin kanssa | == NATin ongelma == | ||
Ongelma NATin kanssa on, että reitittimellä usein on vain yksi tai muutama ulkoinen osoite, jolloin sisäverkon koneita ei voi suoraan (one-to-one NAT) yhdistää ulkoverkon ip-osoitteisiin. Jos sisäverkon koneen pitää kuunnella verkkoa, reitittimelle on kerrottava mihin sisäverkon koneeseen tiettyyn reitittimen ip-osoitteeseen ja tcp/udp-porttiin ulkoa tuleva yhteys on ohjattava. | |||
== | Käytännössä sisäverkon koneisiin ei voi ottaa yhteyttä ulkoa, ellei erikseen määrätä tiettyä konetta kohteeksi, joko oletusarvoisesti tai palvelukohtaisesti. Etenkin tiettyjen palvelujen kanssa tämä on ongelmallista: aktiivitilassa [[FTP]]:n, [[IRC]]:n tiedonsiirtoprotokolla [[DCC]]:n tai [[VoIP]] (SIP, H323) -protokollien käyttö on usein vaikeaa tai mahdotonta verkon sisäpuolelta. Tällöin on joko käytettävä erillisiä [[ydin|ytimen]] [[moduuli|moduuleita]] ftp:lle ja irc/dcc:lle (ip_nat_irc ja ip_nat_ftp) reitittimessä tai FTP:n ollessa kyseessä tyydyttävä sen passiivitilaan. | ||
NATatun sisäverkon koneiden IP-osoitteiksi ei voi valita aivan mitä tahansa. Jos esimerkiksi yhden koneen osoitteeksi asetettaisiin [http://62. | |||
== Paikalliset IP-osoitteet == | |||
NATatun sisäverkon koneiden IP-osoitteiksi ei voi valita aivan mitä tahansa. Jos esimerkiksi yhden koneen osoitteeksi asetettaisiin [http://62.220.250.162/ 62.220.250.162], mikä on [http://www.flug.fi/ www.flug.fi]:n IP-osoite, niin sisäverkosta ei enää [[FLUG]]in sivuille pääsisi, koska kaikki pyynnöt ohjautuisivat sille sisäverkon koneelle, jolle tämä osoite on asetettu. Tästä syystä [http://www.iana.org/ IANA] on kehittänyt RFC 1918 -standardin, jossa määritellään sisäverkoissa sallitut IP-osoiteavaruudet. Nämä osoitteet eivät voi olla käytössä Internetin puolella. Ne ovat seuraavat: | |||
10.0.0.0 - 10.255.255.255 (10/8 prefix) | 10.0.0.0 - 10.255.255.255 (10/8 prefix) | ||
172.16.0.0 - 172.31.255.255 (172.16/12 prefix) | 172.16.0.0 - 172.31.255.255 (172.16/12 prefix) | ||
Rivi 14: | Rivi 17: | ||
== NATin päällekytkeminen Linuxissa == | == NATin päällekytkeminen Linuxissa == | ||
Tässä ethX on ulospäin | Voimassaolevat reititykset voit putsata seuraavalla komennolla: | ||
iptables -t nat -F | |||
Voimassaolevat reititykset voit listata komennolla: | |||
iptables -t nat -L | |||
[[komentorivi|Komenna]] seuraavasti [[pääkäyttäjä]]nä (root): | |||
[[modprobe]] iptable_nat | |||
[[echo]] 1 > /[[proc]]/sys/net/ipv4/ip_forward | |||
[[iptables]] -t nat -A POSTROUTING -o ethX -j MASQUERADE | |||
Tässä ethX on ulospäin liikennöivä verkkolaite (voi olla esim. eth0 tai eth1). Jos käytät [[PPPoE]]:tä tai modeemia, on ethX korvattava pppX:llä. Jos taas käytössäsi on [[wikipedia:fi:ISDN|ISDN]], on laitteen nimi ipppX. [[WLAN]]-korteilla taas laitenimi on yleensä muotoa wlanX. | |||
Viimeisen komennon voi antaa myös muodossa | Viimeisen komennon voi antaa myös muodossa | ||
iptables -t nat -A POSTROUTING -s 192.168.0.0/ | iptables -t nat -A POSTROUTING -s 192.168.0.0/255.255.255.0 -o ethX -j MASQUERADE | ||
jolloin 192.168.0.0/255.255.255.0:n tilalle laitat sisäverkkosi osoitteen. | jolloin 192.168.0.0/255.255.255.0:n tilalle laitat sisäverkkosi osoitteen. | ||
Jos sinulla on kiinteä IP-osoite, niin komento on tämä: | Jos sinulla on '''kiinteä IP-osoite''', niin komento on tämä: | ||
iptables -t nat -A POSTROUTING -o ethX -j SNAT --to PYSYVÄ_IP-OSOITTEESI | iptables -t nat -A POSTROUTING -o ethX -j SNAT --to PYSYVÄ_IP-OSOITTEESI | ||
Tässä ethX on ulosmenevä laite. Komennon voi myös antaa muodossa: | Tässä ethX on "ulosmenevä" laite eli verkkokortti jota kautta liikennöit ulkoverkkoon. Komennon voi myös antaa muodossa: | ||
iptables -t nat -A POSTROUTING -s 192.168.0.0/255.255.255.0 -o ethX -j SNAT --to PYSYVÄ_IP-OSOITTEESI | iptables -t nat -A POSTROUTING -s 192.168.0.0/255.255.255.0 -o ethX -j SNAT --to PYSYVÄ_IP-OSOITTEESI | ||
Tässä 192.168.0.0/255.255.255.0 on sisäverkon osoite ja ethX on ulospäin menevä laite. | Tässä 192.168.0.0/255.255.255.0 on sisäverkon osoite ja ethX on ulospäin menevä laite. | ||
Monissa [[jakelut|jakeluissa]] NAT:in päällekytkeminen onnistuu myös jakelun omilla graafisilla asetusohjelmilla, esimerkiksi | Monissa [[jakelut|jakeluissa]] NAT:in päällekytkeminen onnistuu myös jakelun omilla graafisilla asetusohjelmilla, esimerkiksi jollakin Internet-yhteyden jako -velholla tai [[palomuuri]]asetustyökalulla. Monissa asetusohjelmissa NAT:ista käytetään nimitystä ''masquerading''. | ||
==NAT Fireholilla== | |||
[[Firehol]]illa NAT on helppo toteuttaa seuraavanlaisesti. Tässä esimerkissä siis InternetVerkkolaite on verkkolaite (vaikkapa eth0), joka on kytketty Internetiin, ja SisäverkonVerkkolaite (vaikkapa eth1) on sitten kytketty verkkoon, jonka koneet halutaan NAT:n taakse. | |||
router internet2lan inface InternetVerkkolaite outface SisäverkonVerkkolaite | |||
masquerade reverse | |||
client all accept | |||
== Katso myös == | == Katso myös == | ||
*[[DHCP]] | |||
*[[Verkkoliitynnät]] | *[[Verkkoliitynnät]] | ||
*[[Palomuuri]] | |||
== | ==Aiheesta muualla== | ||
*[http://tldp.org/HOWTO/Masquerading-Simple-HOWTO/index.html Masquerading-Simple-HOWTO] | *[http://tldp.org/HOWTO/Masquerading-Simple-HOWTO/index.html Masquerading-Simple-HOWTO] | ||
*[http://tldp.org/HOWTO/IP-Masquerade-HOWTO/index.html IP-Masquerade-HOWTO] | *[http://tldp.org/HOWTO/IP-Masquerade-HOWTO/index.html IP-Masquerade-HOWTO] | ||
Rivi 46: | Rivi 71: | ||
*[http://fi.wikipedia.org/wiki/Osoitteenmuunnos Artikkeli Osoitteenmuunnos Wikipediassa] | *[http://fi.wikipedia.org/wiki/Osoitteenmuunnos Artikkeli Osoitteenmuunnos Wikipediassa] | ||
[[Luokka: Verkko]] | [[Luokka:Verkko]] | ||
[[Luokka: Ohjeet]] | [[Luokka:Ohjeet]] |