Configurare retea

De la ArchWikiRo

Salt la: navigare, căutare

Cuprins

Verificarea conexiunii

De obicei,procedura de instalare crează o configurare a reţelei de lucru. Pentru a verifica,utilizaţi următoarea comandă:

$ ping google.com

Dacă funcţionează, atunci puteti trece la personalizarea setărilor din opţiunile de mai jos.

Setare hostname

Hostname este un nume unic creat pentru a identifica un computer într-o rețea.Pe ArchLinux acest nume este setat în /etc/rc.conf sau folosind comanda hostname. Lungimea hostname este limitată la 63 caractere și poate cuprinde caractere alfanumerice sau cratimă(-).Editaţi /etc/rc.conf şi setați HOSTNAME (archlinux în acest exemplu):

HOSTNAME="archlinux"

După stabilirea unui nume de gazdă,e recomandat să introduceți același nume și în fișierul /etc/hosts.Acest lucru va fi util pentru procesele care se folosesc de hostname în încercarea de a seta IP-urile calculatorului. Editați /etc/hosts și adăugați același hostname ca și în /etc/rc.conf:

127.0.0.1      archlinux.domain.org   localhost.localdomain      localhost    archlinux

Pentru a seta temporar numele de gazdă(până la următorul reboot),folosiți comanda hostname (ca root):

# hostname archlinux

Încărcarea modulului pentru placa de rețea

Udev ar trebui să detecteze modulul plăcii de rețea(NIC) pentru a-l încărca automat la pornire.Dacă aceasta nu se întâmplă,puteți afla care este modulul de care aveți nevoie:

# hwdetect --show-net

Odată ce modulul a fost recunoscut,îl puteți încărca cu comanda:

# modprobe <modulename>

Dacă după restart udev nu recunoaște modulul,îl puteți adăuga în câmpul MODULES,(/etc/rc.conf)pentru a fi încărcat automat la pornire.De exemplu dacă tg3 este modulul de rețea:

MODULES=(!usbserial tg3 snd-cmipci)

Alte module comune ar fi 8139too pentru carduri cu chipset Realtek sau sis900 pentru carduri SiS.

Configurare IP

E bine de știut că puteți avea o adresă dinamică(folosind DHCP),ori o adresă statică.

Notă: Pentru plăcile de bază cu NIC-uri integrate, este important să se ştie care NIC este considerat principal(de exemplu,eth0) și care este considerat secundar(de exemplu,eth1). Multe probleme sunt cauzate de configurarea incorectă eth0 în /etc/rc.conf când,de fapt,eth1 este varianta corectă!

Pentru DHCP

Pentru această opţiune, este nevoie de pachetul dhcpcd(disponibil la instalare). Pentru a-l folosi, editaţi /etc/rc.conf în felul următor:

eth0="dhcp"
INTERFACES=(eth0)
ROUTES=(!gateway)

Dacă utilizaţi DHCP şi nu doriți ca serverele DNS să fie alocate automat de fiecare dată când porniţi reţeaua,adăugați următoarele la ultima secţiune a /etc/dhcpcd.conf:

nohook resolv.conf

Apoi se adaugă propriul server DNS în /etc/resolv.conf. Testați setările prin oprirea şi pornirea daemonului /etc/rc.d/network . Pentru a reporni daemonul de reţea:

# /etc/rc.d/network restart

Puteţi utiliza pachetul openresolv,dacă doriţi să controlaţi resolv.conf (de exemplu, dhcpcd şi client VPN).De altfel nu mai e nevoie de configurări suplimentare pentru dhcpcd pentru utilizarea openresolv. Notă: este posibil să aveți IP static utilizând dhcpcd.Editați /etc/conf.d/dhcpcd pentru a arăta ca în exemplul de mai jos(xxxx este IP):

DHCPCD_ARGS="-q -S x.x.x.x"

Pentru IP static

Există motive pentru care ați dori să aveți o adresă IP statică,în detrimentul unui IP dinamic.Cu o adresă IP statică se poate obține un anumit grad de predictibilitate și în al doilea rând gradul de securitate este ceva mai crescut.De asemenea,dacă sunteți într-o rețea Windows,fără router,fiți siguri că folosiți un IP static pe ambele PC-uri altfel vor apărea probleme în rețea. Pentru aceasta este nevoie de:

  • Adresa IP-ului static
  • Netmask
  • Adresa broadcast
  • Gateway
  • Numele serverului si IP-ul său
  • Numele domeniului

Dacă rulați într-o rețea privată este mai sigur să folosiți o adresă IP de tipul 192.168.*.'* cu netmask 255.255.255.0 si adresa broadcast 192.168.*.255. Cu excepţia cazului în care reţeaua are un router, adresa de gateway nu are importanță.Editați /etc/rc.conf,înlocuind cu propriile valori IP,netmask,broadcast și gateway:

eth0="eth0 192.168.100.2 netmask 255.255.255.0 broadcast 192.168.100.255"
INTERFACES=(eth0)
gateway="default gw 192.168.100.1"
ROUTES=(gateway)

Pentru a adăuga rute suplimentare statice, utilizaţi sintaxa normală pentru comanda route add, cum ar fi:

static_route1="-net 192.168.200.0/24 gw 192.168.100.15"

Se adaugă static_route1 in câmpul routes.Reţineţi că un nume de route nu poate începe cu un număr,static_route1 e bine,iar 1static_route e incorect.Editați/etc/resolv.conf să arate ca acesta,înlocuind numele domeniului și numele serverului:

nameserver 61.23.173.5
nameserver 61.95.849.8
search example.com

Atribuire manuală

Puteți atribui un IP static în consolă:

# ifconfig <interface> <ip> netmask <netmask>

De exemplu: ifconfig eth0 192.168.1.2 netmask 255.255.255.0.Pentru mai multe informații vezi man ifconfig. Adaugați gateway-ul personal:

# route add default gw <ip>
# route add default gw 192.168.1.1

192.168.1.1 ar fi un exemplu.

Încărcarea configurației

Pentru a testa setările fără a reporni,rulați,ca root /etc/rc.d/network restart.Încercaţi să verificați gateway-ul,serverul de DNS, ISP-ul și alte site-uri de internet, în această ordine, pentru a detecta orice probleme de conexiune,ca în acest exemplu:

$ ping google.com

Setări suplimentare

Activare/Dezactivare interfață rețea

Puteți activa/dezactiva interfața de rețea cu comanda:

# ifconfig <interface> up/down

Firewall

Puteți instala și configura un firewall pentru mai multă protecție,vezi Firewall.

Setare Wireless

Vedeți Wireless pentru mai multe informații.

Laptopuri,'ifplugd'

Puteți instala un daemon care să configureze automat rețeaua atunci când cablul de la rețea este introdus și să o deconfigureze atunci când cablul este scos.Este folositor pentru laptopuri cu placa de rețea onboard.Instalarea sa este destul de simplă:

# pacman -S ifplugd

În mod implicit este configurat să funcționeze pe eth0.Pornirea se face cu:

# /etc/rc.d/ifplugd start

și se adaugă la DAEMONS /etc/rc.conf.

Conectarea a doua cabluri ethernet

Puteți instala pachetul ifenslave pentru a conecta două cabluri ethernet,cu o singură adresă IP.După instalare,trebuie să editați fiecare din următoarele fișiere: /etc/conf.d/bonding:

bond_bond0="eth0 eth1"
BOND_INTERFACES=(bond0)

/etc/modprobe.d/modprobe.conf:

options bonding miimon=100

/etc/rc.conf:

MODULES=(... bonding ...)
bond0="bond0 192.168.1.1 netmask 255.255.255.0 broadcast 192.168.1.255"
INTERFACES=(bond0)

Pentru a activa noile porturi reporniți rețeaua cu:

 #/etc/rc.d/network restart

Aliasuri IP

Pentru un IP și o placă de rețea:

# nano /etc/rc.conf
eth0="eth0 192.168.0.1 netmask 255.255.255.0 broadcast 192.168.0.255"
INTERFACES=(lo eth0)

Două IP-uri și o placă de rețea:

# nano /etc/rc.conf
eth0="eth0 192.168.0.1 netmask 255.255.255.0 broadcast 192.168.0.255"
eth0_0="eth0:0 192.168.0.2 netmask 255.255.255.0 broadcast 192.168.0.255"
INTERFACES=(lo eth0 eth0_0)

Un IP si 2 plăci de rețea:

# pacman -S ifenslave
# nano /etc/rc.conf
bond0="bond0 192.168.0.1 netmask 255.255.255.0 broadcast 192.168.0.255"
INTERFACES=(lo bond0)
MODULES=(... bonding ...)

Două IP-uri și 2 plăci de rețea:

# pacman -S ifenslave
# nano /etc/rc.conf
bond0="bond0 192.168.0.1 netmask 255.255.255.0 broadcast 192.168.0.255"
bond01="bond0:1 192.168.0.2 netmask 255.255.255.0 broadcast 192.168.0.255"
INTERFACES=(lo bond0 bond01)
MODULES=(... bonding ...)
Notă: După stabilirea acestor opțiuni,setați firewall-ul, altfel rețeaua nu va funcționa corect.

Modificare MAC

Acest lucru este util atunci când ISP-ul cere accesul la unul din computerele dumneavoastră pentru a vă identifica,dar doriți să realizați conexiunea pe mai multe calculatoare făra a rula ifconfig de fiecare dată.Adăugați ifconfig la opțiunile de configurare a plăcii. Pentru placa ethernet:

eth0="eth0 192.168.0.1 netmask 255.255.255.0 broadcast 192.168.0.255 hw ether
01:23:45:67:89:ab
"

Aceasta nu va funcționa dacă nu obțineți adresa IP pentru serverul DHCP.În schimb puteți crea un daemon care va stabili adresa MAC si va rula inaintea daemonului de retea. Creați fișierul /etc/rc.d/set-hw-addr cu următorul conținut:

#!/bin/bash                                                                     
  . /etc/rc.conf                                                                  
  . /etc/rc.d/functions<br>                                                          
  case "$1" in
  start)
        stat_busy 'Setting MAC address'
        if ifconfig eth0 hw ether '''01:23:45:67:89:ab''' # your new MAC address
        then
                stat_done
        else
                stat_fail
        fi
        ;;
  stop)
        stat_busy 'Restoring original MAC address'
        if ifconfig eth0 hw ether '''00:11:22:33:44:55''' # your old MAC address
        then
                stat_done
        else
                stat_fail
        fi
        ;;
  restart)
        $0 stop
        $0 start
        ;;
  *)
        echo "Usage: $0 {start|stop|restart}"
  esac

iar la daemons:

DAEMONS=(... set-hw-addr network ...)

Probleme posibile și rezolvarea lor

DHCP eșuează la boot

În primul rând verificați toți pașii pe care computerul îi execută din momentul boot-ării pentru a afla care din ei nu a reușit.Acești pași sunt: 1.detectarea dispozitivului de rețea și încărcarea driverului respectiv 2.pornirea interfeței de rețea 3.apelare dhcp 1.Pentru a verifica controlerul ethernet executați comanda lspci -v.Aceasta vă va arata ce modul de kernel conține driverul plăcii de rețea.De exemplu:

02:00.0 Ethernet controller: Attansic Technology Corp. L1 Gigabit Ethernet Adapter (rev b0)
 	...
 	Kernel driver in use: atl1
 	Kernel modules: atl1

Verificați apoi dacă driverul e încărcat cu comanda: dmesg | grep <module name> . Cum ar fi:

$ dmesg |grep atl1
 ...
 atl1 0000:02:00.0: eth0 link is up 100 Mbps full duplex
 

2.verificați dmesg pentru interfața asociată dispozitivului de rețea prin intermediul(ca root) ifconfig <interface> up.Verificați rezultatul cu ifconfig -a.De exemplu:

$ ifconfig -a
 eth0      Link encap:Ethernet  ...
           inet6 addr: f.../64 Scope:Link
           UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
           ...
Notă: Probabil, nu veți găsi aici adresa inet.O veți putea obține de la router în pasul 3

3.Pentru a fi siguri, eliberați interfața de rețea cu dhcpcd --release,apoi incercați să o relansați cu dhcpcd.Dacă totul funcționează ,va arăta în felul următor:

$ dhcpcd --release eth0
 dhcpcd: dhcpcd not running
 $ dhcpcd eth0
 dhcpcd: version 5.1.1 starting
 dhcpcd: eth0: broadcasting for a lease
 ...
 dhcpcd: eth0: leased 192.168.1.70 for 86400 seconds

Acum cu ifconfig <interface> ar trebui să aveți și adresa de inet. Daca dhcp nu funcționează la boot, introduceți următoarele in /etc/rc.local:

dhcpcd -k eth0 
dhcpcd -nd eth0

Vezi [1] pentru mai multe informații.Pentru majoritatea pachetul dhclient din [extra] funcționează când dhcpcd eșuează.

Înlocuirea computerului

Cele mai multe ISP-uri au modemul configurat sa recunoască doar un singur PC,prin adresa MAC a interfeței de rețea.Odată ce un modem a fost "învățat" să recunoască acel PC,nu va răspunde la o schimbare de MAC.Astfel,dacă veți încerca să schimbați PC-ul cu altul (sau un router), PC-ul nou (sau router-ul) nu va lucra cu modemul , deoarece acesta are o adresă MAC diferită.Pentru aceasta modemul trebuie resetat.Imediat după resetarea modemului și intrarea sa în mod on-line,trebuie pornit si PC-ul pentru obținerea unei noi adrese DHCP.Dacă această metodă nu funcționează va trebui să clonați adresa MAC a primului PC.A se vedea #Modificare MAC.

Unelte personale