Diferència entre revisions de la pàgina «A5. Enrutament entre VLAN's»

De Wiki IES Marianao. Departament Informàtica
Dreceres ràpides: navegació, cerca
(Configuració amb protocol 802.1Q (Router))
 
(Hi ha 2 revisions intermèdies del mateix usuari que no es mostren)
Línia 1: Línia 1:
 +
torna [[ M7 - Planificació i administració de xarxes ]]
 +
 +
 
== Concepte ==
 
== Concepte ==
  
Línia 7: Línia 10:
 
Podem enrutar directament dues VLANs utilitzant cables però, de manera anàloga a altres aspectes estudiats en aquest mòdul, '''podem utilitzar un protocol per comunicar diverses VLANs de manera lògica a sobre d'una única interfaç física'''.
 
Podem enrutar directament dues VLANs utilitzant cables però, de manera anàloga a altres aspectes estudiats en aquest mòdul, '''podem utilitzar un protocol per comunicar diverses VLANs de manera lògica a sobre d'una única interfaç física'''.
  
== Protocols ==
 
 
L’enrutament es fa a través d’un protocol específic implementat a la capa 3 del model OSI. N’hi ha dos:
 
* El que és propietat de CISCO, anomenat ISL (Inter-Switch Link)
 
* El definit per l’estàndard IEEE 802.1q
 
 
Tant ISL com IEEE 802.1Q  marquen el paquet de dates amb un sistema que s’anomena en anglès '''explicit tagging''', és a dir, el paquet es marca explícitament amb l’etiqueta de la VLAN on pertany.
 
 
Per tant
 
 
* En mode '''access''', les trames no van etiquetades (no es modifiquen), només passa una única VLAN.
 
* En mode '''trunking''',les trames va etiquetades (tagged) i per tant es modifiquen depenent del protocol (ISL o 802.1Q)
 
 
== ISL ==
 
 
ISL fa servir un procés que no modifica la capçalera Ethernet:
 
 
[[Image:Islprotocol.jpg]]
 
 
== IEEE 802.1Q ==
 
 
Aquest protocol, en canvi fa servir un camp intern per etiquetar el paquet i, per tant, modifica la capçalera Ethernet. Això té un gran avantatge: fa que el paquet pugui anar per qualsevol tipus d’enllaç, incloent els més antics.
 
 
{| class="wikitable" border="1"
 
|+ Format de la capçalera IEEE 802.1Q (4 bytes)
 
! 16 bits!! 3 bits !! 1 bit !! 12 bits
 
|-
 
| <center>TPID <br />(0x8100)</center>|| <center>TCI</center> || ||
 
|-
 
| || <center>PCP<br />(Prioritat)</center>||<center>CFI<br /> (Ind. format canònic)</center>||<center>VID <br />(Id. Vlan)</center>
 
|}
 
 
* '''Tag Protocol Identifier (TPID)''': 16-bits amb el valor 0x8100 els quals identifiquen el paquet com a subjecte a l’estàndard IEEE 802.1Q.
 
* '''Tag Control Identifier (TCI)''': El que identifica la VLAN
 
** <u>Priority Code Point (PCP)</u>: 3 bits per indicar-ne la prioritat, des de 0 a 7 (0 “millor intent, 1 de més baix a 7 més alt). S’utilitza per prioritzar diferents classes de tràfic (CoS)
 
** <u>Canonical Format Indicator (CFI)</u>: Normalment val 0 (format canònic). El valor 1 és per compatibilitat amb xarxes Token Ring.
 
** <u>VLAN Identifier (VID)</u>: 12 bits que identifiquen la VLAN en sí. No s’hi poden utilitzar els valors 0x000 ni 0xFFF. Això dóna un total de 4094 xarxes disponibles (2^12 -2). 0x000 marca que el paquet no pertany a cap VLAN.
 
 
 
'''Esquema'''
 
 
[[Fitxer:TCPIP_802.1Q.jpg||1000px]]
 
  
 +
Es poden fer servir dues aproximacions per l'enrutament entre VLANs
  
== Configuració Encapsulament Switch ==
+
* '''Router-on-a-Stick''': Consisteix a convertir l'enllaç amb l'encaminador en un port troncal
 +
* '''Port enrutat. Commutadors multicapa''': consisteix en convertir el port que connecta amb l'encaminador en un port de capa 3. S'anomena ports enrutats o Switch Virtual Interface (SVI)
  
Alguns switchs no suporten el protocol ISL, només dot1q, per exemple models 2950
 
  
En altre però és pot configurar en el moment de definir la interface troncal
 
  
<code>Switch(config-if)#switchport trunk encapsulation dot1q</code>
+
== Router-on-a-Stick. Configuració amb protocol 802.1Q ==
  
 +
Es tracta de dividir el port físic de l'encaminador en subinterfícies que puguin entendre les trames etiquetades (802.1q).
  
== Configuració amb protocol 802.1Q (Router) ==
+
A més cada subinterfície actua com a porta d'enllaç d'una de les VLAN.  
  
 
<html><pre><code>Router(config)#interface FastEthernet 0/0.XX  
 
<html><pre><code>Router(config)#interface FastEthernet 0/0.XX  
Línia 74: Línia 36:
 
Router(config-subif)#encapsulation dot1q XX nativa  // VLAN nativa XX
 
Router(config-subif)#encapsulation dot1q XX nativa  // VLAN nativa XX
 
</code></pre></html>
 
</code></pre></html>
 +
 +
 +
 +
== Port enrutat. Switch Virtual Interface (SVI) ==
 +
 +
Només els commutadors anomenats multicapa disposen de les funcionalitats de la capa 3 necessàries.
 +
 +
El commutador s'apropia del rol de porta d'enllaç dels dispositius de la xarxa local
 +
 +
Al commutador multicapa:
 +
* Primerament cal activar l'encaminament amb la comanda ip routing.
 +
* A continuació també al commutador multicapa s'ha de definir una ruta per defecte que surti per la interfície de capa 3 del commutador, dirigida a l'adreça IP de l'encaminador.
 +
A l'encaminador:
 +
* Afegir les rutes per accedir a les xarxes IP de les diferents VLAN existents a la
 +
xarxa local.
 +
 +
  
 
== Configuració amb protocol 802.1Q (Linux) ==
 
== Configuració amb protocol 802.1Q (Linux) ==

Revisió de 19:01, 12 feb 2025

torna M7 - Planificació i administració de xarxes


Concepte

Enrutar dues VLANs consisteix en intercomunicar (de manera controlada) dues VLANs diferents. Amb quins objectius?

  • Centralitzar comunicacions a través d'un únic router (o un firewall amb dues interfaces o un servidor).
  • Comunicar VLANs amb l'exterior (per exemple, Internet).

Podem enrutar directament dues VLANs utilitzant cables però, de manera anàloga a altres aspectes estudiats en aquest mòdul, podem utilitzar un protocol per comunicar diverses VLANs de manera lògica a sobre d'una única interfaç física.


Es poden fer servir dues aproximacions per l'enrutament entre VLANs

  • Router-on-a-Stick: Consisteix a convertir l'enllaç amb l'encaminador en un port troncal
  • Port enrutat. Commutadors multicapa: consisteix en convertir el port que connecta amb l'encaminador en un port de capa 3. S'anomena ports enrutats o Switch Virtual Interface (SVI)


Router-on-a-Stick. Configuració amb protocol 802.1Q

Es tracta de dividir el port físic de l'encaminador en subinterfícies que puguin entendre les trames etiquetades (802.1q).

A més cada subinterfície actua com a porta d'enllaç d'una de les VLAN.

Router(config)#interface FastEthernet 0/0.XX 
Router(config-subif)#encapsulation dot1q XX  // Encapsulament i VLAN XX
Router(config-subif)#ip address A.B.C.D A.B.C.D     //IP del rang de una VLAN
Router(config-subif)#no shutdown


Per indicar que la VLAN encapsulada és la nativa


Router(config-subif)#encapsulation dot1q XX nativa  // VLAN nativa XX


Port enrutat. Switch Virtual Interface (SVI)

Només els commutadors anomenats multicapa disposen de les funcionalitats de la capa 3 necessàries.

El commutador s'apropia del rol de porta d'enllaç dels dispositius de la xarxa local

Al commutador multicapa:

  • Primerament cal activar l'encaminament amb la comanda ip routing.
  • A continuació també al commutador multicapa s'ha de definir una ruta per defecte que surti per la interfície de capa 3 del commutador, dirigida a l'adreça IP de l'encaminador.

A l'encaminador:

  • Afegir les rutes per accedir a les xarxes IP de les diferents VLAN existents a la

xarxa local.


Configuració amb protocol 802.1Q (Linux)

Configurar interface amb accés VLAN troncal a linux.

Associar una interface física a una o vàries vlan.

El tràfic sense tag entrarà per la interface física, en canvi el que arribi tagged entrarà per la vlan corresponent


Verificar que el kernel suporti el protocol 802.1q (VLAN)


# grep 8021Q /boot/config-`uname -r`

# CONFIG_VLAN_8021Q=m


Si apareix com a mòdul, cal carregar-lo manualment

# modprobe 8021q

Per carregar-lo a l'inici

# echo 8021q >> /etc/modules


Verificació

# dmesg | grep -i 802.1q

# lsmod | grep 8021q


Instal·lar les eines

# apt-get update

# apt-get install vlan


O desde /etc/network/interfaces


Opció 1 - Subinterfaces + configuració vlan manual

auto eth0
iface eth0 inet static
address 192.168.0.X
netmask 255.255.255.0


auto eth0.2
iface eth0.2 inet static
address 192.168.1.X
netmask 255.255.255.0


I després, eina "vconfig"

vconfig add eth0.10 2


Opció 2 - totalment automàtic

# Interfaz VLAN 802.1q (Trunk). Opcional, podem no indicar res
auto eth1
iface eth1 inet manual

iface vlan10 inet static
vlan-raw-device eth0
    address 192.168.110.2
    netmask 255.255.255.0
    broadcast 192.168.110.255

iface vlan2 inet static
vlan-raw-device eth0
    address 192.168.1.2
    netmask 255.255.255.0
    broadcast 192.168.1.255

iface vlan2:eth02 inet static    // Subinterface dins la mateixa vlan
vlan-raw-device eth0
    address 192.168.0.2
    netmask 255.255.255.0
    broadcast 192.168.0.255

iface vlan2:eth22 inet static    // Subinterface dins la mateixa vlan
vlan-raw-device eth0
    address 192.168.2.2
    netmask 255.255.255.0
    broadcast 192.168.2.255


Verificació

# cat /proc/net/vlan/config

VLAN Dev name     | VLAN ID
Name-Type: VLAN_NAME_TYPE_PLUS_VID_NO_PAD
vlan10         | 10  | eth0
vlan2          | 2  | eth0
vlan3          | 3  | eth0
# cat /proc/net/vlan/vlan10

vlan10  VID: 10     REORDER_HDR: 1  dev->priv_flags: 1
         total frames received      1479564
          total bytes received    173568547
      Broadcast/Multicast Rcvd          557

      total frames transmitted      2392974
       total bytes transmitted   3060405907
            total headroom inc            0
           total encap on xmit            0
Device: eth0t
INGRESS priority mappings: 0:0  1:0  2:0  3:0  4:0  5:0  6:0 7:0
 EGRESS priority mappings:


tcpcump -ne -i eth0 Comprovar que el tipus és 0x8100 i mostra la vlan

20:13:25.033294 00:21:85:10:fa:0b > 00:26:b6:df:ff:51, ethertype 802.1Q (0x8100), length 102: ethertype IPv4, 192.168.130.2 > 192.168.130.10: ICMP echo reply, id 47648, seq 40, length 64

tcpcump -ne -i vlan3 Mostra normal (sense tag)

20:14:24.221359 00:21:85:10:fa:0b > 00:26:b6:df:ff:51, ethertype IPv4 (0x0800), length 98: 192.168.130.2 > 192.168.130.10: ICMP echo reply, id 47648, seq 99, length 64