Configure Cisco ASA en modo transparente: Layer2 DMZ con traducción de Vlan

15

Estoy en medio de un proyecto para migrar algunos enlaces troncales dot1q de ethernet conmutados existentes detrás de un firewall ASA ... estos enlaces tienen cinco vlans cada uno (numerados 51-55). Este es un dibujo simple del servicio original de layer2 ...

VLAN_Translation_00

Uno de los requisitos es tener un contexto de firewall ASA por Vlan en el enlace troncal dot1q original. Esto significa que termino usando un BVI para conectar la nueva interfaz INSIDE a la interfaz DMZ en cada contexto FW. Debido a otras restricciones, termino con una configuración de FW como esta (estoy resumiendo todo el contexto para simplificar la pregunta) ...

firewall transparent
!
interface GigabitEthernet0/1.51
 vlan 51
 nameif INSIDE
 security-level 100
 bridge-group 1
!
interface GigabitEthernet0/2.951
 vlan 951
 nameif DMZ
 security-level 50
 bridge-group 1
!
interface BVI1
 ip address 10.10.51.240 255.255.255.0 standby 10.10.51.241
!

Los ASA de Cisco en modo transparente terminan usando dos ID de vlan diferentes para conectar un solo servicio de vlan de capa2. Conecte los dos vlans a través interface BVI1; La bridge-group 1configuración en cada interfaz física establece la conexión entre Vlan51 y Vlan951 en la configuración anterior.

Suponga que ASA: Gi0 / 2 se conecta a 4507: Gi1 / 2 ... Observe lo que sucede con la interfaz DMZ ... el ASA DMZ Vlan es 951, y esto se conecta a través de un enlace dot1q al conmutador DMZ (el Cat4507). Necesito conectar D1 al puerto de conmutación 4507: Gi1 / 1, pero debo entregar los servicios Vlan951-955 a D1 como dot1q Vlan51-55 en 4507: Gi1 / 1. En otras palabras, la disputa Vlan BVI que tuve que hacer en el ASA arruina la numeración de Vlan en mi definición de servicio original.

VLAN_translation_01

Lamentablemente, no puedo renumerar fácilmente los Vlans en D1. La solución perfecta sería traducir de alguna manera Vlan951 en 4507: Gi1 / 2 a Vlan51 en 4507: Gi1 / 1. Cisco tiene una característica llamada mapeo vlan , pero parece requerir QinQ ... todos mis servicios son simples dot1q ... los documentos de mapeo 4500 vlan no tienen claro cómo manejan la encapsulación dot1q simple.

Sé que puedo traducir los vlans en el 4500 a través del cable de bucle invertido, pero esto quema dos puertos adicionales por Vlan ... un total de diez puertos adicionales para todos los Vlans en el servicio (v51 - v55).

Pregunta

Hacer referencia al diagrama de abajo.

VLAN_translation_01

¿Cómo puedo traducir todos los Vlans numerados 95x en 4507: Gi1 / 2 dot1q troncal para que se numeren Vlan5x en 4507: Gi1 / 1 dot1q? Necesito usar la menor cantidad de puertos consumidos para la "sobrecarga de traducción". Incluya configuraciones para todos los puertos que requiera su respuesta.

Estoy abierto a la asignación de vlan , si alguien puede explicar cómo funcionaría en esta topología ...

Equipo

  • 4507R + E, Sup7L-E con IOS XE 3.4.0
  • ASA5555X con 9.0 (2)
Mike Pennington
fuente

Respuestas:

13

No tengo SUP7 para probar, pero funciona en SUP6 y SUP32, supongo que SUP7 conserva esta funcionalidad.

He probado entre JNPR M320 <-> SUP32, y ' vlan mapping JNPR SUP32 ' funciona bien.

No hay necesidad de QinQ, lo que hace la opción QinQ es que agrega la etiqueta superior a una etiqueta en particular. Entonces switchport vlan mapping 1042 dot1q-tunnel 42mapearía la pila [1042] entrante a la pila [42 1042]. A diferencia de los switchport vlan mapping 1042 42mapas que ingresan dot1q Vlan [1042] a dot1q Vlan [42].

Configuración de JNPR M320:

{master}[edit interfaces ge-0/1/0 unit 1042]
user@m320# show 
vlan-id 1042;
family inet {
    address 10.42.42.1/24;
}
{master}[edit interfaces ge-0/1/0 unit 1042]
user@m320# run show interfaces ge-0/1/0               
Physical interface: ge-0/1/0, Enabled, Physical link is Up
  Interface index: 135, SNMP ifIndex: 506
  Description: B: SUP32 ge5/1
  Link-level type: Flexible-Ethernet, MTU: 9192, Speed: 1000mbps, BPDU Error: None,
  MAC-REWRITE Error: None, Loopback: Disabled, Source filtering: Disabled, Flow control: Disabled,
  Auto-negotiation: Enabled, Remote fault: Online
  Device flags   : Present Running
  Interface flags: SNMP-Traps Internal: 0x4000
  CoS queues     : 8 supported, 8 maximum usable queues
  Current address: 00:12:1e:d5:90:7f, Hardware address: 00:12:1e:d5:90:7f
  Last flapped   : 2013-02-19 09:14:29 UTC (19w6d 21:12 ago)
  Input rate     : 4560 bps (5 pps)
  Output rate    : 6968 bps (4 pps)
  Active alarms  : None
  Active defects : None
  Interface transmit statistics: Disabled

Configuración SUP32:

SUP32#show run int giga5/1
Building configuration...

Current configuration : 365 bytes
!
interface GigabitEthernet5/1
 description F: M320 ge-0/1/0
 switchport
 switchport trunk encapsulation dot1q
 switchport mode trunk
 switchport nonegotiate
 switchport vlan mapping enable
 switchport vlan mapping 1042 42
 mtu 9216
 bandwidth 1000000
 speed nonegotiate
 no cdp enable
 spanning-tree portfast edge trunk
 spanning-tree bpdufilter enable
end

SUP32#show ru int vlan42
Building configuration...

Current configuration : 61 bytes
!
interface Vlan42
 ip address 10.42.42.2 255.255.255.0
end

SUP32#sh int GigabitEthernet5/1 vlan mapping  
State: enabled
Original VLAN Translated VLAN
------------- ---------------
  1042           42  

SUP32#sh int vlan42                           
Vlan42 is up, line protocol is up 
  Hardware is EtherSVI, address is 0005.ddee.6000 (bia 0005.ddee.6000)
  Internet address is 10.42.42.2/24
  MTU 1500 bytes, BW 1000000 Kbit, DLY 10 usec, 
     reliability 255/255, txload 1/255, rxload 1/255
  Encapsulation ARPA, loopback not set
  Keepalive not supported
  ARP type: ARPA, ARP Timeout 04:00:00
  Last input 00:00:09, output 00:01:27, output hang never
  Last clearing of "show interface" counters never
  Input queue: 0/75/0/0 (size/max/drops/flushes); Total output drops: 0
  Queueing strategy: fifo
  Output queue: 0/40 (size/max)
  5 minute input rate 0 bits/sec, 0 packets/sec
  5 minute output rate 0 bits/sec, 0 packets/sec
  L2 Switched: ucast: 17 pkt, 1920 bytes - mcast: 0 pkt, 0 bytes
  L3 in Switched: ucast: 0 pkt, 0 bytes - mcast: 0 pkt, 0 bytes mcast
  L3 out Switched: ucast: 0 pkt, 0 bytes mcast: 0 pkt, 0 bytes
     38 packets input, 3432 bytes, 0 no buffer
     Received 21 broadcasts (0 IP multicasts)
     0 runts, 0 giants, 0 throttles 
     0 input errors, 0 CRC, 0 frame, 0 overrun, 0 ignored
     26 packets output, 2420 bytes, 0 underruns
     0 output errors, 0 interface resets
     0 output buffer failures, 0 output buffers swapped out

Y

SUP32#ping 10.42.42.1

Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 10.42.42.1, timeout is 2 seconds:
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 1/1/1 ms
SUP32#sh arp | i 10.42.42.1
Internet  10.42.42.1             12   0012.1ed5.907f  ARPA   Vlan42
SUP32#show mac address-table dynamic address 0012.1ed5.907f
Legend: * - primary entry
        age - seconds since last seen
        n/a - not available

  vlan   mac address     type    learn     age              ports
------+----------------+--------+-----+----------+--------------------------
Active Supervisor:
*  450  0012.1ed5.907f   dynamic  Yes          0   Gi5/1
*   50  0012.1ed5.907f   dynamic  Yes          0   Gi5/1
*   40  0012.1ed5.907f   dynamic  Yes          0   Gi5/1
*   42  0012.1ed5.907f   dynamic  Yes          5   Gi5/1


user@m320# run ping 10.42.42.2 count 2 
PING 10.42.42.2 (10.42.42.2): 56 data bytes
64 bytes from 10.42.42.2: icmp_seq=0 ttl=255 time=0.495 ms
64 bytes from 10.42.42.2: icmp_seq=1 ttl=255 time=0.651 ms

--- 10.42.42.2 ping statistics ---
2 packets transmitted, 2 packets received, 0% packet loss
round-trip min/avg/max/stddev = 0.495/0.573/0.651/0.078 ms

{master}[edit interfaces ge-0/1/0 unit 1042]
user@m320# run show arp no-resolve |match 10.42.42.2 
00:05:dd:ee:60:00 10.42.42.2      ge-0/1/0.1042        none
ytti
fuente
Gracias por el ejemplo ... Hasta ahora, estás usando un SVI para reemplazar lo que llamo Gi1 / 1 en la pregunta original; sin embargo, esta sería una mejor respuesta si demuestra que no necesita QinQ encap para compartir Vlan42 más allá del Sup32. Lo intentaré yo mismo cuando llegue al trabajo si no respondes antes ...
Mike Pennington
1
No hay QinQ en absoluto involucrado. Imagina que tu FW es mi M320 y tu SUP7 es mi SUP32. En su puerto SUP7 FW, simplemente reescriba la VLAN FW a lo que debería ser externamente 'asignación de vlan de switchport <VLAN FW> <VLAN externa>'
ytti
55
Cisco hace mapeo de VLAN de dos maneras. QinQ se utiliza para preservar la etiqueta VLAN original al atravesar una red "extraña" como un SP. La asignación de VLAN de uno a uno, que es lo que se muestra aquí, intercambia las etiquetas dot1q, cambiando la ID de VLAN al reenviar o recibir en la interfaz dada. Ambos funcionarían para la pregunta dada.
Santino
La aplicación QinQ es principalmente esta CustL2 - OperL2 - CustL2, luego, en los puertos operL2 frente a CustL2, se configura el 'modo de puerto de switch dot1q-tunnel' y el 'acceso de puerto de switch vlan 42'. Y todas las VLAN CustL2 transitarían OperL2 como '[42 X]'. Sin embargo, en OperL2, todos estos comparten una sola tabla MAC, por lo que no es completamente transparente, no puede haber colisión de X en VLAN en diferentes sitios de Cust. MACinMAC (PBB) es una solución más transparente con una mejor escala (uso de MAC en el núcleo).
ytti
FYI, parece que switchport vlan mapping enableno se requiere en Sup7 ...
Mike Pennington
7

algún soporte para la respuesta de @ytti anterior, espero que ayude

naranja # sh ver
Cisco IOS Software, IOS-XE Software, Catalyst 4500 L3 Switch Software (cat4500e-UNIVERSALK9-M), Versión 03.04.00.SG SOFTWARE DE LIBERACIÓN (fc3)
...
naranja # sh mod
Tipo de chasis: WS-C4507R + E

Puertos mod. Tipo de tarjeta Modelo Número de serie
--- + ----- + -------------------------------------- + - ----------------- + -----------
 4 4 Sup 7-E 10GE (SFP +), 1000BaseX (SFP) WS-X45-SUP7-E CAT1xxxxxxx 
...
naranja # sh ejecutar int ten4 / 1
Configuración de construcción...

Configuración actual: 112 bytes
!
interfaz TenGigabitEthernet4 / 1
 modo de switchport troncal
 Switchport vlan mapping 100 10
 intervalo de carga 30
final

naranja # sh ejecutar int ten4 / 2
!
interfaz TenGigabitEthernet4 / 2
 modo de switchport troncal
 Switchport vlan mapping 10100
 intervalo de carga 30
...
mapeo naranja # sh vlan 
Interfaz Te4 / 1:
VLAN en cable Operación de VLAN traducida
------------------------------ --------------- ----- ---------
100 10 1 a 1
Interfaz Te4 / 2:
VLAN en cable Operación de VLAN traducida
------------------------------ --------------- ----- ---------
10 100 1 a 1
liso
fuente
3

Yo tampoco tengo ese SUP disponible, pero puedo hacerlo fácilmente en un Brocade Netiron.

Simplemente coloque dos puertos en un VPLS y etiquételos con diferentes vlans. Al igual que:

router mpls

    vpls translate test 100
     vlan 200
     tagged ethe 1/1
     vlan 300
     tagged eth1/2

Lo bueno de Brocade es que puede convertir cualquier etiqueta a otra etiqueta, doble etiqueta a otra etiqueta doble, etiqueta doble a etiqueta única y etiqueta única a etiqueta doble

mellowd
fuente
Tengo que usar Supervisor7 en un c4507R + E para este servicio.
Mike Pennington
Según tengo entendido, esto técnicamente no es traducción: está definiendo dos puntos finales para esa instancia de VPLS. Definir múltiples puntos finales etiquetados como este en una sola instancia de VPLS es realmente unir todo el tráfico etiquetado. La traducción sería una instancia de VPLS en un nodo, con el punto final como una interfaz VLAN + etiquetada, y luego esa misma instancia de VPLS en otro nodo con un punto final como una interfaz VLAN + etiquetada diferente.
John Jensen
También agrega que si desea hacer la traducción en un dispositivo, necesitaría usar un vll-local en lugar de una instancia de VPLS.
John Jensen
No, este VPLS funcionará. Brocade no le permitirá usar vll-local y usar mucha flexibilidad en marcos con etiquetas dobles / simples. Y sí, aunque "técnicamente" esto no es una traducción, eso es exactamente lo que hará. es decir, en el ejemplo anterior, un marco con una etiqueta vlan de 200 entrando en eth1 / 1 saldrá de eth1 / 2 con una etiqueta vlan de 300. Entonces, el resultado final es lo que quiere el OP: por supuesto, no se ajustará cualquier fotograma bpdu
mellowd