IMPORTANT: Per accedir als fitxer de subversion: http://acacha.org/svn (sense password). Poc a poc s'aniran migrant els enllaços. Encara però funciona el subversion de la farga però no se sap fins quan... (usuari: prova i la paraula de pas 123456)

Alert.png Aquesta wiki forma part dels materials d'un curs
Curs: DissenyXarxesLinux, LinuxAdministracioAvancada, LPIC1_102
Fitxers: Consulteu LPI_109.1
Repositori SVN: https://svn.projectes.lafarga.cat/svn/iescopernic/ServeisInternet/moodle/Wifi
Usuari: anonymous
Paraula de pas: sense paraula de pas
Autors: Sergi Tur Badenas
Nivell 1: Nivell_d'interfície_de_xarxa_TCP/IP
Nivell 2: Nivell_d'internet_TCP/IP
Nivell 3: Nivell_de_transport_TCP/IP
Nivell 4: Nivell_d'aplicació_TCP/IP

Ethernet

Consulteu Ethernet

Switches

Recursos:


Comprovar el funcionament del protocol DHCP amb ifdown/ifup i tcpdump

Suposem la següent xarxa:

  • Xarxa Local Ethernet connectada per un Switch (Important! switch no HUB!) on tenim com a mínim dues màquines connectades (si no es disposa de dues màquines es pot utilitzar vmware. Podeu consultar la secció Configuració de xarxa amb vmware).
  • Suposem que la xarxa és de classe C (192.168.1.0) i que el gateway/router està a la primera adreça (192.168.1.1).

Ara el que farem és configurar una màquina per tal que capturi els paquets de broadcast que li arribin. Per això utilitzarem tcpdump. Suposem que la màquina que executa tcpdump té la IP 192.168.1.33. En aquesta màquina executem:

$ sudo tcpdump -i eth0 > captura.txt

Ara escollim una altra màquina de la xarxa. Suposarem que aquesta màquina està configurada amb dhcp i executarem

$ sudo ifdown eth0
$ sudo ifup eth0

Del protocol DHCP un altre cop només podem monitoritzar els paquets de broadcast. Si consultem el fitxer amb la captura

$ gedit captura.txt
20:23:06.112266 IP6 :: > ff02::16: HBH ICMP6, multicast listener report v2, 1 group record(s), length 28
20:23:06.112884 IP 192.168.1.33.33724 > 250.Red-80-58-61.staticIP.rima-tde.net.domain:  52211+[|domain]
20:23:06.214865 IP 250.Red-80-58-61.staticIP.rima-tde.net.domain > 192.168.1.33.33724:  52211 NXDomain[|domain]
20:23:06.218929 IP 192.168.1.33.33724 > 250.Red-80-58-61.staticIP.rima-tde.net.domain:  18421+ PTR? 250.61.58.80.in-addr.arpa. (43)
20:23:06.276936 IP 250.Red-80-58-61.staticIP.rima-tde.net.domain > 192.168.1.33.33724:  18421 1/0/0 (95)
20:23:06.277138 IP 192.168.1.33.33724 > 250.Red-80-58-61.staticIP.rima-tde.net.domain:  12416+ PTR? 33.1.168.192.in-addr.arpa. (43)
20:23:06.334835 IP 250.Red-80-58-61.staticIP.rima-tde.net.domain > 192.168.1.33.33724:  12416 NXDomain 0/1/0 (120)
20:23:06.568300 IP6 :: > ff02::1:ff60:3351: ICMP6, neighbor solicitation, who has fe80::2c0:9fff:fe60:3351, length 24
20:23:06.570249 IP 192.168.1.33.33724 > 250.Red-80-58-61.staticIP.rima-tde.net.domain:  51762+[|domain]
20:23:06.672881 IP 250.Red-80-58-61.staticIP.rima-tde.net.domain > 192.168.1.33.33724:  51762 NXDomain[|domain]
20:23:06.673035 IP 192.168.1.33.33724 > 250.Red-80-58-61.staticIP.rima-tde.net.domain:  54237+[|domain]
20:23:06.776857 IP 250.Red-80-58-61.staticIP.rima-tde.net.domain > 192.168.1.33.33724:  54237 NXDomain[|domain]
20:23:07.568394 IP6 fe80::2c0:9fff:fe60:3351 > ip6-allrouters: ICMP6, router solicitation, length 16
20:23:10.108578 IP6 fe80::2c0:9fff:fe60:3351 > ff02::16: HBH ICMP6, multicast listener report v2, 1 group record(s), length 28
20:23:11.109909 arp who-has 192.168.1.1 tell 192.168.1.33
20:23:11.110080 IP 192.168.1.33.33724 > 250.Red-80-58-61.staticIP.rima-tde.net.domain:  16370+ PTR? 1.1.168.192.in-addr.arpa. (42)
20:23:11.110168 arp reply 192.168.1.1 is-at 00:30:da:89:fc:8a (oui Unknown)
20:23:11.168758 IP 250.Red-80-58-61.staticIP.rima-tde.net.domain > 192.168.1.33.33724:  16370 NXDomain 0/1/0 (119)
20:23:11.568689 IP6 fe80::2c0:9fff:fe60:3351 > ip6-allrouters: ICMP6, router solicitation, length 16
20:23:13.001256 IP 0.0.0.0.bootpc > 255.255.255.255.bootps: BOOTP/DHCP, Request from 00:c0:9f:60:33:51 (oui Unknown), length: 300
20:23:13.001401 IP 192.168.1.33.33724 > 250.Red-80-58-61.staticIP.rima-tde.net.domain:  16006+ PTR? 255.255.255.255.in-addr.arpa. (46)
20:23:13.004457 IP 0.0.0.0.bootpc > 255.255.255.255.bootps: BOOTP/DHCP, Request from 00:c0:9f:60:33:51 (oui Unknown), length: 300
20:23:13.058722 IP 250.Red-80-58-61.staticIP.rima-tde.net.domain > 192.168.1.33.33724:  16006 NXDomain 0/1/0 (110)
20:23:13.058867 IP 192.168.1.33.33724 > 250.Red-80-58-61.staticIP.rima-tde.net.domain:  62997+ PTR? 0.0.0.0.in-addr.arpa. (38)
20:23:13.114879 IP 250.Red-80-58-61.staticIP.rima-tde.net.domain > 192.168.1.33.33724:  62997 NXDomain 0/1/0 (102)
20:23:15.569000 IP6 fe80::2c0:9fff:fe60:3351 > ip6-allrouters: ICMP6, router solicitation, length 16
20:23:16.001492 IP 0.0.0.0.bootpc > 255.255.255.255.bootps: BOOTP/DHCP, Request from 00:c0:9f:60:33:51 (oui Unknown), length: 300
20:23:16.168662 arp who-has 192.168.1.33 tell 192.168.1.1
20:23:16.168688 arp reply 192.168.1.33 is-at 00:30:1b:b7:cd:b6 (oui Unknown)
20:23:16.257045 arp who-has 192.168.1.1 tell 192.168.1.35
20:23:16.258142 IP 192.168.1.33.33724 > 250.Red-80-58-61.staticIP.rima-tde.net.domain:  3951+ PTR? 35.1.168.192.in-addr.arpa. (43)
20:23:16.316745 IP 250.Red-80-58-61.staticIP.rima-tde.net.domain > 192.168.1.33.33724:  3951 NXDomain 0/1/0 (120)


Comprovar el funcionament del protocol ARP amb nmap i tcpdump

Suposem la següent xarxa:

  • Xarxa Local Ethernet connectada per un Switch (Important! switch no HUB!) on tenim com a mínim dues màquines connectades (si no es disposa de dues màquines es pot utilitzar vmware. Podeu consultar la secció Configuració de xarxa amb vmware).
  • Suposem que la xarxa és de classe C (192.168.1.0) i que el gateway/router està a la primera adreça (192.168.1.1).

Ara el que farem és configurar una màquina per tal que capturi els paquets de broadcast que li arribin. Per això utilitzarem tcpdump. Suposem que la màquina que executa tcpdump té la ip 192.168.1.33. En aquesta màquina executem:

$ sudo tcpdump -i eth0 > captura.txt

Ara escollim una altra màquina de la xarxa (suposarem en aquest exemple que té la IP192.168.1.35). Si en aquesta màquina executem

$ sudo nmap 192.168.1.1/24

Tot el tràfic de BROADCAST generat per nmap es capturarà al fitxer captura.txt de la màquina que està executant tcpdump. Si consultem el fitxer que s'ha generat:

$ gedit captura.txt

Veurem entrades del protocol arp com les següents:

20:07:56.434191 arp who-has 192.168.1.0 (Broadcast) tell 192.168.1.35
20:07:56.330230 arp who-has 192.168.1.1 (Broadcast) tell 192.168.1.35
20:07:56.434213 arp who-has 192.168.1.2 (Broadcast) tell 192.168.1.35
20:07:56.434236 arp who-has 192.168.1.3 (Broadcast) tell 192.168.1.35
20:07:56.434260 arp who-has 192.168.1.4 (Broadcast) tell 192.168.1.35
..........................

Com podeu veure, nmap intenta conèixer les adreces MAC de totes les IPS de la xarxa enviant un paquet who-has (qui té la IP?) a tota la xarxa. Només aquelles IPS de màquines que estiguin connectades a la xarxa en aquell moment contesten amb un paquet arp-reply:

...
20:07:56.746246 arp who-has 192.168.1.33 (Broadcast) tell 192.168.1.35
20:07:56.746252 arp reply 192.168.1.33 is-at 00:30:1b:b7:cd:b6 (oui Unknown)

Però si hi ha tres màquines connectades (router- IP: 192.168.1.1 i dos hosts - IPs 192.168.1.33 i 192.168.1.35) per què només veiem una resposta?

Doncs precisament perquè en una xarxa amb Switch, tcpdump només pot capturar el tràfic dirigit a la màquina on s'executa tcpdump i el tràfic de BROADCAST. El paquet arp-reply no és de broadcast.

Com que tcpdump captura tot el tràfic, per tal d'evitar en la mesura del possible que el fitxer es barregi amb altres paquets que no siguin els generats per nmap, executarem les dues comandes gairebé al mateix temps i aturarem el tcpdump (Ctrl+C) tan bon punt l'execució de nmap s'hagi acabat.


Altres protocols

PPP. Point to Point Protocol

El protocol PPP permet establir una comunicació a nivell d'enllaç entre dues màquines. Generalment l'utilitzen els proveïdors d'Internet (ISPs) per establir una connexió a Internet a través d'un mòdem telefònic. Per a connexions de banda ampla s'utilitzen variants com PPPoE o PPPoA. A més de transportar les dades ofereix els següents serveis:

  • Autenticació: Usuari i contrasenya
  • Assignació dinàmica de IP: Permet als proveïdors d'Internet tenir menys adreces IP que clients (overbooking).
  • Encriptació:
  • Compressió de dades:

Amb ADSL, PPP o les seves variants s'utilitza per connectar els mòdems ADSL dels clients amb les pasarel·les ATM dels operadors de telecomunicacions.

Recursos:


PPP a Linux.dimoni PPPD

En la majoria dels casos s'utilitza ppp per configurar mòdems no ADSL (connexió telefònica) que tinguem connectats al port sèrie o al port USB. En mòdems ADSL no s'utilitza per que bàsicament ja no hi ha gairebé mòdems ADSL que no tinguin un port Ethernet amb el qual connectar via Ethernet el mòdem a la nostra targeta de xarxa (NIC) de la màquina Linux.

La configuració és senzilla i segueix una arquitectura client-servidor. El client és el sistema de xarxa de Linux i tenim un servidor que proveeix un servei/dimoni anomenat ppd.

El fitxer /etc/network/interfaces es configura de la següent manera:

iface ppp0 inet ppp
provider ppp0
auto ppp0

Aquesta configuració indica que la interfície ppp0 es configurarà amb les dades que aporti el dimoni pppd.

A la carpeta /etc/ppp/ trobarem totes les dades de configuració que utilitza l'aplicació (dimoni) /sbin/pppd:

$ ls -la /etc/ppp
total 80
drwxr-xr-x   8 root dip   4096 2006-11-07 15:31 .
drwxr-xr-x 144 root root  8192 2007-01-03 11:34 ..
-rw-------   1 root root   102 2007-01-03 15:54 chap-secrets
-rwxr-xr-x   1 root root  1749 2006-02-23 17:33 ip-down
drwxr-xr-x   2 root root  4096 2006-12-06 18:24 ip-down.d
-rwxr-xr-x   1 root root  1887 2006-02-23 17:33 ip-up
drwxr-xr-x   2 root root  4096 2006-12-06 18:24 ip-up.d
-rwxr-xr-x   1 root root   779 2006-02-23 17:33 ipv6-down
drwxr-xr-x   2 root root  4096 2006-02-23 17:33 ipv6-down.d
-rwxr-xr-x   1 root root   917 2006-02-23 17:33 ipv6-up
drwxr-xr-x   2 root root  4096 2006-02-23 17:33 ipv6-up.d
-rw-r--r--   1 root root 13208 2006-02-23 17:33 options
-rw-------   1 root root  1650 2007-01-03 15:54 pap-secrets
drwxr-s---   2 root dip   4096 2007-01-03 15:54 peers
-rwxr-xr-x   1 root root   137 2006-02-23 17:33 pppoe_on_boot
drwxr-xr-x   2 root root  4096 2006-02-23 17:37 resolv

Tot això es pot configurar automàticament (sempre que el mode sigui compatible amb Linux i no sigui un WinModem) amb l'entorn gràfic de configuració de xarxa (Sistema|Administració|Treball en xarxa):

PPTP2.jpg

PPTP3.jpg

Les dades de configuració són les que us ha d'aportar el vostre proveidor de serveis.

El paquet (a Ubuntu) que ens proporciona de suport ppp per a la xarxa és el paquet ppp. També es poden utilitzar els paquets pppconfig i pppoeconf per configurar les connexions ppp.

Recursos:


PPPoE. Point to Point Protocol over Ethernet

PPPoE és un protocol de xarxa que permet encapsular el protocol PPP sobre una capa Ethernet (s'encapsulen les trames PPP dins de les trames Ethernet). És utilitzat majoritariament per els ISP per a proveir connexions de banda ampla (ADSL, CABLEModem, xDSL). Té les mateixes avantatges que el protocol PPP (encriptació, autenticació i compressió de dades).

És un protocol de túnel que permet crear una connexió de xarxa a nivell IP entre dos ports Ethernet, establint un túnel on les comunicacions s'envien en sèrie i amb les característiques de PPP.

Un altre avantatge és que permet la reutilització d'adreces IP als proveidors d'internet (ISP), ja que només assigna una adreça IP quan la connexió PPPoE està establerta.

Recursos:


PPPoA. Point to Point Protocol over ATM

PPPoA (Protocol punt a punt sobre ATM) és un protocol de xarxa que encapsula PPP dins de trames ATM. És una mica millor que PPPoE però necesita tenir una xarxa ATM.

Recursos:


PPTP

PTP (Point to Point Tunneling Protocol) és un protocol desenvolupat pel consorci PPTP Fòrum, per implementar xarxes virtuals VPN. Les VPN són xarxes privades que utilitzen Internet per connectar els seus nodes. PPTP ha estat trencat i no s'haura d'utilitzar en xarxes on la privacitat fos una qüestió prioritària.

Recursos:


ATM

Asynchronous_Transfer_Mode ATM (Asynchronous_Transfer_Mode) és un protocol del nivell 2 d'enllaç.

Recursos:'


Frame Relay

Frame Relay és un protocol del nivell 2 d'enllaç de conmutació de paquets.


L2TP

Layer 2 Tunneling protocol

Recursos: