Diferència entre revisions de la pàgina «A5. Enrutament entre VLAN's»
(→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''' | ||
− | < | + | <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 | ||
− | </ | + | </pre> |
Línia 131: | Línia 128: | ||
'''Opció 2 - totalment automàtic''' | '''Opció 2 - totalment automàtic''' | ||
− | < | + | <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 | ||
− | </ | + | </pre> |
Verificació | Verificació | ||
− | < | + | <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 | ||
− | </ | + | </pre> |
− | < | + | <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: | ||
− | </ | + | </pre> |
Revisió del 21:59, 12 març 2012
Contingut
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:
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.
16 bits | 3 bits | 1 bit | 12 bits |
---|---|---|---|
(0x8100) |
|
||
(Prioritat) |
(Ind. format canònic) |
(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
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