Konfigurieren Sie Cisco ASA im transparenten Modus: Layer2 DMZ mit Vlan-Übersetzung


15

Ich bin mitten in einem Projekt, um einige vorhandene dot1q-Amtsleitungen mit Switched Ethernet hinter eine ASA-Firewall zu migrieren ... diese Amtsleitungen haben jeweils fünf vlans (nummeriert von 51 bis 55). Dies ist eine einfache Zeichnung des ursprünglichen Layer2-Dienstes ...

VLAN_Translation_00

Eine der Anforderungen ist es, einen ASA-Firewall-Kontext pro Vlan im ursprünglichen dot1q-Trunk zu haben. Dies bedeutet, dass ich einen BVI verwende, um die neue INSIDE-Schnittstelle in jedem FW-Kontext mit der DMZ-Schnittstelle zu verbinden. Aufgrund anderer Einschränkungen habe ich eine FW-Konfiguration wie diese (ich fasse alle Kontextinformationen zusammen, um die Frage zu vereinfachen) ...

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
!

Cisco ASAs im transparenten Modus werden mit zwei verschiedenen vlan-IDs für die Verbindung eines einzelnen Layer2-vlan-Diensts erstellt. Verbinden Sie die beiden Vlans miteinander interface BVI1. Die bridge-group 1Konfiguration auf jeder physischen Schnittstelle stellt die Verbindung zwischen Vlan51 und Vlan951 in der obigen Konfiguration her.

Angenommen, ASA: Gi0 / 2 wird mit 4507: Gi1 / 2 verbunden. Beachten Sie, was mit der DMZ-Schnittstelle geschieht. Der ASA DMZ Vlan ist 951 und wird über eine dot1q-Leitung mit dem DMZ-Switch (Cat4507) verbunden. Ich muss D1 mit Switchport 4507: Gi1 / 1 verbinden, aber ich muss D1 die Vlan951-955-Dienste als dot1q Vlan51-55 auf 4507: Gi1 / 1 bereitstellen. Mit anderen Worten, die Vlan-BVI-Auseinandersetzung, die ich mit der ASA machen musste, verfälscht die Vlan-Nummerierung in meiner ursprünglichen Service-Definition.

VLAN_translation_01

Leider kann ich die Vlans auf D1 nicht einfach neu nummerieren. Die perfekte Lösung wäre, Vlan951 auf 4507: Gi1 / 2 in Vlan51 auf 4507: Gi1 / 1 zu übersetzen. Cisco hat eine Funktion namens VLAN-Mapping , die jedoch offenbar QinQ erfordert. Alle meine Dienste sind einfach dot1q. In den Dokumenten zu 4500 VLAN-Mapping ist nicht klar, wie sie mit einfacher Dot1q-Kapselung umgehen.

Ich weiß, dass ich die Vlans im 4500 über ein Loopback-Kabel übersetzen kann, aber dies brennt zwei zusätzliche Ports pro Vlan ... insgesamt zehn zusätzliche Ports für alle Vlans im Dienst (v51 - v55).

Frage

Siehe das Diagramm unten.

VLAN_translation_01

Wie kann ich alle 95-fach nummerierten Vlans auf dem 4507: Gi1 / 2 dot1q-Trunk in Vlan5x auf 4507: Gi1 / 1 dot1q übersetzen? Ich muss die geringste Anzahl von Ports verwenden, die für den "Übersetzungsaufwand" verbraucht werden. Bitte fügen Sie Configs für alle Ports hinzu, die Ihre Antwort erfordert.

Ich bin offen für VLAN-Mapping , wenn jemand erklären kann, wie es in dieser Topologie funktionieren würde ...

Ausrüstung

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

Antworten:


13

Ich muss SUP7 nicht testen, aber es funktioniert mit SUP6 und SUP32. Ich gehe davon aus, dass SUP7 diese Funktionalität beibehält.

Ich habe zwischen JNPR M320 <-> SUP32 getestet und ' vlan mapping JNPR SUP32 ' funktioniert einwandfrei .

QinQ ist nicht erforderlich. Die QinQ-Option fügt einem bestimmten Tag das Top-Tag hinzu. So switchport vlan mapping 1042 dot1q-tunnel 42würde Karte eingehenden [1042] Stack [42 1042] Stapel. Im Gegensatz dazu switchport vlan mapping 1042 42ordnet das eingehende dot1q Vlan [1042] dem dot1q Vlan [42] zu.

JNPR M320-Konfiguration:

{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

SUP32-Konfiguration:

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

Und

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

Vielen Dank für das Beispiel ... Bisher verwenden Sie eine SVI, um das zu ersetzen, was ich in der ursprünglichen Frage als Gi1 / 1 bezeichne. Dies ist jedoch eine bessere Antwort, wenn sich herausstellt, dass Sie keine QinQ-Kapsel benötigen, um Vlan42 über den Sup32 hinaus gemeinsam zu nutzen. Ich werde es selbst versuchen, wenn ich zur Arbeit komme, wenn Sie nicht früher antworten ...
Mike Pennington

1
Es ist überhaupt kein QinQ beteiligt. Stellen Sie sich vor, Ihre FW ist mein M320 und Ihr SUP7 ist mein SUP32. In Ihrem SUP7-FW-Port schreiben Sie einfach das FW-VLAN auf das, was es extern sein soll 'Switchport-VLAN-Zuordnung <FW-VLAN> <externes VLAN>'
Dienstag,

5
Cisco führt die VLAN-Zuordnung auf zwei Arten durch. QinQ wird verwendet, um das ursprüngliche VLAN-Tag zu erhalten, während ein "fremdes" Netzwerk wie ein SP durchlaufen wird. Die hier gezeigte Eins-zu-Eins-VLAN-Zuordnung tauscht dot1q-Tags aus und ändert die VLAN-ID beim Weiterleiten oder Empfangen auf der angegebenen Schnittstelle. Beides würde für die gestellte Frage funktionieren.
Santino

QinQ-Anwendung ist meistens CustL2 - OperL2 - CustL2, dann konfigurieren Sie in operL2-Ports, die CustL2 zugewandt sind, 'Switchport-Modus dot1q-tunnel' und 'Switchport-Zugriff vlan 42'. Und alle CustL2-VLANs würden OperL2 als '[42 X]' übertragen. Bei OperL2 teilen sich jedoch alle diese MAC-Tabellen eine MAC-Tabelle, sodass diese nicht vollständig transparent ist. In VLANs an verschiedenen Cust-Standorten können keine X-Kollisionen auftreten. MACinMAC (PBB) ist eine transparentere Lösung mit besserer Skalierung (MAC-Verwendung im Core).
Ytti

Zu switchport vlan mapping enableIhrer Information , es sieht so aus, als ob es auf Sup7 nicht erforderlich ist ...
Mike Pennington

7

Einige Unterstützung für @yttis Antwort oben, hoffe es hilft:

orange # sh ver
Cisco IOS-Software, IOS-XE-Software, Catalyst 4500 L3-Switch-Software (cat4500e-UNIVERSALK9-M), Version 03.04.00.SG RELEASE SOFTWARE (fc3)
…
orange # sh mod
Gehäusetyp: WS-C4507R + E

Mod Ports Kartentyp Modell Seriennummer
--- + ----- + -------------------------------------- + - ----------------- + -----------
 4 4 Sup 7-E 10GE (SFP +), 1000BaseX (SFP) WS-X45-SUP7-E CAT1xxxxxxx 
…
orange # sh int ten4 / 1 ausführen
Gebäudekonfiguration ...

Aktuelle Konfiguration: 112 Bytes
!
Schnittstelle TenGigabitEthernet4 / 1
 Switchport-Modus Trunk
 switchport vlan mapping 100 10
 Ladeintervall 30
Ende

orange # sh int ten4 / 2 ausführen
!
Schnittstelle TenGigabitEthernet4 / 2
 Switchport-Modus Trunk
 Switchport-VLAN-Zuordnung 10 100
 Ladeintervall 30
…
orange # sh vlan Zuordnung 
Schnittstelle Te4 / 1:
VLANs on Wire Übersetzter VLAN-Betrieb
------------------------------ --------------- ----- ---------
100 10 1-zu-1
Schnittstelle Te4 / 2:
VLANs on Wire Übersetzter VLAN-Betrieb
------------------------------ --------------- ----- ---------
10 100 1-zu-1

3

Ich habe auch nicht das SUP zur Verfügung, kann dies aber leicht auf einem Brocade Netiron tun.

Fügen Sie einfach zwei Ports in einen VPLS ein und kennzeichnen Sie sie mit unterschiedlichen VLANs. Wie so:

router mpls

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

Das Schöne am Brocade ist, dass Sie jedes Tag in ein anderes Tag, Double-Tag in ein anderes Double-Tag, Double-Tag in Single-Tag und Single-Tag in Double-Tag konvertieren können


Ich muss Supervisor7 in einem c4507R + E für diesen Dienst verwenden.
Mike Pennington

Soweit ich weiß, handelt es sich hierbei nicht um eine Übersetzung, sondern um die Definition von zwei Endpunkten für diese VPLS-Instanz. Wenn Sie mehrere markierte Endpunkte in einer einzigen VPLS-Instanz definieren, wird der gesamte markierte Datenverkehr nur zusammengeführt. Die Übersetzung würde eine VPLS-Instanz auf einem Knoten sein, wobei der Endpunkt eine mit Tags versehene VLAN + -Schnittstelle ist, und dann dieselbe VPLS-Instanz auf einem anderen Knoten, wobei ein Endpunkt eine andere mit Tags versehene VLAN + -Schnittstelle ist.
John Jensen

Wenn Sie die Übersetzung auf einem Gerät ausführen möchten, müssen Sie außerdem eine vll-local-Instanz anstelle einer VPLS-Instanz verwenden.
John Jensen

Nein, diese VPLS wird funktionieren. Mit Brocade können Sie vll-local nicht verwenden und viel Flexibilität für Frames mit doppelten oder einfachen Tags verwenden. Und ja, obwohl dies "technisch" keine Übersetzung ist, ist es genau das, was es tun wird. dh in dem obigen Beispiel wird ein Frame mit einem vlan-Tag von 200, der in eth1 / 1 kommt, mit einem vlan-Tag von 300 aus eth1 / 2 austreten. Das Endergebnis ist also das, was das OP will - es wird sich natürlich nicht anpassen Beliebige Bpdu-Frames
Mellowd
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.