Duplexitás és speed átállítása távolról TCL segítségével

Gőgös Barnabás

Senior Systems Engineer

Barnabas.Gogos@alef.com

A Cisco eszközök interfészeinek duplexitás és sebesség beállítására az a jól ismert gyakorlat, hogy a hálózati aktív eszközök között a manuális konfiguráció a javasolt, a végpontok felé viszont érdemes meghagyni az alapértelmezett auto beállítást, hiszen a notebookok, PC-k, szerverek, nyomtatók interfészei is így vannak beállítva.  Ha két automatikus beállításra konfigurált eszközt összekötünk akkor a folyamat eredménye az elérhető legmagasabb sebesség és full-duplex érték lesz.  Ellenben, ha két router közül az egyiket manuálisan állítjuk be, de a másikat auto beállításon hagyjuk, akkor az automatizált folyamat eredménye függetlenül a szemben levő eszköz manuális beállításától 10 megabit sebesség és half duplex érték lesz; az esetlegesen inkompatibilis eredményre figyelmeztet minket a CDP, de ha a sebesség is eltér a két eszközön akkor az interfészek állapota up/down lesz.  A továbbiakban bemutatom, hogy milyen ellentmondásos helyzet kerekedhet ki az interfészek helytelen beállításából és mutatok egy megoldást, hogy miként lehet megoldani ezt a helyzetet biztonságosan, akár távolról is.

 

Az 1. ábrán egy ügyfél internet összeköttetését láthatjuk.  A vonal sebessége 10 megabit, ezért a szolgáltató az iparági javaslatnak megfelelően manuálisan 10Mbps, full-duplex értékre állította be az ISP router G0/0 interfészét.  Az ügyfélhez kiment egy field engineer, üzembe helyezte az R1 routert beállított egy alap konfigurációt, aminek segítségével távolról be tudtunk lépni az eszközre és véglegesítettük a beállításokat.  Biztonsági okokból leállítottuk a CDP-t Gi0/0 interfészen, ezért semmi nem figyelmeztetett minket arra, hogy az interfész duplex/speed értékeit az alapértelmezett auto/auto értéken felejtettük és ennek megfelelően az R1 router Gi0/0 értékei 10Mbps sebesség, de half-duplex beállítás, ami nem kompatibilis az ISP oldal full-duplex értékével.  Sajnos a hibára az interfészek állapota sem hívja fel a figyelmünket, hiszen a sebesség értékek megegyeznek a két oldalon, a teszt ping és traceroute működik, a field-engineer is hazamehet, viszont amikor az ügyfél megterheli a vonalat, akkor rögtön kiderül, hogy nem minden tökéletes.  Nagy a csomagveszteség, nem elérhetőek a vállalati webszájtok, nem töltenek be az applikációk.  Egy rövid hibakeresés után megtaláljuk a baj forrását, de távolról nem tudjuk megoldani, mert a duplexitás és a sebesség átállítása két parancs lenne az alábbiak szerint:

R1(config)#int gi0/0

R1(config-if)#duplex full

R1(config-if)#speed 10

Az első parancs kiadása után viszont elveszíthetjük a kapcsolatot, hiszen ezen az interfészen keresztül léptünk be a router CLI felületére.

A megoldást az jelentheti, ha visszaemlékezünk a CCNA tanfolyam konfiguráció menedzsmentről szóló részére: ha egy Cisco eszközön a running-config állományra másolunk egy fájlt copy paranccsal, akkor az nem lecseréli a running-config-ot – azt a configure replace parancs tenné, amiről egy másik cikkben lesz szó – hanem összefésüli a fájlunkkal, azaz soronként másol.  Pont ez kell nekünk, a copy során talán megszakad az összeköttetés, de a másolás folytatódik és a végén minden rendben lesz.  Igen ám, de hogy varázsolunk a flash-re egy ilyen fájlt, ha a vállalati hálózatot biztonsági okokból csak SSH protokollal érhetjük el a fájlmásolás távolról nem engedélyezett.  Erre a megoldás a Cisco IOS Tool Command Language azaz TCL ami képes létrehozni egy fájlt a flash-en úgy, hogy a tartalmát is megadhatjuk az alábbiak szerint:

tclsh

puts [ open "flash:duplex.cfg" w+] {

version 15.9

!

interface GigabitEthernet0/0

duplex full

speed 10

end

}

tclquit


Ami a valóságban valahogy így fog kinézni:

R1(tcl)#puts [ open "flash:duplex.cfg" w+] {

+>version 15.9

+>!

+>interface GigabitEthernet0/0

+>duplex full

+>speed 10

+>end

+>}

R1(tcl)#tclquit


Ellenőrizzük, hogy a fájl tényleg létrejött:

R1#sh flash | i cfg

49          71 Jan 13 2023 16:08:36 +01:00 duplex.cfg

 És ellenőrizzük a tartalmát is:

R1#more flash:duplex.cfg

version 15.9

!

interface GigabitEthernet0/0

duplex full

speed 10

end


A biztonság kedvéért konfigurálunk egy ütemezett újraindítást 10 percre.  Ha valami mégsem sikerülne és elveszítjük az összeköttetést, akkor – mivel nem mentettünk – a startup-config visszatölti azt az állapotot, amivel még hozzáférünk távolról az eszközhöz.

R1#reload in 10

Reload scheduled in 10 minutes by console

Reload reason: Reload Command

Proceed with reload? [confirm]

R1#


Majd elindítjuk a másolást:

R1#copy flash:duplex.cfg running-config

Destination filename [running-config]?

71 bytes copied in 0.026 secs (2731 bytes/sec)

 

Ellenőrizzük a munkánkat:

R1#show running-config interface gigabitEthernet 0/0

Building configuration...

 

Current configuration : 110 bytes

!

interface GigabitEthernet0/0

 ip address 1.1.1.2 255.255.255.0

 duplex full

 speed 10

end

 

A végén ne felejtsünk el menteni és elvetni az üzemezett újraindítást:

R1#copy running-config startup-config

Destination filename [startup-config]?

Building configuration...

[OK]

R1#reload cancel

R1#

 

 

***

*** --- SHUTDOWN ABORTED ---

***

Szeretnél többet tudni?

Vedd fel velünk a kapcsolatot az alábbi elérhetőségen:

Gőgös Barnabás
Senior Systems Engineer
+36 30 162 0841
Barnabas.Gogos@alef.com