22.6. Ajout d'un périphérique réseau
Le processus d'ajout d'un périphérique réseau a considérablement changé avec la migration du noyau 2.4 vers le noyau 2.6 :
- Le système de fichiers
proc
n'est plus utilisé pour contrôler ou obtenir le statut des périphériques réseau. - Le nouveau système de fichiers
sys
offre désormais des capacités pour contrôler les périphériques. /sys/class/net/interface_name/device
fournit désormais le statut sur les périphériques actifs.interface_name
est un nom commeeth0
oueth2
qui est donné à une interface réseau par le pilote de périphériques lorsque le périphérique est configuré./etc/chandev.conf
n'existe plus.Le système de fichierssys
contient désormais les informations qui étaient placées dans/etc/chandev.conf
./etc/modules.conf
n'existe plus.Les spécifications d'alias de l'interface réseau se trouvent désormais dans/etc/modprobe.conf
.
Section 22.6.1, « Ajout d'un périphérique
qeth
» describes in detail how to add a qeth device to an existing instance of Red Hat Enterprise Linux. Section 22.6.2, « Mini guide sur l'ajout de périphériques réseau » is a quick reference for installing other IBM System z network interfaces.
22.6.1. Ajout d'un périphérique qeth
Déterminez tout d'abord si les modules de pilote du périphérique
qeth
ont été chargés.
# lsmod | grep qeth qeth 135240 0 qdio 45360 2 qeth ipv6 303984 13 qeth ccwgroup 15104 1 qeth
Si la sortie de la commande
lsmod
montre que les modules ne sont pas chargés, vous devez lancer la commande modprobe
pour les charger :
# modprobe qeth
Créez ensuite un périphérique de groupe
qeth
.
# 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.
Dans l'exemple qui suit, read_device_bus_id a la valeur 0.0.0600, write_device_bus_id la valeur 0.0.0601 et data_device_bus_id la valeur 0.0.0602. Le périphérique est un NIC virtuel z/VM et l'adresse IP à attribuer à cette interface est 192.168.70.69.
# echo 0.0.0600,0.0.0601,0.0.0602 > /sys/bus/ccwgroup/drivers/qeth/group
Vérifiez ensuite que le périphérique de groupe
qeth
a été correctement créé :
# ls /sys/bus/ccwgroup/drivers/qeth 0.0.0600 0.0.09a0 group notifier_register
Vous pouvez également ajouter un nom de port. Vous devez tout d'abord vérifier si un nom de port est requis.
# cat /sys/bus/ccwgroup/drivers/qeth/0.0.0600/portname no portname required
Cette réponse indique que vous n'avez pas à fournir de nom de port.
Pour ajouter un nom de port, vérifiez que les périphériques sont éteints, puis lancez la commande suivante :
Note
Les périphériques doivent être éteints lorsque vous ajoutez un nom de port.
# echo portname > /sys/bus/ccwgroup/drivers/qeth/0.0.0600/portname
Ramenez ensuite les périphériques en ligne :
# echo 1 /sys/bus/ccwgroup/drivers/qeth/0.0.0600/online
Puis vérifiez l'état du périphérique :
# 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.
Vérifiez que le nom de l'interface a été attribué au périphérique :
# cat /sys/bus/ccwgroup/drivers/qeth/0.0.0600/if_name eth1
Pour changer la valeur de
if_name
, utilisez la commande suivante :
# echo new_if_name > /sys/bus/ccwgroup/drivers/qeth/0.0.0600/if_name
Vous pouvez également définir d'autres paramètres et fonctions, selon la manière dont vous configurez votre système et les fonctions dont vous avez besoin.
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
Pour de plus amples informations sur le fonctionnement de ces fonctions, consultez le document Device Drivers, Features, and Commands - SC33-8289-02 à l'adresse suivante : http://www-128.ibm.com/developerworks/linux/linux390/october2005_documentation.html#3
Vous devez maintenant créer le fichier de configuration pour votre nouvelle interface. Les fichiers de configuration des interfaces réseau se trouvent dans
/etc/sysconfig/network-scripts/
.
Les fichiers de configuration réseau utilisent la convention de nommage ifcfg-device, où device correspond à la valeur trouvée dans le fichier
if_name
du périphérique de groupe qeth créé auparavant. eth1
est la valeur dans notre exemple.
S'il existe déjà un fichier de configuration défini pour un autre périphérique du même type, la solution la plus simple est de le copier sous le nouveau nom.
# cd /etc/sysconfig/network-scripts # cp ifcfg-eth0 ifcfg-eth1
Si vous ne possédez pas de périphérique similaire déjà défini, vous devez en créer un. Utilisez l'exemple de
ifcfg-eth0
comme modèle.
/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
Éditez le nouveau fichier
ifcfg-eth1
.
Supprimez la ligne HWADDR pour le moment.
Modifiez l'instruction DEVICE afin de refléter le contenu du fichier
if_name
de votre ccwgroup.
Modifiez l'instruction IPADDR afin de refléter l'adresse IP de votre nouvelle interface.
Modifiez l'instruction NETMASK si nécessaire.
Si vous souhaitez que votre nouvelle interface soit activée au démarrage, assurez-vous que ONBOOT est réglé sur
yes
.
Assurez-vous que l'instruction SUBCHANNELS correspond aux adresses matérielles de votre périphérique
qeth
.
/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
Un périphérique
qeth
nécessite une définition d'alias dans /etc/modprobe.conf
. Éditez ce fichier et ajoutez un alias pour votre interface.
/etc/modprobe.conf alias eth0 qeth alias eth1 qeth options dasd_mod dasd=0.0.0100,0.0.4b19
Vous pouvez maintenant démarrer la nouvelle interface :
# ifup eth1
Vérifiez le statut de l'interface :
# 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)
Notez le champ
HWaddr
dans la première ligne de la sortie de la commande ifconfig
. La valeur après doit être ajoutée au fichier ifcfg-eth1
. Ajoutez une ligne comme la suivante dans ce fichier :
HWADDR=02:00:00:00:00:01
Maintenant, le fichier
ifcfg-eth1
ressemble à l'exemple suivant :
# 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
Vérifiez le routage pour la nouvelle interface :
# 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
Vérifiez vos modifications a l'aide de la commande
ping
pour envoyer un ping vers la passerelle :
# 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
Si les informations de route par défaut ont changées, vous devez également mettre à jour
/etc/sysconfig/network
.