| FOTO | AUTO | EDV | AUDIO |

Internetwork Operating System Software (IOS)

ist das Betriebssystem von Cisco-Routern und -Switches.Bill (William) Yeager Das Betriebssystem geht zurück auf den Angestellten der Stanforder Medizinischen Schule namens Bill Yeager, der um 1980 die Software entwickelte, welche es den Routern ermöglicht, Netzwerke unterschiedlicher Medien und Protokolle miteinander zu verbinden. Er arbeitete bis 1984 mit Sandra Lerner und Len Boseck, den Gründern von Cisco, an der Verbesserung dieser Software zusammen. Mit der Gründung von Cisco im Jahre 1984 lizenzierte Cisco diese Software von Yeager. Seitdem wurde sie in verschiedenen Versionen eingesetzt und liegt seit Mai 2005 in der Version 12.4 vor.

IOS wurde in der Vergangenheit auch an andere Hersteller lizenziert. So verwendeten z. B. die in den 1990er Jahren verbreiteten DEC Brouter ein im Funktionsumfang eingeschränktes Cisco IOS.

IOS wird bei modernen Geräten beim Einschalten des Gerätes aus dem nichtflüchtigen Flash-Speicher dekomprimiert und in den Hauptspeicher geladen, während es bei älteren Routermodellen wie z. B. dem Cisco 2500 grundsätzlich direkt vom Flash-Speicher ausgeführt wird. Letzteres begrenzt die Ablaufgeschwindigkeit wegen des zum Hauptspeicher vergleichsweise geringen Durchsatzes von Flash-Speicher. Nach dem Start stellt es die grundlegenden Funktionen des Routing und/oder Switching zur Verfügung. Es werden je nach sogenanntem Feature-Set unter anderem Routing-Protokolle wie BGP, OSPF, EIGRP und RIP unterstützt. Außerdem werden je nach Feature-Set auch weitere Netzwerkprotokolle wie IPv6, IPX, AppleTalk unterstützt. Über Zugriffskontrolllisten werden grundlegende Paketfilterfunktionen bereitgestellt.

Gesteuert und konfiguriert wird dieses per Kommandozeile über eine Telnet, SSH oder eine direkte serielle Konsolenverbindung am Endgerät. Die Bedienung ist der von MS-DOS- oder Unix-Kommandozeilen ähnlich und enthält Funktionen wie Autocomplete (das automatische Vervollständigen eines eingegebenen Kommandos). Eine enorme Hilfe ist dabei das Fragezeichen, welches an beliebiger Stelle eingegeben eine kontextabhängige Kurzhilfe ausgibt. Es sind aber auch Web- und Windows-Oberflächen verfügbar. Auch über SNMP kann man IOS eingeschränkt konfigurieren.

Kommandoprompt:

  • User Mode: Router>
  • Privileged Mode: Router#
  • Global Configuration Mode: Router(config)#
  • Spezieller Interface Configuration Mode: Router(config-if)#

Mit dem User-Modus können nur einfache Abfragen und diverse show-Befehle ausgeführt werden.
Im privilegierten Modus und im Global-Configuration-Modus kann der Router oder Switch konfiguriert werden.
Der Wechsel in den privilegierten Modus kann ein Passwort erfordern, von dort kann man in den Global Configuration Mode wechseln.
Um einzelne Schnittstellen einstellen zu können, muss in den „Interface Configuration Mode“ der jeweiligen Schnittstelle gewechselt werden.

Die verschiedenen IOS Versionen liegen als *.bin Datei vor. Der Name dieser Dateien ist so aufgebaut:

  • Beispiel: C2500-D-L.120-9.bin
    • Platform C2500
    • Feature Set: D
    • Run Location: L
    • Version: 120-9

IOS Befehle

Eine gruppierte Auswahl an IOS Befehlen

  • Router Kommandos
    1. Usermode-Kommandos
    2. Privilegemode Kommandos
    3. Global configuration mode Kommandos
    4. Interface subconfiguration mode Kommandos
    5. Line subconfiguration mode Kommandos
    6. Subnterface subconfiguration mode Kommandos
    7. IP routing protocol subconfiguration mode Kommandos

Usermode

disconnect                              #Loggt den Benutzer aus und trennt Telnet-Session|
enable
ping <host-name | ip-address>           #Überprüft physikalische Verbindung mit Standardpaketen. Extended Ping ohne Parameter mgl.
traceroute <hostname | ip-address >     #Erweiterter Ping mit Rückmeldung aller Router

Privilege Mode

clear arp-cache                         #Löscht den Arp-Cache
configure terminal                      #Wechselt in Konfigurationsmodus, Befehle zum Ändern der Konfiguration möglich
copy running-config startup-config      #Speichert aktuelle Konfiguration
copy startup-config running-config
debug ip packet
disable                                 #Springt in den UserEXEC Modus zurück
disconnect <TELNET_ID>
erase startup-config                    #Löscht alle Konfigurationsdateien
logout                                  #Verlässt Konfigurationsmodus
ping <host-name>                        #Überprüft physikalische Verbindung mit Standardpaketen. Extended Ping ohne Parameter mgl.
ping <ip-address>
reload
resume <TELNET_ID>
show access-list                        #Accessliste von allen eingestellten Protokollen
show banner
show cdp                                #Status von CDP wie Holdtime Value oder Pakete/60s
show cdp interface                      #CDP Konfiguration auf Interface-by-Interface-Basis.
show cdp neighbor
show cdp traffic
show clock
show flash                              #Zeigt IOS-Images im Flashspeicher
show frame-relay lmi                    #Genaue Statistik von LMI aus.
show frame-relay map
show frame-relay pvc <dlci_num>         #Zeigt alle geendeten Frame- Relais PVCs und ihre Statistiken an einem spezifizierten Router
show history                            #Letzte 10 ausgeführten Befehle
show hosts
show interfaces                         #Zeigt die Interface-Status und Statistiken, ideal zur Fehlersuche
show interfaces ethernet 0
show interfaces loopback <port-number>
show interfaces serial 0                #Gibt den genutzten LMI Typ und zusätzliche Statistiken aus
show ip arp
show ip eigrp neighbors                 #Zeigt Liste von der benachbarten eigrp-Router
show ip eigrp neighbors detail
show ip eigrp topology                  #Zeigt eine Topologie vom Netzwerk sowie andere Wege an
show ip eigrp traffic                   #Trafiic-Statistics für eigrp
show ip interface
show ip interface brief                 #Prüft IP-Konfiguration
show ip ospf database
show ip ospf interface
show ip ospf neighbor detail
show ip route                           #Zeigt die Konfiguration der statischen Routen und der Standard-Gateways
show protocols                          #Zeigt Informationen zu den Schnittstellen
show running-config
show sessions                           #Listet aktuelle Telnet-Sessions
show startup-config
show version                            #Versionsinformation für Hard- und Firmware
telnet <host-name>                      #Beginnt Telnet-Session
telnet <IP-address>
traceroute <hostname>
traceroute <ip-address>                 #Erweiterter Ping mit Rückmeldung aller Router, ideal zum Aufspüren von Routingproblemen
vlan database                           #Zugriff auf VLAN- und VTP- Konfiguration gestatten
write erase                             #Konfiguration löschen
write memory                            #Konfiguration festschreiben
write terminal

Global configuration Mode

access-list <list-num> {permit | deny} <source-ip-address> #Ausschließlich definierten IPs Zugriff gestatten bzw. verweigern
access-list <list-num> {permit | deny} <any>
access-list <list-num> {permit | deny} <ip-address> <ip-address>
access-list <list-num> {permit | deny} <host-name> <ip-address>
banner motd <banner>                    #Erstellt Login-Banner auf dem Router
cdp advertise-v2
cdp holdtime <seconds>
cdp run
cdp timer <seconds>
config-register <value>                 #Hexadezimaler oder dezimaler Wert, der die 16-bit Konfiguration im Register darstellt. Das Register wird zum Starten des Routers verwendet. Der Wertebereich kann von 0x0 bis 0xFFFF (0 bis 65535 im Dezimalbereich) liegen. Normalerweise ist der Standard-Wert 0x2102
dialer-list<list-num>protocol ip permit
enable password <password>              #Passwort vergeben
enable secret <password>                #Verschlüssle Passwort nach deren Festlegung
end
hostname <host-name>
interface ethernet 0                    #Zugang zum Ethernet-Interface dem Subkonfigurations-Modus
interface fastethernet <pnum>
interface loopback <port-number>        #Erstelle eigene Loopback- Adresse. Die Port können zwischen 0 to 214748364 liegen
interface serial 0
interface vlan <vlan_num>
ip default-gateway <ip-address>         #Standard-Gateway festlegen. Wird genutzt, wenn Router eine Anforderung mit eingetragenen Routen nicht bedienen kann
ip default-network <ip-address>
ip domain-lookup
ip host <name> <ip-address>             #Kompletter Befehl: ip host name [tcp-port] address1 [address2...address8]
ip name-server <ip-address>             #DNS-Server zur Namenauflösung eintragen
ip route <quelle> <subnetz> {ziel | interface} #Definiert Routingeinträge
ip route 0.0.0.0 0.0.0.0 <ip-address>
ip route <ip-address> <ip-address> <ip-address>
ip route <ip-address> <ip-address> serial 0
ip routing
ipx routing
isdn switch-type <switch_type>
line aux
line console 0                          #Zugang zu Konsolen-Interface, hier Konsolenpart 0
line vty                                #Unterstützt werden 16 simultane Telnet-Verbindungen, Nummerierung von 0-15.
no banner motd
no cdp run                              #cdp am Router kann explizit aktiviert/deaktiviert werden
no ip domain-lookup                     #Deaktiviert alle DNS-Lookups
no ip routing
no router eigrp
no router ospf
no router rip
no vlan <vlan_num>
router eigrp <aut_sys>
router ospf <proc_id>                  #Process_id is locally significant and is used to differentiate different ospf processes running on a router.
router rip                             #Startet den Konfigurationsmodus für das RIP-Routing
snmp-server enable traps vtp
username <name> password <password>    #Benutzer anlegen

Interface subconfiguration Mode Kommandos

bandwidth <kilobits>                   #Festlegung der Bandbreite (Geschwindigkeit) in kb/Sekunde.
cdp enable
clock rate <bps>                       #Desired clock rate in bits per second: 1200, 2400, 4800, 9600, 19200, 38400, 56000, 64000 etc.
compress stac <num> in
description <string>                   #Beschreibung (1 bis 80 Zeichen)
dialer-group<dialer_list_#>
dialer map ip <ip-address> <des-phone>
dialer map ip <ip-address> name <hostname> <des-phone>
dialer string< phone_#> <class map_name>
encapsulation <encapsulation-type>     #Verkapselung folgender Typen (zum Beispiel PPP/HDLC)
encapsulation framerelay<num> in
frame-relay lmi-type <lmi_type>        #Festlegen des LMI-Typs, welcher zur Kommunikation zwischen Router und Transportswitchs genutzt wird. LMI Typ ist festgelegt am kompletten Interface, nicht ausschließlich am VC.
frame-relay map<protocol-name> <ip-address> <dlci_num> #Konfiguriert die manuelle resolution of PVC's.
frame-relay map<protocol-name> <ip-address> <dlci_num> broadcast
frame-relay map<protocol-name> <ip-address> <dlci_num> broadcast cisco
frame-relay map<protocol-name> <ip-address> <dlci_num> broadcast ietf
frame-relay map<protocol-name> <ip-address> <dlci_num> cisco
frame-relay map<protocol-name> <ip-address> <dlci_num> ietf
ip access-group <num> in
ip access-group <num> out
ip address <ip-address> <sub-net mask>
isdn spid1<spid_num>                   #Defines the spid's that are used to authenticate call requests.Used only on local connection between router and isdn switch.
isdn spid2<spid_num>
keepalive <seconds>
login
no bandwidth
no cdp enable
no clock rate
no frame map <protocol name> <ip-address> <dlci_num>
no frame map<protocol-name> <ip-address> <dlci_num> broadcast
no frame map<protocol-name> <ip-address> <dlci_num> cisco
no frame map<protocol-name> <ip-address> <dlci_num> ietf
no ip address
no shutdown
shutdown                               #Deaktiviert laufende Interfaces
shutdown switchport                    #Bestimmtes Interface deaktivieren
speed
switchport access vlan <vlan_num>
switchport port-security mac-address sticky<mac_addr>
switchport port-security maximum <max_macadd>
switchport port-security violation <violat_mode>

Line subconfiguration Mode

exec-timeout <minuten> [sekunden]      #Festlegen des Timeout für Ausführungen [Sekunden sind optional]
logging synchronous
password <password>                    #Passwort festlegen

Subinterface Subconfiguration Mode

description <string>                   #Benutzerdefinierter Hilfetext zu einem Interface, z.B. „eth0: Verbindung Internet
frame-relay interface-dlci <dlci_num>  #Man kann DLCI konfigurieren, wenn man Datenverbindungen bestimmten Nummern zuordnen will. Einfaches Switchen ist dann möglich, da sich Router nach DLCI-Nummer verbinden
frame-relay map <protocol-name> <ip-address> <dlci_num>
frame-relay map <protocol-name> <ip-address> <dlci_num> broadcast
frame-relay map <protocol-name> <ip-address> <dlci_num> broadcast cisco
frame-relay map <protocol-name> <ip-address> <dlci_num> broadcast ietf
frame-relay map <protocol-name> <ip-address> <dlci_num> cisco
frame-relay map <protocol-name> <ip-address> <dlci_num> ietf
ip address <ip-address> <subnet-mask>
no ip address
no shutdown [int]                      #Aktivieren von deaktivierten Interfaces
shutdown [int]                         #Deaktivieren bestimmter Interfaces

IP Routing Protocol Subconfiguration Mode

network <ip-address>                   #Mit dem Router verbundene Netzwerke
no network <ip-address>                #Entfernen von Netzwerkeinträgen 
Basierend auf der Dokumentation von Cisco Systems, Inc. „Cisco IOS Software Command Summary Cisco IOS Release 11.1”, die auch im Internet unter verfügbar ist: http://www.cisco.com/univercd/home/home.htm

Beispiele

Anzeigen der aktuellen Konfiguration:

show running-config

Anzeigen der IOS-Version, Router-Modell und Ausstattung, usw.:

show version

Anzeigen detaillierter Informationen über alle Router-Schnittstellen:

show interface

Kurzübersicht über IP-Adressen und Status der vorhandenen Router-Schnittstelle:

show ip interface brief

Anzeigen der aktuellen Routing-Tabelle der jeweiligen Netzwerkprotokolle:

show ip route
show ipv6 route
show ipx route
show appletalk route

Wechsel in den privilegierten Modus:

enable

Wechsel in den globalen Konfigurationsmodus:

configure terminal