Red Hat Training

A Red Hat training course is available for Red Hat Enterprise Linux

22.6. Ein Netzwerkgerät hinzufügen

Der Prozess beim Hinzufügen eines Netzwerkgeräts hat sich seit der Migration von dem 2.4-Kernel auf den 2.6-Kernel geändert:
  • Das proc-Dateisystem wird nicht mehr länger dazu benutzt, den Status auf Netzwerkgeräten zu kontrollieren oder erhalten.
  • Das neue sys-Dateisystem ist nunmehr für die Kontrolle von Geräten zuständig.
  • /sys/class/net/interface_name/device liefert ab sofort den Status zu aktiven Geräten.
    interface_name ist eine Bezeichnung wie eth0 oder ctc2, welche an eine Netzwerkschnittstelle vom Gerätetreiber vergeben wird, wenn das Gerät konfiguriert wird.
  • /etc/chandev.conf existiert nicht mehr länger.
    Das sys-Dateisystem beinhaltet nunmehr die Information, welche sich in /etc/chandev.conf befunden haben.
  • /etc/modules.conf existiert nicht mehr länger.
    Spezifikationen für Netzwerk-Schnittstellen-Aliase befinden sich nunmehr in /etc/modprobe.conf.
Abschnitt 22.6.1, »Ein qeth-Gerät hinzufügen« describes in detail how to add a qeth device to an existing instance of Red Hat Enterprise Linux. Abschnitt 22.6.2, »Schnellverweis zum Hinzufügen von Netzwerkgeräten« is a quick reference for installing other IBM System z network interfaces.

22.6.1. Ein qeth-Gerät hinzufügen

Stellen Sie zuerst fest, ob die Treibermodule für das qeth-Gerät bereits geladen worden sind.
# lsmod | grep qeth
qeth                  135240  0
qdio                   45360  2 qeth
ipv6                  303984  13 qeth
ccwgroup               15104  1 qeth
Wenn der Output des lsmod-Befehls zeigt, dass die Module nicht geladen sind, Sie müssen Sie den modprobe-Befehl ausführen, um diese zu laden:
# modprobe qeth
Erstellen Sie als nächstes ein qeth-Gruppen-Gerät.
# echo read_device_bus_id,write_device_bus_id,
data_device_bus_id > /sys/bus/ccwgroup/drivers/qeth/group
Due to the length of this command, it has been broken into two lines.
Im folgenden Beispiel read_device_bus_id ist 0.0.0600, write_device_bus_id 0.0.0601 und data_device_bus_id ist 0.0.0602. Das Gerät ist eine z/VM virtuelle Netzwerk-Schnittstellen-Steuereinheit (NIC) und die IP-Adresse für diese Schnittstelle sollte 192.168.70.69 sein.
# echo 0.0.0600,0.0.0601,0.0.0602 > /sys/bus/ccwgroup/drivers/qeth/group
Stellen Sie als nächstes fest, ob das qeth-Gruppen-Gerät ordnungsgemäß erstellt worden ist.
# ls /sys/bus/ccwgroup/drivers/qeth
0.0.0600  0.0.09a0  group  notifier_register
Sie können optional auch einen Portnamen hinzufügen. Überprüfen Sie jedoch zuerst, ob ein Portname erforderlich ist:
# cat /sys/bus/ccwgroup/drivers/qeth/0.0.0600/portname
no portname required
Dies bedeutet, dass ein Portname nicht erforderlich ist.
Um einen Portnamen hinzuzufügen, gehen Sie zuerst sicher, dass die Geräte offline sind und führen dann folgenden Befehl aus:

Anmerkung

Die Geräte müssen offline sein, wenn Sie einen Portnamen hinzufügen.
# echo portname > /sys/bus/ccwgroup/drivers/qeth/0.0.0600/portname
Bringen Sie als nächstes das Gerät wieder online:
# echo 1 /sys/bus/ccwgroup/drivers/qeth/0.0.0600/online
Dann überprüfen Sie den Status des Geräts:
# cat /sys/bus/ccwgroup/drivers/qeth/0.0.0600/online1
A return value of "1" indicates that the device is online, while a return value '0' indicates that the device is offline.
Überprüfen Sie, welcher Schnittstellenname dem Gerät zugeordnet wurde:
# cat /sys/bus/ccwgroup/drivers/qeth/0.0.0600/if_name
eth1
Um den Wert von if_name zu ändern, benutzen Sie folgenden Befehl:
# echo new_if_name > /sys/bus/ccwgroup/drivers/qeth/0.0.0600/if_name
Sie können optional auch zusätzliche Parameter und Features setzen, abhängig von der Art, auf die Sie Ihr System aufsetzen und den Features, die Sie benötigen.
  • add_hhlen
  • broadcast_mode
  • buffer_count
  • canonical_macaddr
  • card_type
  • checksumming
  • chpid
  • detach_state
  • fake_broadcast
  • fake_ll
  • ipa_takeover
  • portno
  • priority_queueing
  • recover
  • route4
  • rxip
  • state
  • ungroup
  • vipa
Weitere Informationen zur Funktionsweise dieser Features finden Sie unter http://www-128.ibm.com/ developerworks/linux/linux390/october2005_documentation.html#3 ( Gerätetreiber, Features und Befehle - SC33-8289-02).
Jetzt müssen Sie die Konfigurationsdatei für Ihre neue Schnittstelle erstellen. Die Konfigurationsdateien für Netzwerk-Schnittstellen finden Sie in /etc/sysconfig/network-scripts/.
Die Netzwerkkonfigurationsdateien benutzen die Namenskonvention ifcfg-device, wobei "device" der Wert in der Datei if_name im qeth-Gruppen-Gerät ist, welches zuvor erstellt wurde. In diesem Beispiel ist es eth1.
Wenn es bereits eine Konfigurationsdatei für eine anderes Gerät des selben, bereits festgelegten Typs gibt, so ist es am einfachsten diese zum neuen Namen zu kopieren.
# cd /etc/sysconfig/network-scripts
# cp ifcfg-eth0 ifcfg-eth1
Wenn Sie kein ähnliches Gerät festgelegt haben, müssen Sie eines erstellen. Benutzen Sie dieses Beispiel von ifcfg-eth0 als Vorlage.
/etc/sysconfig/network-scripts/ifcfg-eth0
# IBM QETH
DEVICE=eth0
BOOTPROTO=static
HWADDR=00:06:29:FB:5F:F1
IPADDR=9.12.20.136
NETMASK=255.255.255.0
ONBOOT=yes
NETTYPE=qeth
SUBCHANNELS=0.0.09a0,0.0.09a1,0.0.09a2
TYPE=Ethernet
Bearbeiten Sie die neue ifcfg-eth1-Datei.
Entfernen Sie vorläufig die HWADDR-Zeile.
Modifizieren Sie das DEVICE-Statement, um die Inhalte der Datei if_name Ihrer ccwgroup zu reflektieren.
Modifizieren Sie das IPADDR-Statement, um die IP-Adresse Ihrer neuen Schnittstelle zu reflektieren.
Modifizieren Sie das NETMASK-Statement je nach Bedarf.
Wenn Sie Ihre neue Schnittstelle zur Bootzeit aktiviert haben möchten, dann stellen Sie sicher, dass ONBOOT auf yes gesetzt ist.
Stellen Sie sicher, dass das SUBCHANNELS-Statement mit den Hardware-Adressen für Ihr qeth-Gerät übereinstimmt.
/etc/sysconfig/network-scripts/ifcfg-eth1
# IBM QETH
DEVICE=eth1
BOOTPROTO=static
IPADDR=192.168.70.87
NETMASK=255.255.255.0
ONBOOT=yes
NETTYPE=qeth
SUBCHANNELS=0.0.0600,0.0.0601,0.0.0602
TYPE=Ethernet
Ein qeth-Gerät erfordert eine Alias Definition in /etc/modprobe.conf. Bearbeiten Sie diese Datei und fügen Sie einen Alias für Ihre Schnittstelle hinzu.
/etc/modprobe.conf
alias eth0 qeth
alias eth1 qeth
options dasd_mod dasd=0.0.0100,0.0.4b19
Jetzt können Sie die neue Schnittstelle starten:
# ifup eth1
Überprüfen Sie den Status der neuen Schnittstelle:
# ifconfig eth1
eth1      Link encap:Ethernet  HWaddr 02:00:00:00:00:01
          inet addr:192.168.70.87  Bcast:192.168.70.255  Mask:255.255.255.0
          inet6 addr: fe80::ff:fe00:1/64 Scope:Link
          UP BROADCAST RUNNING NOARP MULTICAST  MTU:1492  Metric:1
          RX packets:23 errors:0 dropped:0 overruns:0 frame:0
          TX packets:3 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:644 (644.0 b)  TX bytes:264 (264.0 b)
Beachten Sie, dass sich das HWaddr-Feld in der ersten Zeile der Ausgabe von ifconfig befindet. Der darauffolgende Wert sollte in der ifcfg-eth1-Datei hinzugefügt werden. Fügen Sie eine Zeile wie diese zur Datei hinzu:
HWADDR=02:00:00:00:00:01
Jetzt sieht ifcfg-eth1 ungefähr wie folgt aus:
# IBM QETH
DEVICE=eth1
HWADDR=02:00:00:00:00:01
BOOTPROTO=static
IPADDR=192.168.70.69
NETMASK=255.255.255.0
ONBOOT=yes
NETTYPE=qeth
SUBCHANNELS=0.0.0600,0.0.0601,0.0.0602
TYPE=Ethernet
Überprüfen Sie das Routing für die neue Schnittstelle:
# route
Kernel IP routing table
Destination     Gateway         Genmask        Flags Metric Ref  Use Iface
192.168.70.0    *               255.255.255.0  U     0      0      0 eth1
9.12.20.0       *               255.255.255.0  U     0      0      0 eth0
169.254.0.0     *               255.255.0.0    U     0      0      0 eth1
default         pdlrouter-if5.p 0.0.0.0        UG    0      0      0 eth0
Überprüfen Sie Ihre Änderungen, indem Sie den Befehl ping benutzen, um den Gateway anzupingen:
# ping -c 1 192.168.70.8
PING 192.168.70.8 (192.168.70.8) 56(84) bytes of data.
64 bytes from 192.168.70.8: icmp_seq=0 ttl=63 time=8.07 ms
Wenn die Standardrouten-Information sich geändert hat, so müssen Sie auch /etc/sysconfig/network dementsprechend aktualisieren.