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 (Linux))
(Configuració amb protocol 802.1Q (Linux))
Línia 72: Línia 72:
  
  
<code>grep 8021Q /boot/config-`uname -r`</code>
+
<code># grep 8021Q /boot/config-`uname -r`</code>
  
<code>CONFIG_VLAN_8021Q=m</code>
+
<code># CONFIG_VLAN_8021Q=m</code>
  
  
Línia 88: Línia 88:
 
Verificació
 
Verificació
  
<code>
+
<code># dmesg | grep -i 802.1q</code>
# dmesg | grep -i 802.1q
 
  
# lsmod | grep 8021q
+
<code># lsmod | grep 8021q</code>
</code>
 
  
  
 
Instal·lar les eines
 
Instal·lar les eines
  
<code>
+
<code># apt-get update</code>
# apt-get update
+
 
# apt-get install vlan
+
<code># apt-get install vlan</code>
</code>
 
  
  
Línia 108: Línia 105:
 
'''Opció 1 - Subinterfaces + configuració vlan manual'''
 
'''Opció 1 - Subinterfaces + configuració vlan manual'''
  
<code>
+
<pre>
 
auto eth0
 
auto eth0
 
iface eth0 inet static
 
iface eth0 inet static
Línia 119: Línia 116:
 
address 192.168.1.X
 
address 192.168.1.X
 
netmask 255.255.255.0
 
netmask 255.255.255.0
</code>
+
</pre>
  
  
Línia 131: Línia 128:
 
'''Opció 2 - totalment automàtic'''
 
'''Opció 2 - totalment automàtic'''
  
<code>
+
<pre>
 
# Interfaz VLAN 802.1q (Trunk). Opcional, podem no indicar res
 
# Interfaz VLAN 802.1q (Trunk). Opcional, podem no indicar res
 
auto eth1
 
auto eth1
Línia 159: Línia 156:
 
     netmask 255.255.255.0
 
     netmask 255.255.255.0
 
     broadcast 192.168.2.255
 
     broadcast 192.168.2.255
</code>
+
</pre>
  
  
 
Verificació
 
Verificació
  
<code>
+
<pre>
 
# cat /proc/net/vlan/config
 
# cat /proc/net/vlan/config
  
Línia 172: Línia 169:
 
vlan2          | 2  | eth0
 
vlan2          | 2  | eth0
 
vlan3          | 3  | eth0
 
vlan3          | 3  | eth0
</code>
+
</pre>
  
<code>
+
<pre>
 
# cat /proc/net/vlan/vlan10
 
# cat /proc/net/vlan/vlan10
  
Línia 189: Línia 186:
 
INGRESS priority mappings: 0:0  1:0  2:0  3:0  4:0  5:0  6:0 7:0
 
INGRESS priority mappings: 0:0  1:0  2:0  3:0  4:0  5:0  6:0 7:0
 
  EGRESS priority mappings:
 
  EGRESS priority mappings:
</code>
+
</pre>
  
  

Revisió del 21:59, 12 març 2012

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.

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:

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.

Format de la capçalera IEEE 802.1Q (4 bytes)
16 bits 3 bits 1 bit 12 bits
TPID
(0x8100)
TCI
PCP
(Prioritat)
CFI
(Ind. format canònic)
VID
(Id. Vlan)
  • 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
    • Priority Code Point (PCP): 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)
    • Canonical Format Indicator (CFI): Normalment val 0 (format canònic). El valor 1 és per compatibilitat amb xarxes Token Ring.
    • VLAN Identifier (VID): 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

TCPIP 802.1Q.jpg


Configuració amb protocol 802.1Q (Router)

Router(config)#interface FAstEthernet 0/0.1

Router(config-subif)#encapsulation dot1q 20 // Encapsulament i VLAN 20

Router(config-subif)#ip address ... //IP del rang de una VLAN


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