Sistemes Telemàtics

STI-2

 Configuració bàsica de xarxa (Ampliació). Ordre netstat.

GNU/Linux

13-10-2007

Configuració bàsica de xarxa (Ampliació). Ordre netstat.
TEORIA

1- IP aliasing (en català àlies d'IP o també adreces adicionals).

1.1.- Afegint un àlies d'IP o adreça adicional des de l'interpret d'ordres.
Posar alies d'IP consisteix a afegir més d'una adreça IP a una interfície de xarxa. D'aquesta manera un ordinador pot formar part de més d'una subxarxa, i permetre oferir (o accedir a) serveis diferents en funció de l'adreça IP.

En GNU/Linux, si volem afegir per exemple la nova adreça IP 192.168.1.13 a la interficie eth0, amb màscara 255.255.255.0, només hem d'executar el següent comandament:

ifconfig  eth0:1  192.168.1.13  netmask  255.255.255.0

Fixeu-vos que darrere eth0:1 indica que aquesta adreça IP serà el primer àlies de la interfície eth0. Si volem afegir més àlies únicament caldrà posar eth0:2, eth0:3,......

1.2.- Efectes en la taula d'encaminament de l'adreça IP adicional.
Si mirem ara la taula d'encaminaments (routing table) veurem que s'ha afegit un nou camí cap a la xarxa 192.168.1.0, i que per enviar o rebre dades d'aquest xarxa ens cal utilitzar la interfície eth0. Per exemple:

sh1:~ # route -n
Kernel IP routing table
Destination Gateway Gensmak Flags Mettric Ref Use Iface
192.168.1.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0
172.16.0.0 0.0.0.0 255.255.0.0 U 0 0 0 eth0
0.0.0.0 172.16.0.4   0.0.0.0 UG 0 0 0 eth0

Fixem-nos que tenim un camí cap a la xarxa 172.16.0.0 (amb màscara 255.255.0.0)per mitjà de la interfíce eth0, o sigui, per enviar o rebre dades d'aquella xarxa l'ordinador farà servir la interfície eth0. El mateix passarà amb la subxarxa 192.168.1.0 màscara 255.255.255.0. Si volem connectar-nos a qualevol altra xarxa (o sigui IP 0.0.0.0 amb màscara 0.0.0.0), ho farem per mitjà de la interfície eth0 i enviarem o rebrem dades per mitjà del dispositiu d'encaminament intermig (o sigui, el router) 172.16.0.4.

Si volguéssim utilitzar un router associat a la subxarxa 192.168.1.0 màscara 255.255.255.0, llavors l'hauriem d'afegir com ja ho hem vist a al pràctica 1, però si volem donar prioritat a la utilització d'un router sobre l'altra, hauriem d'afegir la mètrica. Per exemple, si volem que 172.16.0.4 sigui prioritari sobre un posible router 192.168.1.1, executariem:

route  add  default  gw  192.168.1.1  metric  1

i llavors la nova taula seria:

sh1:~ # route -n
Kernel IP routing table
Destination Gateway Gensmak Flags Mettric Ref Use Iface
192.168.1.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0
172.16.0.0 0.0.0.0 255.255.0.0 U 0 0 0 eth0
0.0.0.0 172.16.0.4   0.0.0.0 UG 0 0 0 eth0
0.0.0.0 192.168.1.1   0.0.0.0 UG 1 0 0 eth0

Tot i això, si no posem mètrica, el primer router configurat és sempre el prioritari.De la mètrica en parlarem amb més profundidat en una altra pràctica sobre el servei d'enrutament de GNU/Linux.

1.3.- Aliès d'IP des de YaST
Per afegir un àlies d'IP des de YaST, hem d'anar a YaST --> Dispositius de xarxa --> Targeta de xarxa. Dins de "Network Settings" escollim la targeta que volem configurar i fem click a sobre de la tecal virtual Configure. Dins de Network Card Setup seleccionem la pestanya Adreça, i si tenim activa l'opció "Statically assigned IP Address", veurem que a la secció "Adreces adicionals" es poden afegir, esborrar i modificar àlies d'IP.

NOTA 1: YaST només veu les adreces IP adicionals (o àlies d'IP) configurades de manera permanent ,com veurem a l'apartat 3.
NOTA 2:  YaST només permet afegir adreces IP adicionals (o àlies d'IP) si Network Manager està desactivat (veure apartat 2).

2- Control de la interfície de xarxa des de Network Manager.

Es pot controlar gràficament l'estat de la interfície de xarxa des d'un programa anomenat NetworkManager. Per activar el control de la interfície de xarxa aquest programa només hem d'anar a:

YaST --> Dispositius de xarxa --> Targeta de xarxa --> Global options

Dins de la secció "Mètode de configuració de la xarxa", hem de escollir l'opció "Control per part de l'usuari amb el NetworkManager". Això farà que per defecte quan posem en marxa l'ordinador, puguem activar/desactivar la interfície de xarxa fent servir aquest programa, perquè s'afegira una "miniaplicació" o "applet" de l'escriptori a la barra d'eines amb les següents icones posibles:

---> Si la interfície de xarxa està activa.

--> Si la interfície de xarxa ha estat desactivada.

Fent click amb el botó de la dreta a sobre de la icona, surt un menú desplegable, i si fem click a "Opcions", anirem a un altre menú, on podem escollir l'opció "Canvia al mode desconnectat" si la interfície està activa, o  "Canvia al mode Connectat" si la intefície ha estat desactivada.

Quan canvieu des de YaST el mètode de control de la interfície, es posible que no us surti la icona a la barra d'eines. Això és perquè el programa "Network Manager" no està executant-se. Per executar-lo només heu d'anar a Menú K --> Sistema --> Miniaplicació de l'escriptori, i fer click a sobre de la icona "Treball en xarxa" (icona de color verd i rodona).

3- Configurant l'adreça IP, màscara i adreça IP del router de manera permanent des de l'interpret d'ordre. Fitxers /etc/sysconfig/network/ifcfg-eth* i /etc/sysconfig/network/routes

Per fer que l'adreça IP i màscara d'una interfície de xarxa sigui permanent, només hem de modificar el fitxer /etc/sysconfig/network/ifcfg-eth* associat a la interfície de xarxa amb la qual volem treballar. Si per exemple la interfície de xarxa a configurar està associada al fitxer /etc/sysconfig/network/ifcfg-eth-bus-pci-0000:02:0e.0 (per saber el número hem d'utilitzar la informació que ens donarà l'ordre hwinfo --netcard que varem veure a la pràctica 1, mirant la secció  SysFS BusID, i la secció Model per reconeixer la targeta amb la que estem treballant), llavors haurem d'editar el fitxer, i veurem això:

BOOTPROTO='static'
BROADCAST=''
ETHTOOL_OPTIONS=''
IFPLUGD_PRIORITY='20'
IPADDR='192.168.1.2'
MTU=''
NAME='Hewlett-Packard Company BCM4401-B0 100Base-TX'
NETMASK='255.255.255.0'
NETWORK=''
REMOTE_IPADDR=''
STARTMODE='ifplugd'
UNIQUE='Gcmk.v3hQnxFJKk1'
USERCONTROL='no'
nm_name='bus-pci-0000:02:0e.0'

Si volem una configuració estàtica, llavors hem de posar BOOTPROTO='static', i a IPADDR hem de posar l'adreça IP (entre cometes simples) i a NETMASK la màscara de subxarxa (entre cometes simples). Si volem una configuració dinàmica de la targeta de xarxa, llavors hem de posar   BOOTPROTO='dhcp', IPADDR='' i NETMASK=''.

Si volem una configuració estàtica pel router, amb valor per exemple 192.168.1.1., llavors hem d'obrir el fitxer /etc/sysconfig/network/routes, i escriure-hi:

default 192.168.1.1 - -

Si volem una configuració dinàmica per l'adreça IP del router, llavors hem d'obrir el fitxer /etc/sysconfig/network/routes, i desar-lo en blanc.

Si volem afegir un àlies d'IP eth0:1 de manera permanentde i valor 172.16.240.1 amb màscara 255.255.0.0 , hauriem d'afegir al final del fitxer això:

IPADDR_1='172.16.240.1'
NETMASK_1='255.255.0.0'
LABEL_1='1'

4- Ordres ifup, ifdown, ifstatus

a) L'ordre ifup  activa una interfície i utilitza els valors dels fitxer del directori  /etc/sysconfig/network/ per configurar la interfície activada. Exemple:  ifup  eth0 activa la interfície eth0. Generalment s'ha d'esperar uns quant segons (un 4 o 5 en funció de l'ordinador) abans de veure l'efecte del canvi de la configuració.

b) L'ordre ifdown  desactiva una interfície. Exemple: ifdown  eth0 desactiva la interfície eth0.

c) L'ordre ifstatus permet coneixer l'estat d'una interficie. Ens indica la seva configuració i si està activa o no. Exemple: ifstatus  eth0.

d) L'ordre ifrenew  demana al servidor DHCP que es renovi la configuració de xarxa de la interfície. Exemple: ifrenew  eth0 renova la configuració de xarxa de la interfície eth0.

5- Ordre rcnetwork

Aquesta ordre es pròpia de la distribució openSUSE de GNU/Linux. Permet activar o desactivar una o totes les interfícies de xarxa al mateix temps  de la següent manera:

rcnetwork start --> Activa totes les interfícies de xarxa (inclosa lo)

rcnetwork stop --> Desactiva totes les interfícies de xarxa (menys lo)

rcnetwork start eth0 --> Activa totes la interfície de xarxa eth0.

rcnetwork stop eth0 --> Desactiva totes la interfície de xarxa eth0.

rcnetwork restart --> Desactiva i torna a activar totes les interfícies de xarxa (útil si hem fet un canvi en 1 o més arxius de configuració).

rcnetwork start eth0 --> Desactiva i torna a activar la interfície de xarxa eth0 (útil si hem fet un canvi de l'arxiu de configuració).

6- Ordre netstat: Introducció al concepte de port.

L'ordre netstat de GNU/Linux és força complexa. Nosaltres la utilitzarem per veure l'estat de les connexions de xarxa en el nostre ordinador i els ports que utilitzen aquestes connexions, i també per saber quins ports estem utilitzant per donar serveis, quin tipus de serveis són i quins són els programes responsables de donar-los.

Per fer aquesta feina, és millor ser usuari root. Llavors exexutarem la següent ordre des de l'interpret de comandaments:

netstat   -atupn

Aquesta ordre ens permeterà veure totes les connexións de xarxa (-a)de tipus TCP (-t) i UDP (-u), indicant el programa en el nostre ordinador que utilitza aquesta connexió, i la seva PID (-p). El format de sortida serà alfanumèric (-n). També ens indicarà el serveis de xarxa que estan posats en marxa, per quins ports escolten i quin és el nom del programa servidor i la seva PID. Les connexions de xarxa quan treballem amb TCP/IP són sempre TCP o UDP. Si volem veure noms en comptes de números, llavors haurem de treure l'opció -n. A continuació podem veure el resultat d'executar l'ordre netstat amb l'opció -n o sense -n


En aquest cas veiem una sèrie de serveis que estan funcionant. El fet que en l'adreça IP de Foreign Address posi 0.0.0.0 (o :::), que és equivalent a *, vol dir que s'accepta la connexió al servei des de qualsevol IP. Que posi * en la part del port, vol dir que s'accepta la connexió des de qualsevol port de l'ordinador remot. Que posi 0.0.0.0 (o :::), que és equivalent a *, vol dir que l'ordinador accepta la connexió al sevei per qualsevol de les seves interfíces de xarxa. En canvi, el servei ssh que utiliza el port 22, i que és oferit pel programa servidor sshd, amb PID 15870, només accepta connexions per la interfície de xarxa 192.16.8.1.3.
Com podeu veure l'estat de les connexions i ports TCP es LISTEN. Les connexions i serveis que treballen amb UDP no tenen LISTEN, perquè com es veu en la segona unitat didactica, UDP és un sistema de connexió més senzill que TCP, i a efectes pràctics, podem dir que estan LISTEN, tot i que no té gaire sentit parlar d'aquest estan quam parlem d'UDP. Les connexions i ports TCP poden trobar-se en diversos estats posibles, com podem veure a les pàgines 19 a 21 del document http://www.rfc-es.org/rfc/rfc0793-es.txt, cosa que no passa amb UDP. Podem veure que 192.168.1.5 ha establert pel seu port 3566 amb el port 80 de 192.168.1.3 (tot i que la connexió està a punt de finalitzar perquè la petició ja ha estat servida).

El nom per defecte dels serveis associats a cada port es troba al fitxer /etc/services. Canviant el noms dins d'aquests fitxers, la sortida de netstat seria diferent, tot i que el serveis podrien continuar essent els mateixos.

PRÀCTICA

1- Des de l'interpret d'ordres, configura la interfície de xarxa per que tingui l'àlies d'IP 192.168.1.X, on X és el número del teu ordinador i màscara 255.255.255.0. Comprova les teves adreces IP.
2- Des de l'interpret d'ordres,a fegeix el router 192.168.1.100 amb mètrica 1. Comprova la teva taula d'encaminaments.
3-
Des de l'interpret d'ordres, configura la interfície de xarxa per que tingui l'àlies d'IP 10.1.1.X, on X és el número del teu ordinador i màscara 255.0.0.0.
4- Des de l'interpret d'ordres,a fegeix el router 10.1.1.100 amb mètrica 2. Comprova la teva taula d'encaminaments.
5- Fes un ping a les teves adreces àlies d'IP.
6- Fes un ping a l'adreça IP d'un altre ordinador de l'àula, utilitzant la seva adreça de la subxarxa 192.168.1.0.
7- Fes un ping a l'adreça IP d'un altre ordinador de l'àula, utilitzant la seva adreça de la subxarxa 10.0.0.0.
8- Des de l'interpret d'ordres, Elimina de la taula d'encaminaments l'adreça del router 192.168.1.00 i 10.1..1.100
9-
Des de l'interpret d'ordres, Desactiva les teves dues adreces àlies d'IP.
10.-Configura via YaST dues adreces IP adicionals per  la teva interfície de xarxa. La primera adreça adicional serà 10.2.2.X
,on X és el número del teu ordinador, i màscara 255.0.0.0. La segona serà 192.168.100.X,on X és el número del teu ordinador, i màscara 255.255.255.0.
11.- Des de l'interpret d'ordres comprova que s'ha creat aquestes dues adreces adicional.
12.- Des de l'interpret d'ordres fes un ping a les dues adreces adicionals que has afegit des de YaST.
13.- Des de l'interpret d'ordres comprova la configuració de xarxa. Obre el fitxer de configuració de xarxa ifcfg-eth* i comprova la configuració permanent de la interfície.
14.- Des de YaST elimina les dues adreces IP adicionals.
15.- Des de l'interpret d'ordres comprova que s'han esborrat les dues adreces adicionals.
16.- Des de l'interpret d'ordres comprova la configuració de xarxa. Obre el fitxer de configuració de xarxa ifcfg-eth* i comprova la nova configuració permanent de la interfície.
17- Configura el sistema des de YaST per poder activar i desactivar la interfície de xarxa des del NetworkManager.
18.- Desactiva la interfície de xarxa des de 
NetworkManager. Des de l'interpret d'ordres, comprova l'estat de la interfície de xarxa.
19.-
Activa la interfície de xarxa des de NetworkManager. Des de l'interpret d'ordres, comprova l'estat de la interfície de xarxa.
20- Configura el sistema des de YaST per poder activar i desactivar la interfície de xarxa pel mètode tradiconal amb ifup.
21.- 
Des de l'interpret d'ordres, canvia la configuració permanent de la interfície de xarxa, modificant el teu arxiu ifcfg-eth*, de manera que tingui una IP estàtica de valor 172.16.230.X, on X és el número del teu ordinador, i màscara 255.255.0.0.
22.- Desactiva la interfície amb l'ordre ifdown. Comprova l'estat de la interfície amb l'ordre ifstatus.
Comprova l'adreça IP amb ifconfig.
23.- Activa la interfície amb l'ordre ifup. Comprova l'estat de la interfície amb l'ordre ifstatus. Comprova l'adreá IP amb ifconfig.
24.- Des de l'interpret d'ordres, canvia la configuració permanent de la interfície de xarxa, modificant el teu arxiu ifcfg-eth*, de manera que tingui una IP dinàmica.
25.- Reinicia la interfície de xarxa amb rcnetwork. Des de l'interpret d'ordres comprova l'estat de la interfície de xarxa.
26.- Utilitza ifrenew per tornar a demanar una adreça IP al servidor DHCP.
27.-Connectat amb firefox a www.google.us i comprova l'estat de les connexions. Indica amb quin port del servidor es connecta el programa client. Comprova el port utilitzat pel Firefox. Comprova l'estat de la connexió entre Firefox i www.google.cat.
28.- Atura el  programa Firefox, torna a executar-lo i torna a connectar-te a www.google.cat. Comprova si el port utilitzat pel Firefox és el mateix que el que tenia en la connexió anterior. Comprova si el port que utilitza el servidor és el mateix que en el cas anterior.
29.- Intenta connectar-te al servidor http://172.16.246.50 amb el Firefox. Pots connectar-te?.
30.- Intenta connectar-te al servidor anterior escrivint http://172.16.246.50:45000 amb el Firefox. Pots connectar-te?. Què vol dir el 45000 aquest?.
31- S'ha de lliurar un informe de la pràctica en format PDF a l'adreça de correu electrònic cf(arrova)collados.org. El nom del fitxer serà sti2_nom_cognom_pr2_linux.pdf. Nom i cognom són els vostre propis. A l'assumpte del correu heu de posar sti2_nom_cognom_pr2_linux. El vostre nom, cognom i curs també ha de posar-se al principi del treball. L'últim dia per lliurar el treball és el 27-10-2008. Cada dia que passi d'aquesta data, treuré dos punts a la nota del treball.