Versehentlich entfernte zugelassene VLANs aus dem Cisco Switch Dot1Q-Trunk

24

Ich füge einem vorhandenen Trunk-Port zwischen zwei Cisco Catalyst-Switches (3750) ein neues VLAN hinzu. Beim Hinzufügen des neuen VLAN wurden anscheinend die vorhandenen zulässigen VLANs auf dem Trunk entfernt. Wie ist dies möglich?

Bestehende Trunk-Port-Konfiguration:

SW-LAB-1#show run int g1/0/49
Building configuration...

Current configuration : 255 bytes
!
interface GigabitEthernet1/0/49
 description SW-LAB-2 G1/0/48
 switchport trunk encapsulation dot1q
 switchport trunk native vlan 10
 switchport trunk allowed vlan 10,20
 switchport mode trunk
 switchport nonegotiate
 ip dhcp snooping trust
end

Ich habe die folgende Syntax verwendet, um auch VLAN 30 zuzulassen:

SW-LAB-1#conf t
Enter configuration commands, one per line.  End with CNTL/Z.
SW-LAB-1(config)#interface g1/0/49
SW-LAB-1(config-if)#switchport trunk allow vlan 30

In meiner laufenden Konfiguration auf g1 / 0/49 fehlen jedoch die VLANs 10 und 20!

<SNIP>
switchport trunk allowed vlan 30
</SNIP>

Was vermisse ich?

Brett Lykins
quelle
13
Klassischer Fehler. Ich habe das schon so oft gesehen. ADD ist dein Retter hier :)
mellowd

Antworten:

39

Sie müssen den folgenden Befehl verwenden, um Ihr VLAN 30 einem vorhandenen Dot1Q-Trunk auf einem Cisco Catalyst-Switch hinzuzufügen:

switchport trunk allowed vlan add 30

Andernfalls denkt IOS nur, dass Sie versuchen, die vorhandene Konfiguration zu überschreiben, und es verbleibt ein versehentlich gelöschter Satz zulässiger VLANs.

Sie können auch "remove" anstelle von "add" verwenden, um nur ein VLAN zu entfernen. Die gesamte Syntax finden Sie weiter unten. (Es ist tatsächlich die gleiche Syntax in Cisco Nexus OS oder IOS, FYI.)

SW-FOO(config-if)#switchport trunk allowed vlan ?
  WORD    VLAN IDs of the allowed VLANs when this port is in trunking mode
  add     add VLANs to the current list
  all     all VLANs
  except  all VLANs except the following
  none    no VLANs
  remove  remove VLANs from the current list

Eine andere Möglichkeit besteht darin, alle zulässigen VLANs wie folgt in den Befehl einzufügen:

switchport trunk allowed vlan 10,20,30

Diese Option ist zeitaufwendiger, funktioniert aber auch.

Brett Lykins
quelle
1
Cisco hat möglicherweise viel Verwirrung mit diesem Befehl vermieden, indem "vlans" (Plural) zur Angabe der endgültigen Liste der zulässigen vlans und "vlan" (Singular) zur Angabe einer impliziten Additionsoperation verwendet wurden.
Generalnetworkerror
12
Ich empfehle, gefährliche Befehle wie diesen in TACACS zu löschen, damit Sie "switchport trunk allowed vlan X" nicht ausführen können, ohne add / remove / none. Der Arbeitsablauf für den neuen Port lautet dann 'switchport trunk allowed vlan none', 'switchport trunk allowed vlan add 42'. Hat uns ein paar Ausfallzeiten erspart. 'no router isis' ist auch gefährlich (versehentlich in interface eingeben, 'IP' vergessen, und du
entfernst
Als Vorsichtsmaßnahme schreiben wir in der Regel vor, dass die Ingenieure, die diese Art der Konfiguration vornehmen, einen Befehl "reload 5" eingeben, damit der Switch einige Minuten später auf die vorherige Konfiguration zurückgesetzt wird, wenn sie den Fehler machen. Dies bringt uns auch dazu, Automatisierungslösungen für unsere kritischeren Umgebungen in Betracht zu ziehen, um zu vermeiden, dass sich die Mitarbeiter vollständig an der CLI festsetzen.
Jeremy Gibbons
9

Um einem Trunk VLANs hinzuzufügen, müssen Sie die folgende Syntax verwenden:

switchport trunk allowed vlan add 30

Um ein VLAN aus dem Trunk zu entfernen, müssen Sie die folgende removeSyntax verwenden:

switchport trunk allowed vlan remove 30

Wenn Sie Add / Remove nicht verwenden, weisen Sie den Port an, nur das neue VLAN zu konfigurieren.

Dies ist ein häufiger Fehler. Wenn Ihre Plattform dies unterstützt, können Sie den Cisco Embedded Event Manager verwenden , um diese schädliche Syntax zu verbieten:

event manager applet forbid-vlan-trunk
 event cli pattern "switchport trunk allowed vlan\s+[0-9]" skip yes sync no
 action 1.0 syslog msg "switchport trunk allowed vlan MUST be configured via add/remove"
Sebastian Wiesinger
quelle
1
Oder verwenden Sie die TACACS- und Konfigurationsbefehlsberechtigung, wenn EEM nicht verfügbar ist.
aakso
1
Praktisch. Wäre besser, das Skript anzupassen, um auch die Ausgabe an die Konsole zu senden
mellowd
1
Mir ist nicht bekannt, dass EEM Ausgaben an die Konsole senden kann. Kannst du ein Beispiel geben?
Sebastian Wiesinger
0

Kurze Antwort: Es gibt zwei Modi zum Angeben von Vlans: Einer setzt (überschreibt) explizit die Liste [dies ist derjenige, den Sie verwendet haben], der andere fügt die angegebenen Vlans hinzu oder entfernt sie.

(Jeder Verkäufer macht das anders, also treten Sie leicht.)

Ricky Beam
quelle
0

Wie in den vorherigen Antworten angegeben, ist "add / remove / none" Ihr (einziger) Freund ...

switchport trunk allowed vlan add 30

Wie von ytti erwähnt, empfehle ich, gefährliche Befehle wie diesen in TACACS zu löschen, damit Sie "switchport trunk allowed vlan X" nicht ohne add / remove / none ausführen können.

Warum ich diese Antwort hinzugefügt habe, liegt an Bretts zweitem Vorschlag

switchport trunk allowed vlan 10,20,30

ist wirklich eine schlechte Idee

Nehmen wir an, Sie verwenden vlan 900 für die Verwaltung (dumme Idee, Sie werden übrigens sehen, warum)

Port Konfiguration mit einem Show Run:

interface Gi1/0/1
 ...
 switchport trunk allowed vlan 1,2,5,51,101,235,245,247
 switchport trunk allowed vlan add 507,539,900,1058,2677
 ...

Bitte beachten Sie, dass Cisco zwei Zeilen verwendet, um das Kopieren und Einfügen zu vereinfachen. In der zweiten Zeile wird ein "Add" eingefügt. Warum nicht?

Angenommen, ich möchte vlan 30 hinzufügen ...

erste lösung:

 switchport trunk allowed vlan add 30

Groß! Es funktioniert, lass uns jetzt ein Bier trinken.

Zweite Lösung:

 switchport trunk allowed vlan 1,2,5,30,51,101,235,245,247

und ... hum ... hey? WTF !!! Ich kann den zweiten Teil meines Befehls nicht einfügen

 switchport trunk allowed vlan add 507,539,900,1058,2677

Leider ist vlan 900 nicht mehr auf dem Switch konfiguriert, der Switch ist nicht erreichbar, da er für die Verwaltung verwendet wurde.

So :

  • benutze add / remove / none, immer
  • Verwalte eine kleine Vlan ID (<10)
Golgot
quelle
-3

Verwenden Sie diesen Befehl, wenn Sie ein VLAN hinzufügen, ohne ein anderes VLAN zu entfernen

switchport trunk erlaubt vlan add 30

Dadurch wird Vlan 30 zum Trunk hinzugefügt, ohne dass die vorhandenen Vlans in der Trunk-Schnittstelle entfernt werden

Prost

Gopi
quelle
Wie fügt dies der akzeptierten Antwort etwas hinzu?
Ron Maupin