Configurare Cisco ASA in modalità Trasparente: Layer2 DMZ con traduzione Vlan


15

Sono nel mezzo di un progetto per migrare alcuni trunk dot1q Ethernet commutati esistenti dietro un firewall ASA ... questi trunk hanno cinque Vlan ciascuno (numerati 51 - 55). Questo è un semplice disegno del servizio layer2 originale ...

VLAN_Translation_00

Uno dei requisiti è disporre di un contesto firewall ASA per Vlan nel trunk dot1q originale. Questo significa che finisco per usare un BVI per collegare la nuova interfaccia INSIDE all'interfaccia DMZ in ogni contesto FW. A causa di altri vincoli, finisco con una configurazione FW come questa (sto riassumendo tutte le cose del contesto per semplificare la domanda) ...

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
!

Gli ASA Cisco in modalità trasparente finiscono per utilizzare due diversi ID vlan per connettere un singolo servizio vlan layer2. Collegare i due vlans attraverso interface BVI1; la bridge-group 1configurazione su ciascuna interfaccia fisica stabilisce la connessione tra Vlan51 e Vlan951 nella configurazione precedente.

Supponiamo ASA: Gi0 / 2 si connette a 4507: Gi1 / 2 ... Nota cosa succede all'interfaccia DMZ ... ASA DMZ Vlan è 951, e questo si collega tramite un trunk dot1q allo switch DMZ (Cat4507). Devo connettere D1 allo switchport 4507: Gi1 / 1, ma devo fornire i servizi Vlan951-955 a D1 come dot1q Vlan51-55 su 4507: Gi1 / 1. In altre parole, il conflitto Vlan BVI che ho dovuto fare sull'ASA incasina la numerazione Vlan nella mia definizione di servizio originale.

VLAN_translation_01

Purtroppo, non posso facilmente rinumerare i Vlan su D1. La soluzione perfetta sarebbe in qualche modo tradurre Vlan951 su 4507: Gi1 / 2 in Vlan51 su 4507: Gi1 / 1. Cisco ha una funzione chiamata mappatura vlan , ma sembra richiedere QinQ ... tutti i miei servizi sono dot1q semplici ... i documenti di mappatura vlan 4500 non sono chiari su come gestiscono l'incapsulamento dot1q semplice.

So di poter tradurre i vlan nel 4500 tramite cavo loopback, ma questo brucia due porte extra per Vlan ... un totale di dieci porte extra per tutti i Vlan nel servizio (v51 - v55).

Domanda

Fare riferimento allo schema seguente.

VLAN_translation_01

Come posso tradurre tutti i Vlan numerati 95x sul trunk 4507: Gi1 / 2 dot1q per essere numerati Vlan5x su 4507: Gi1 / 1 dot1q? Devo utilizzare il minor numero di porte consumate per "overhead di traduzione". Includi le configurazioni per tutte le porte richieste dalla tua risposta.

Sono aperto alla mappatura vlan , se qualcuno può spiegare come funzionerebbe in questa topologia ...

attrezzatura

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

Risposte:


13

Non ho SUP7 da testare, ma funziona su SUP6 e SUP32, presumo che SUP7 mantenga questa funzionalità.

Ho testato tra JNPR M320 <-> SUP32 e ' Vlan mapping JNPR SUP32 ' funziona bene.

Non è necessario QinQ, ciò che fa l'opzione QinQ è l'aggiunta del tag superiore a un tag in particolare. Quindi switchport vlan mapping 1042 dot1q-tunnel 42mapperebbe lo stack [1042] in arrivo sullo stack [42 1042]. Al contrario di switchport vlan mapping 1042 42quale mappa arriva dot1q Vlan [1042] a dot1q Vlan [42].

Config 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

Configurazione 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

E

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

Grazie per l'esempio ... Finora, stai usando un SVI per sostituire quello che sto chiamando Gi1 / 1 nella domanda originale; tuttavia, questa sarebbe una risposta migliore se si dimostra che non è necessario il QCQ Encap per condividere Vlan42 oltre la Sup32 stessa. Lo proverò io stesso quando potrò lavorare se non rispondi prima ...
Mike Pennington,

1
Non è affatto coinvolto QinQ. Immagina che il tuo FW sia il mio M320 e il tuo SUP7 sia il mio SUP32. Nella tua porta SUP7 FW devi solo riscrivere la VLAN FW su quella che dovrebbe essere esternamente 'switchport vlan mapping <
VW

5
Cisco esegue la mappatura VLAN in due modi. QinQ viene utilizzato per preservare il tag VLAN originale mentre si attraversa una rete "esterna" come un SP. La mappatura VLAN one-to-one, che è ciò che viene mostrato qui, scambia i tag dot1q, modificando l'ID VLAN durante l'inoltro o la ricezione sulla data interfaccia. Entrambi funzionerebbero per la domanda data.
Santino,

L'applicazione QinQ è principalmente questa CustL2 - OperL2 - CustL2, quindi nelle porte operL2 di fronte a CustL2 si configura 'switchport mode dot1q-tunnel' e 'switchport access vlan 42'. E tutte le VLAN CustL2 transiteranno su OperL2 come '[42 X]'. Tuttavia, in OperL2 tutti condividono una singola tabella MAC, quindi non è completamente trasparente, non è possibile far collidere X in VLAN in diversi siti Cust. MACinMAC (PBB) è una soluzione più trasparente con un miglior ridimensionamento (uso MAC nel core).
Sì,

Cordiali saluti, sembra che switchport vlan mapping enablenon sia necessario su Sup7 ...
Mike Pennington

7

qualche supporto per la risposta di @ytti sopra, spero che ti aiuti:

orange # sh ver
Software Cisco IOS, software IOS-XE, software switch Catalyst 4500 L3 (cat4500e-UNIVERSALK9-M), versione 03.04.00.SG SOFTWARE DI RILASCIO (fc3)
...
arancione # sh mod
Tipo di telaio: WS-C4507R + E

Porte Mod Tipo di scheda Modello Numero di serie
--- + ----- + -------------------------------------- + - ----------------- + -----------
 4 4 Sup 7-E 10GE (SFP +), 1000BaseX (SFP) WS-X45-SUP7-E CAT1xxxxxxx 
...
orange # sh run int ten4 / 1
Configurazione dell'edificio ...

Configurazione corrente: 112 byte
!
interfaccia TenGigabitEthernet4 / 1
 trunk modalità switchport
 switchport vlan mapping 100 10
 intervallo di carico 30
fine

orange # sh run int ten4 / 2
!
interfaccia TenGigabitEthernet4 / 2
 trunk modalità switchport
 switchport vlan mapping 10 100
 intervallo di carico 30
...
orange # sh mappatura vlan 
Interfaccia Te4 / 1:
VLAN su cavo Funzionamento VLAN tradotto
------------------------------ --------------- ----- ---------
100 10 1 a 1
Interfaccia Te4 / 2:
VLAN su cavo Funzionamento VLAN tradotto
------------------------------ --------------- ----- ---------
10 100 1 a 1

3

Anch'io non ho quel SUP disponibile, ma posso farlo facilmente su un Broiron Netiron.

Basta inserire due porte in un VPLS e contrassegnarle con diversi vlan. Così:

router mpls

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

La cosa bella di Brocade è che puoi convertire qualsiasi tag in un altro tag, doppio tag in un altro doppio tag, doppio tag in singolo tag e singolo tag in doppio tag


Devo usare Supervisor7 in un c4507R + E per questo servizio.
Mike Pennington,

Da quanto ho capito, tecnicamente questa non è traduzione, ma sta definendo due endpoint per quell'istanza VPLS. Definire più endpoint con tag come questo in una singola istanza di VPLS è semplicemente unire tutto il traffico con tag insieme. La traduzione sarebbe un'istanza VPLS su un nodo, con l'endpoint che è un'interfaccia VLAN + con tag, e quindi quella stessa istanza VPLS su un altro nodo con un endpoint che è un'interfaccia VLAN + con tag diverso.
John Jensen,

Inoltre, aggiungendo che se si desidera eseguire la traduzione su un dispositivo, è necessario utilizzare un'istanza vll-local anziché un'istanza VPLS.
John Jensen,

No, questo VPLS funzionerà. Brocade non ti permetterà di usare vll-local e usare molta flessibilità su frame con tag doppio / singolo. E sì, mentre "tecnicamente" questa non è una traduzione, è esattamente quello che farà. vale a dire nell'esempio sopra un frame con un tag vlan di 200 che entra in eth1 / 1 uscirà da eth1 / 2 con un tag vlan di 300. Quindi il risultato finale è ciò che l'OP vuole - Ovviamente non si adatterà eventuali frame bpdu
mellowd
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.