Gentoo Logo

[ << ] [ < ] [ Etusivu ] [ > ] [ >> ]


3. Modulaariset verkkoasetukset

Sisällysluettelo:

3.a. Verkkomoduulit

Nykyisissä verkkoskripteissä on tuet eri moduuleille, joten siihen voi lisätä helposti uusia rajapintatyyppejä ilman että vanhoja tarvitsee päivittää.

Moduulit latautuvat automaattisesti jos niiden tarvitsemat paketit on asennettu. Kun moduulia, jonka tarvitsemat paketit eivät ole asenettu, yritetään käyttää, tulostuu näytölle virheilmoitus, jossa kerrotaan, mikä paketti pitää asentaa. Moduuliasetuksia ei yleensä tarvitse käyttää muutoin, kun jos on asennettu kaksi saman toiminnon tarjoavaa pakettia ja niistä pitää valita sopivampi.

Huomaa: Kaikki muutokset tehdään /etc/conf.d/netiin jollei toisin sanota.

Koodilistaus 1.1: Moduulien valitseminen

# iproute2 ennen ipconfigia
modules="iproute2"

# Myös rajapinnoille voi valita moduuleja
# tässä valitaan udhcpc ennen dhcpcd:tä
modules_eth0=( "udhcpc" )

# Moduulien käytön voi myös kieltää. Esimerkiksi jos käyttää
# muuta korviketta tai linux-wlan-ng:tä asetusten tekoon ja haluaa kuitenkin
# asettaa asetustiedostoon ESSID:t ja muut tiedot.
modules="!iwconfig"

3.b. Rajapintakäsittelimet

Tarjolla on kaksi rajapintojen käsittelijää: ifconfig ja iproute2. Toinen näistä pitää valita että mitään saa asetetuksi ylipäätään.

Ifconfig on Gentoon oletusarvo ja se sisältyy profiiliin. Iproute2 on tehokkaampi ja mukautuvampi, muttei ole oletusasennuksissa mukana.

Koodilistaus 2.1: Iproute2:n asennus

# emerge sys-apps/iproute2

# Iproute2 valitaan suositummaksi jos molemmat on asennettu
modules="iproute2"

Koska ifconfig ja iproute2 tekevät käytännössä samoja juttuja, niiden asetukset toimivat molemmilla samoin. Esimerkiksi seuraavat ratkaisut toimivat käytetystä paketista riippumatta.

Koodilistaus 2.2: ifconfigin ja iproute2:n esimerkit

config_eth0="192.168.0.2/24"
config_eth0="192.168.0.2 netmask 255.255.255.0"

# Myös broadcastin voi määritellä
config_eth0="192.168.0.2/24 brd 192.168.0.255"
config_eth0="192.168.0.2 netmask 255.255.255.0 broadcast 192.168.0.255"

3.c. DHCP

DHCP:llä haetaan verkon asetustiedot (IP, DNS-palvelimet, Gateway jne.) automaattisesti DHCP-palvelimelta. Jos verkossa on DHCP-plavelin, koneiden tarvitsee vain käyttää DHCP:tä ja verkon asetukset toimivat itsestään. Muut laitteet, kuten langattomat verkot ja PPP pitää tietenkin asettaa tarvitessa ennen DHCP:tä.

DHCP löytyy paketeista dhcpcd, dhclient tai pump. Jokainen DHCP-moduuli sisältää hyviä ja huonoja puolia:

DHCP-moduuli Paketti Hyödyt Haitat
dhclient net-misc/dhcp ISC:n, BINDin DNS-ohjelmistojen tekijöiden tekemä, erittäin muokattava. Asetukset ovat monimutkaisia, ohjelmisto on turhan iso, ei osaa hakea NTP-palvelimia, ei lähetä konenimeä oletuksena.
dhcpcd net-misc/dhcpcd Gentoon oletusarvo, ei riipu ulkoisista työkaluista, Gentoon ylläpitämä Toisinaan hitaahko. Ei osaa irroitautua palveluksi jos IP:n käyttöaika on ääretön.
pump net-misc/pump Kevyt, ei riipu ulkoisista työkaluista Ei enää ylläpidetty, epäluotettava (erityisesti modeemeilla), ei osaa hakea NIS-palvelimia.

Jos käytössä on useampia DHCP-ohjelmia, pitää niistä määritellä jokin suosituimmaksi, oletusarvona on muutoin dhcpcd.

Lisäkomentoja moduulikohtaisesti saa muuttujaan moduuli_eth0. Esimerkiksi dhcpcd:lle dhcpcd_eth0="...".

Yleisesti toimiva DHCP-asetuksiakin on olemassa, ne asetetaan muuttujaan dhcp_eth0. Näistä yksikään ei oletusarvoisesti ole päällä:

  • release — vapauttaa IP-osoitteen
  • nodns — ei ylikirjoita /etc/resolv.confia
  • nontp — ei ylikirjoita /etc/ntp.confia
  • nonis — ei ylikirjoita /etc/yp.confia

Koodilistaus 3.1: DHCP-esimerkkiasetusten teko tiedostoon /etc/conf.d/net

# Jos useampia dhcp-moduuleja on asennettu
modules="dhcpcd"

config_eth0="dhcp"
dhcpcd_eth0="-t 10" # Aikakatkaisu 10 sekuntia
dhcp_eth0="release nodns nontp nonis" # Vain osoitteenhaku

Huomaa: Dhcpcd ja pump lähettävät DHCP-palvelimelle konenimen oletusarvoisesti, joten sitä ei tarvitse erikseen määritellä.

3.d. ADSL ja PPPoE tai PPPoA

Ensin asennetaan ADLS-ohjelmat.

Koodilistaus 4.1: Ppp:n asentaminen

# emerge net-dialup/ppp

PPP- ja eth0-skriptit pitää luoda:

Koodilistaus 4.2: Nettiskriptien teko

# ln -s /etc/init.d/net.lo /etc/init.d/net.ppp0
# ln -s /etc/init.d/net.lo /etc/init.d/net.eth0

Aseta rc_depend_strict="YES" tiedostoon /etc/rc.conf.

Seuraavaksi asetetaan tiedosto /etc/conf.d/net.

Koodilistaus 4.3: A basic PPPoE setup

config_eth0=null (Aseta ethernet-rajapinta)
config_ppp0="ppp"
link_ppp0="eth0" (Aseta ethernet-rajapinta)
plugins_ppp0="pppoe"
username_ppp0='user'
password_ppp0='password'
pppd_ppp0="
       noauth
       defaultroute
       usepeerdns
       holdoff 3
       child-timeout 60
       lcp-echo-interval 15
       lcp-echo-failure 3
       noaccomp noccp nobsdcomp nodeflate nopcomp novj novjccomp
"


rc_need_ppp="net.eth0"

Käyttäjänimi ja salasana voidaan asettaa myös tiedostoon /etc/ppp/pap-secrets.

Koodilistaus 4.4: /etc/ppp/pap-secretsin asettaminen

# *-merkki on tärkeä!
"username"	*	"password"

Jos PPPoE:ta käytetään USB-modeemilla, pitää asentaa br2684ctl. Lue myös asennusohjeet tiedostosta /usr/portage/net-dialup/speedtouch-usb/files/README.

Tärkeää: Lue myös tarkkaan ADSL- ja PPP-ohjeet tiedostossa /etc/share/doc/openrc-<versio>/net.example.bz2. Siinä on tarkempia selityksiä monista tarpeellisista asetuksista. Tietenkin <versio> pitää korvata versionumerolla.

3.e. APIPA

APIPA (Automatic Private IP Adressing) toimii hakemalla vapaata osoitetta alueelta 169.254.0.0—169.254.255.255. Jos jostain osoitteesta ei vastata niin se otetaan käyttöön.

Tämä on lähinnä hyödyllinen LANeilla kun DHCP-palvelinta eikä suoraa Internet-yhteyttä ole käytössä, ja kaikki käyttävät APIPAa.

APIPA-tuen saa paketista net-misc/iputils tai net-analyzer/arping.

Koodilistaus 5.1: APIPA-asetusten tekeminen tiedostoon /etc/conf.d/net

# Ensin yritetään DHCP:tä sitten APIPAa
config_eth0="dhcp"
fallback_eth0="apipa"

# Just use APIPA
config_eth0="apipa"

3.f. Bonding

Linkkien bondaus ja yhdistely onnistuu ohjelmalla net-misc/ifenslave.

Bondaus nostaa kaistanleveyttä. Jos käytössä on kaksi verkkoyhteyttä samaan verkkoon ne vou liittää yhteen siten, että ohjelmille ne näkyvät yhtenä yhteytenä.

Koodilistaus 6.1: bonding-asetusten teko tiedostoon /etc/conf.d/net

# Rajapintojen yhteenliittäminen
slaves_bond0="eth0 eth1 eth2"

# Bonding-rajapinnalle ei ehkä haluta osoitetta
config_bond0="null"

# Liittäminen riippuu kaikista liitettävistä rajapinnoista
  rc_need_bond0="net.eth0 net.eth1 net.eth2"

3.g. Siltaus (802.1d-tuki)

Siltaustuki löytyy paketista net-misc/bridge-utils.

Siltauksella liitetään verkkoja toisiinsa. Esimerkiksi jos käytössä on palvelin, joka liitetään Internetiin ADSL:llä ja langaton paikallinen yhteys siihen muista koneista, voidaan yhdistää sillan läpi ADSL:llä Internetiin.

Koodilistaus 7.1: Siltausasetusten tekeminen tiedostoon /etc/conf.d/net

# Siltauksen asetukset, ohjesivulta man brctl lisätietoja
brctl_br0="setfd 0" "sethello 0" "stp off"

# Lisää portteja siltaan br0
bridge_br0="eth0 eth1"

# Portit pitää asettaa nulleiksi ettei dhcp käynnisty
config_eth0="null"
config_eth1="null"

# Lopulta sillalle annetaan osoite, tähän voi käyttää DHCP:täkin
config_br0="192.168.0.1/24"

# Riippuvuus eht0:aan ja eth1:een jos ne tarvitsevat lisäasetuksia
rc_need_br0="net.eth0 net.eth1"

Tärkeää: Joissain silta-asetuksissa kannattaa pitää mielessä muuttujien nimet.

3.h. MAC-osoite

MAC-osoiteen voi muuttaa asetustiedostostakin.

Koodilistaus 8.1: MAC-osoitteen muuttaminen

# Aseta rajapinnan MAC-osoite
mac_eth0="00:11:22:33:44:55"

# Satunnaista kolme viimeistä tavua
mac_eth0="random-ending"

# Satunnaista kaikki samantyyppiset yhteydet (valokaapeli,
# kupari, langaton)
mac_eth0="random-samekind"

# Satunnaista kaikentyyppiset yhteydet
mac_eth0="random-anykind"

# Satunnaista täysin, huomaa: tämä ei useinkaan toimi niinkuin
# olisi odotettua
mac_eth0="random-full"

3.i. Tunnelointi

Tunnelointia varten ei tarvitse mitään eri ohjelmia, koska sen hoitaa rajapinnan käsittelijä.

Koodilistaus 9.1: Tunnelointiasetusten tekeminen tiedostoon /etc/conf.d/net

# GRE-tunneli
iptunnel_vpn0="mode gre remote 207.170.82.1 key 0xffffffff ttl 255"

# IPIP-tunneli
iptunnel_vpn0="mode ipip remote 207.170.82.2 ttl 255"

# Rajapinta-asetukset
config_vpn0="192.168.0.2 peer 192.168.1.1"

3.j. VLAN (802.1q-tuki)

VLAN-tuelle tarvitaan paketti net-misc/vconfig.

Virtuaali-LAN tarkoittaa joukkoa verkkolaitteita, jotka käyttäytyvät paikallisena verkkosegmenttinä, vaikkeivät fyysisesti olisikaan. VLANin osat näkevät vain saman VLANin osat paikallisina, vaikka jakaisivatkin fyysisen verkon muiden kanssa.

Koodilistaus 10.1: VLAN-asetusten tekeminen tiedostoon /etc/conf.d/net

# Määrittele VLAN-numerot rajapinnoille
# Muista ettei VLAN-numeroita täydennetä etunollilla
vlans_eth0="1 2"

# VLANille voi myös antaa asetuksia
# lisätietoja vconfigin man-sivuilta
vconfig_eth0="set_name_type VLAN_PLUS_VID_NO_PAD"
vconfig_vlan1="set_flag 1" "set_egress_map 2 6"

# Aseta rajapinnat tavalliseen tapaan
config_vlan1="172.16.3.1 netmask 255.255.254.0"
config_vlan2="172.16.2.1 netmask 255.255.254.0"

Tärkeää: Joissakin VLAN-asetuksissa kannattaa muistaa muuttujien nimet.


[ << ] [ < ] [ Etusivu ] [ > ] [ >> ]


Tulostettava muoto

Näytä kaikki

Tämä sivu on viimeksi päivitetty 13. elokuuta 2011

Tätä käännöstä ei enää ylläpidetä

Tiivistelmä: Tässä kappaleessa kerrotaan Gentoon joustavista verkkoasetusmahdollisuuksista, DHCP-asiakasohjelmista, siltauksista, VLANeista ja muista.

Sven Vermeulen
Tekijä

Daniel Robbins
Tekijä

Chris Houser
Tekijä

Jerry Alexandratos
Tekijä

Joshua Saddler
Tekijä

Grant Goodyear
Tekijä

Seemant Kulleen
Gentoon x86-kehittäjä

Tavis Ormandy
Gentoon alpha-kehittäjä

Aron Griffis
Gentoon alpha-kehittäjä

Brad House
Gentoon AMD64-kehittäjä

Guy Martin
Gentoon HPPA-kehittäjä

Pieter Van den Abeele
Gentoon PPC-kehittäjä

Joe Kallar
Gentoon SPARC-kehittäjä

John P. Davis
Toimittaja

Pierre-Henri Jondot
Toimittaja

Eric Stockbridge
Toimittaja

Rajiv Manglani
Toimittaja

Jungmin Seo
Toimittaja

Stoyan Zhekov
Toimittaja

Jared Hudson
Toimittaja

Colin Morey
Toimittaja

Jorge Paulo
Toimittaja

Carl Anderson
Toimittaja

Jon Portnoy
Toimittaja

Zack Gilburd
Toimittaja

Jack Morgan
Toimittaja

Benny Chuang
Toimittaja

Erwin
Toimittaja

Joshua Kinard
Toimittaja

Xavier Neys
Toimittaja

Shyam Mani
Toimittaja

Joshua Saddler
Toimittaja

Gerald J. Normandin Jr.
Katselmoija

Donnie Berkholz
Katselmoija

Ken Nowack
Katselmoija

Lars Weiler
Kirjoittaja

Flammie Pirinen
Vastuullinen kääntäjä

Jouni Hätinen
Käännöksen laatutarkistaja

Donate to support our development efforts.

Copyright 2001-2014 Gentoo Foundation, Inc. Questions, Comments? Contact us.