Kapitel 3: Erste Schritte
Die OPX-Switches sind installiert und erwarten die ersten Konfigurationsbefehle. Dieses Kapitel beginnt mit einer Einführung in die Bedienung von OpenSwitch mit den wichtigsten Kommandos. Dazu greift OpenSwitch auf viele bekannte Linux-Befehle zurück und spendiert zusätzlich eigene Kommandos, die stets mit opx-
beginnen.
Kenner von Cisco-Switches werden hier auf Ungewohntes treffen. Wer mit Linux bereits vertraut ist, wird viele Ähnlichkeiten erfahren.
Bedienung
Die OpenSwitch-Kommandozeile (engl. command-line interface, CLI) ist die Standard-Shell von Debian Linux: Bash. Nach dem ersten Login mit dem Benutzernamen admin und dem Kennwort admin sieht das Konsolenfenster aus, wie bei einem herkömmlichen Linux-System. Ist es auch: OpenSwitch setzt auf Debian GNU/Linux "Stretch" (Version 9). Linux-Admins werden sich sofort heimisch fühlen, aber Netzwerker brauchen Konfigurationsbefehle, show
-Kommandos und eine Schnellübersicht der aktiven Konfiguration des Systems.
OpenSwitch möchte es beiden Parteien Recht machen, und spendiert dem Betriebssystem zusätzliche Befehle, die allesamt mit den Buchstaben opx
beginnen. Diese netzwerkorientierten Kommandos erstellen VLANs, konfigurieren Transceiver und zeigen den Gesundheitszustand der Hardware an.
Für die regulären Arbeiten am Netzwerk hat Linux viele wunderbare Tools, die mit OpenSwitch harmonieren. Das bekannte ip
-Kommando steuert Netzadapter, vergibt IP-Adressen und setzt Routen in benachbarte Netze.
Berechtigung
Unter Linux müssen die meisten administrativen Kommandos unter dem root-User ausgeführt werden. Die Alternative ist ein vorangestelltes sudo
vor den eigentlichen Befehl. Das Ergebnis ist dasselbe - der startende Befehl erhält die höchsten Rechte und darf am System wirken.
Ob das Kommandofenster als root läuft, oder vor jedem Befehl sudo
steht, ist auch abhängig vom eigenen Geschmack.
Die Beispiele in diesem Buch setzen den root-User voraus und verzichten auf sudo
, um die Befehle knapp zu halten.
Per sudo
kann jeder Benutzer root werden, wenn er die entsprechende Befähigung aus Abschnitt Benutzerkonten erhalten hat. Die Kommandozeile wechselt vom Normalsterblichen zum Systemverwalter mit einem kurzen sudo bash
.
Switchports
OpenSwitch hat seine eigene Methode, um die Netzadapter an der Vorderseite des Switches zu taufen. Jeder physische Anschluss erhält unter Linux einen Namen in der Form:
eNMM-PPP-F.vvvv
Die Buchstaben haben folgende Bedeutung:
e - ist eine feste Position und bezeichnet einen Ethernet-Port
N - ist die Switch-Nummer und immer 1
MM - ist die Modulnummer und immer 01
PPP - ist die Portnummer und an der Vorderseite des Gehäuses aufgedruckt (001 bis 999)
F - ist der Fan-Out-Anschluss bei 4x10 GE-Anschlüssen. Falls der Port ohne Fan-Out arbeitet, ist die Nummer stets 0.
vvvv - ist die VLAN-Nummer. Wenn keine VLANs verwendet werden, entfällt dieser Zusatz.
Der erste Netzadapter am Switch-Chassis hat unter Linux den Namen e101-001-0. Mit e101-025-3 bezeichnet OPX den Fan-Out-Port 3 von Netzadapter 25.
Die Beispiele in diesem Buch arbeiten ohne Fan-Out. Die Abbildungen enthalten nur die Portnummer PPP, um übersichtlich zu bleiben.
Hilfe
Hilfe zum aktuellen Kommando, zur Vervollständigung oder zur Syntax wird in Linux nicht einheitlich behandelt. Grundsätzlich liefern die Kommandos durch Zugabe von --help
oder -h
eine kurze Übersicht der Syntax und der wichtigsten Optionen. Ausführlicher informiert die Man-Page über den Sinn und Zweck eines Befehls, gefolgt von einer präzisen Beschreibung aller Optionen.
Beispielsweise hat das ping
-Kommando eine Menge zusätzlicher Optionen, welche die Kurzhilfe schnell ins Gedächtnis ruft. Die Bedeutung der Optionen erklärt die Man-Page ausführlich.
root@sw01:~# ping -h Usage: ping [-aAbBdDfhLnOqrRUvV64] [-c count] [-i interval] [-I interface] [-m mark] [-M pmtudisc_option] [-l preload] [-p pattern] [-s packetsize] [-S sndbuf] [-t ttl] [-T timestamp_option] [-w deadline] [-W timeout] [hop1 ...] destination root@sw01:~# man ping PING(8) System Manager's Manual: iputils PING(8) NAME ping - send ICMP ECHO_REQUEST to network hosts SYNOPSIS [...]
Ersteinrichtung
Die ersten Kommandos füllen den Switch mit genug Informationen, damit ein Remote-Login möglich ist. Danach kann bequem mit dem bevorzugten SSH-Client, wie z. B. PuTTY oder SecureCRT, auf den Switch zugegriffen werden, um die feinere Konfigurationsarbeit zu beginnen. Das wiederholte Eintippen der Anmeldedaten lässt sich vermeiden, wenn Client und Server mit SSH-Schlüsseln für die Authentifizierung ausgestattet sind (vgl. Kap. 21).
Wenn die Konsole eigenartig aussieht oder ein ungewöhnliches Tastaturlayout verwendet, kann das console-setup
-Paket nachbessern:
apt install console-setup dpkg-reconfigure console-setup
Die minimale Konfiguration für Switch sw01 zeigt Listing 3.1. Der Systemname in Zeile 1 hilft bei der Unterscheidung, denn anfangs heißen alle Switches nur OPX. Zeile 2 stellt sicher, dass der neue Name auflösbar ist.
Der begehrte SSH-Dienst ist bei OpenSwitch bereits aktiv. Das Management-Interface eth0 erhält in Zeile 3 und 4 seine IP-Adressen - ein separates Aktivieren des Interfaces ist nicht erforderlich. Falls notwendig bringen Zeile 5 und 6 dem Switch eine Defaultroute bei, sodass er vom eigenen Client erreichbar ist.
hostnamectl set-hostname sw01 echo "127.0.1.1 sw01" >> /etc/hosts opx-config-route create --ip_addr 10.5.1.1/24 --ifname eth0 opx-config-route create --ip_addr fd00:5::1/64 --ifname eth0 opx-config-route create --dst 0.0.0.0/0 --nh_addr 10.5.1.250 opx-config-route create --dst ::/0 --nh_addr fd00:5::250
Listing 3.1: Minimalkonfiguration des OPX-Switches sw01
Zur Orientierung: Die gleiche Wirkung erzielt die Konfiguration aus Listing 3.2 auf einen Cisco Nexus. Im Gegensatz zu NX-OS hat OpenSwitch mehrere Möglichkeiten für die Einrichtung: ip
, ifconfig
oder das hauseigene opx-config-route
.
hostname sw01 interface ethernet 1/1 no switchport ip address 10.5.1.1/24 ipv6 address fd00:5::1/64 no shutdown ip route 0.0.0.0/0 10.5.1.250 ipv6 route ::/0 fd00:5::250
Listing 3.2: Minimalkonfiguration eines Cisco Nexus Switches
OpenSwitch OPX und Cisco NX-OS-Kommandos gegenübergestellt OpenSwitch Cisco NX-OS
ip addr add 10.5.1.1/24 dev e101-001-0
interface ethernet 1/1
no switchport
ip address 10.5.1.1/24
ip route add default via 10.5.1.250
ip route 0.0.0.0/0 10.5.1.250
ip route add 192.0.2.0/24 via 10.5.1.192
ip route 192.0.2.0/24 10.5.1.192
hostnamectl set-hostname
hostname
hostnamectl set-hostname
ip domain-name
edit /etc/resolv.conf ip name-server
timedatectl set-ntp true
clock protocol ntp...
timedatectl set-timezone
clock timezone
edit /etc/rsyslog.conf logging server
useradd <> ; passwd <>
username <> password <>
SSH ist bereits aktiv crypto key generate rsa
nicht notwendig configure
Das gibt es in OPX nicht copy run start
reboot
reload
shutdown now
Das gibt es in NX-OS nicht opx-show-interface --summary
show interface status
opx-show-route
show ip|ipv6 route
Das gibt es in OPX nicht show running-config
Tabelle 3.1: OpenSwitch OPX und Cisco NX-OS-Kommandos gegenübergestellt
Weitere Kommandos zur Grundkonfiguration von OpenSwitch listet Tabelle 3.1. Für Fans von Cisco Switches enthält die Tabelle auch den entsprechenden NX-OS-Befehl.
Weitere Einrichtung
So langsam wird die Umgebung von OpenSwitch vertrauter und die Befehle anspruchsvoller. Die folgenden Kommandos behandeln IPv4- und IPv6-Adressen gleichwertig.
Default...