| Red Hat Enterprise Linux 4: Installation Guide per le architetture IBM® S/390® e IBM® eServer™ zSeries® | ||
|---|---|---|
| Indietro | Appendice F. Informazioni aggiuntive per gli utenti di S/390 zSeries | Avanti |
Il processo di aggiunta di un dispositivo di rete per Red Hat Enterprise Linux, è stato sostanzialmente modificato. Ciò è dovuto in parte alla migrazione del kernel 2.4 al kernel 2.6:
Il file system proc non è più utilizzato per controllare o per ottenere lo stato dei dispositivi di rete.
Il nuovo file system sys fornisce ora dei servizi in grado di controllare i dispositivi.
/sys/class/net/<interface_name>/device fornisce ora lo stato dei dispositivi attivi.
<interface_name> risulta essere un nome come eth0 o ctc2, dato ad una interfaccia di rete dal driver del dispositivo, quando il dispositivo stesso viene configurato.
/etc/chandev.conf non è più esistente.
Il file system sys contiene ora le informazioni precedentemente contenute in /etc/chandev.conf.
/etc/modules.conf non è più esistente.
Le specificazioni alias dell'interfaccia della rete sono contenute in /etc/modprobe.conf.
la Sezione F.6.1 descrive in dettaglio come aggiungere un dispositivo qeth su di una istanza esistente di Red Hat Enterprise Linux. la Sezione F.6.2 risulta essere un riferimento rapido per l'installazione di altre interfacce di rete zSeries.
Come prima cosa determinare se i moduli del driver del dispositivo qeth sono stati caricati.
# lsmod | grep qeth qeth 135240 0 qdio 45360 2 qeth ipv6 303984 13 qeth ccwgroup 15104 1 qeth |
Se l'output del comando lsmod mostra che i moduli non sono stati caricati, è necessario emettere il comando modprobe per poterli caricare:
# modprobe qeth |
Successivamente create un dispositivo del gruppo di qeth.
# echo <read_device_bus_id>,<write_device_bus_id>,<data_device_bus_id> > /sys/bus/ccwgroup/drivers/qeth/group |
A causa della lunghezza di questo comando, esso è stato suddiviso in due linee.
Nell'esempio seguente read_device_bus_id risulta essere 0.0.0600, write_device_bus_id è 0.0.0601, e data_device_bus_id è 0.0.0602. Il dispositivo è un NIC virtuale di z/VM, e l'indirizzo IP che desideriamo assegnare è 192.168.70.69.
# echo 0.0.0600,0.0.0601,0.0.0602 > /sys/bus/ccwgroup/drivers/qeth/group |
Successivamente verificate che il dispositivo del gruppo qeth è stato creato correttamente:
# ls /sys/bus/ccwgroup/drivers/qeth 0.0.0600 0.0.09a0 group notifier_register |
Facoltativamente potreste aggiungere un portname. Come prima cosa controllatre se è necessario un portname:
# cat /sys/bus/ccwgroup/drivers/qeth/0.0.0600/portname no portname required |
Se ricevete la suddetta risposta, ciò stà ad indicare che non è necessario specificare alcun portname.
Per aggiungere un portname, controllate che i dispositivi siano offline per poi eseguire il seguente comando:
![]() | Nota Bene |
|---|---|
Quando aggiungete un portname, il dispositivo deve essere offline. |
# echo <portname> > /sys/bus/ccwgroup/drivers/qeth/0.0.0600/portname |
Successivamente riportate il dispositivo online:
# echo 1 /sys/bus/ccwgroup/drivers/qeth/0.0.0600/online |
Verificatene il suo stato:
# cat /sys/bus/ccwgroup/drivers/qeth/0.0.0600/online 1 |
Un valore pari ad "1", indica che il dispositivo è online, mentre un valore '0' indica che il dispositivo è offline.
Controllate il nome dell'interfaccia assegnata al dispositivo:
# cat /sys/bus/ccwgroup/drivers/qeth/0.0.0600/if_name eth1 |
Per modificare il valore if_name, utilizzate il seguente comando:
# echo <new_if_name> > /sys/bus/ccwgroup/drivers/qeth/0.0.0600/if_name |
Facoltativamente potreste impostare un set aggiuntivo di parametri e di caratteristiche, a seconda del modo in cui impostate il vostro sistema e delle caratteristiche stesse a voi necessarie.
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
Per maggiori informazioni sul funzionamento dei suddetti contenuti, consultate http://oss.software.ibm.com/developerworks/opensource/linux390/docu/lx26apr04dd01.pdf (Linux per driver di dispositivi zSeries e S/390, contenuti, e comandi).
Ora è necessario creare il file di configurazione per la vostra nuova interfaccia. I file di configurazione dell'interfaccia di rete, si trovano in /etc/sysconfig/network-scripts.
I file di configurazione di rete utilizzano la naming convention ifcfg-<device>, dove il dispositivo risulta essere il valore trovato all'interno del file if_name, nel dispositivo del gruppo qeth creato precedentemente. In questo esempio risulta essere eth1.
Se un file di configurazione risulta essere già presente per un altro dispositivo dello stesso tipo, la cosa migliore da fare è quella di copiarlo sul nuovo nome.
# cd /etc/sysconfig/network-scripts # cp ifcfg-eth0 ifcfg-eth1 |
Se non avete alcun dispositivo simile già definito, allora è necessario crearlo. Utilizzate questo esempio di ifcfg-eth0 come riferimento.
/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 |
Modificate il nuovo file ifcfg-eth1.
Rimuovete per adesso la riga HWADDR.
Modificate l'istruzione DEVICE in modo da riflettere i contenuti del file if_name dal vostro gruppo ccw.
Modificate l'istruzione IPADDR in modo da riflettere l'indirizzo IP della vostra nuova interfaccia.
Modificate l'istruzione di NETMASK come necessario.
Se desiderate attivare la vostra nuova interfaccia al momento dell'avvio, assicuratevi che ONBOOT sia impostato su yes.
Assicuratevi che l'istruzione SUBCHANNELS corrisponda agli indirizzi hardware per il vostro dispositivo 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 dispositivo qeth necessita di una definizione alias in /etc/modprobe.conf. Modificate questo file e aggiungete un alias per la vostra interfaccia.
/etc/modprobe.conf alias eth0 qeth alias eth1 qeth options dasd_mod dasd=0.0.0100,0.0.4b19 |
Adesso potete avviare la vostra nuova interfaccia:
# ifup eth1 |
Controllate lo stato dell'interfaccia:
# 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) |
Notate il campo HWaddr sulla prima riga dell'output del comando ifconfig. Il valore seguente deve essere aggiunto al file ifcfg-eth1. Aggiungete una riga simile al file sopra indicato:
HWADDR=02:00:00:00:00:01 |
Ora ifcfg-eth1 sarà simile a:
# 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 |
Controllate il routing per la nuova interfaccia:
# 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 |
Verificate le vostre modifiche utilizzando il comando ping, per eseguire un ping del gateway:
# 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 |
Se le informazioni sul route di default sono cambiate, è necessario aggiornare /etc/sysconfig/network conseguentemente.
Vi sono diversi compiti di base da seguire per poter aggiungere una interfaccia di rete sui sistemi zSeries.
Caricamento del driver del dispositivo.
Creazione del dispositivo del gruppo, oppure per IUCV, creare il dispositivo IUCV.
Configurare il dispositivo.
Impostate il dispositivo online (non applicabile a IUCV).
Definire l'alias (se necessario).
Creazione di uno script di configurazione.
Attivazione del dispositivo.
Le seguenti sezioni forniscono delle informazioni di base per ogni compito di ogni driver del dispositivo di rete zSeries.
Il driver del dispositivo LAN channel station (LCS), supporta OSA-2 Ethernet/Token Ring, OSA-Express Fast Ethernet in modalità non-QDIO, e OSA-Express High Speed Token Ring in modalità non-QDIO. Per z990, il driver LCS supporta Gigabit Ethernet in modalità non-QDIO (incluso 1000Base-T).
In base al tipo di interfaccia aggiunta, il driver LCS assegna uno dei due nomi dell'interfaccia di base: eth<n> per OSA-Express Fast Ethernet e Gigabit Ethernet tr<n> per Token Ring, dove <n> risulta essere un valore intero che identifica unicamente il dispositivo. <n> è 0 per il primo dispositivo di quel tipo, 1 per il secondo e così via.
Caricamento del driver del dispositivo:
# modprobe lcs |
Creazione del dispositivo del gruppo:
# echo <read_device_bus_id>,<write_device_bus_id> > /sys/bus/ccwgroup/drivers/lcs/group |
A causa della lunghezza di questo comando, esso è stato suddiviso in due linee.
Configurare il dispositivo.
Le schede OSA sono in grado di fornire fino a 16 porte per un singolo CHPID. Per default il dispositivo del gruppo LCS utilizza la porta 0. Per utilizzare una porta diversa, emettere un camando simile al seguente:
# echo <portno> > /sys/bus/ccwgroup/drivers/lcs/<device_bus_id>/portno |
Per maggiori informazioni su come configurare il dispositivo in questione consultate quanto segue:
http://oss.software.ibm.com/developerworks/opensource/linux390/docu/lx26apr04dd01.pdf (Linux per Driver dei Dispositivi zSeries e S/390, Caratteristiche e Comandi)
Impostare il dispositivo online:
# echo 1 /sys/bus/ccwgroup/drivers/lcs/<read_device_bus_id>/online |
Definire l'alias
In base al tipo di interfaccia introdotta, aggiungete una riga a /etc/modprobe.conf simile a quella seguente:
eth<n> alias lcs tr<n> alias lcs |
Creazione di uno script di configurazione.
Create un file in /etc/sysconfig/network-scripts con un nome simile a quelli seguenti:
ifcfg-eth<n> ifcfg-tr<n> |
Il file dovrebbe essere simile al seguente:
/etc/sysconfig/network-scripts/ifcfg-eth0 # IBM LCS DEVICE=eth0 BOOTPROTO=static HWADDR=00:06:29:FB:5F:F1 IPADDR=9.12.20.136 NETMASK=255.255.255.0 ONBOOT=yes NETTYPE=lcs SUBCHANNELS=0.0.09a0,0.0.09a1 PORTNAME=0 TYPE=Ethernet |
In base al tipo di interfaccia aggiunta, il parametro DEVICE dovrebbe essere uno dei seguenti:
DEVICE=eth<n> DEVICE=tr<n> |
Attivazione del dispositivo.
In base al tipo di interfaccia aggiunta, emettere il comando ifup:
# ifup eth<n> # ifup tr<n> |
Il driver del dispositivo di rete QETH supporta zSeries HiperSockets, OSA-Express Fast Ethernet, Gigabit Ethernet (incluso 1000Base-T), High Speed Token Ring, e le caratteristicheATM (esecuzione dell'emulazione Ethernet LAN) in modalità QDIO.
In base al tipo di interfaccia aggiunta, il driver QETH assegnerà uno dei tre nomi dell'interfaccia di base:
hsi<n> per i dispositivi HiperSocket
eth<n> per OSA-Express Fast Ethernet e Gigabit Ethernet
tr<n> per Token Ring
Dove <n> è un valore intero che identifica unicamente il dispositivo. <n> è 0 per il primo dispositivo di quel tipo, 1 per il secondo e così via.
Caricamento del driver del dispositivo:
# modprobe qeth |
Creazione del dispositivo del gruppo:
# echo <read_device_bus_id>,<write_device_bus_id>,<data_device_bus_id> > /sys/bus/ccwgroup/drivers/qeth/group |
A causa della lunghezza di questo comando, esso è stato suddiviso in due linee.
Configurare il dispositivo.
Per maggiori informazioni su come configurare il driver QETH consultate quanto segue:
http://oss.software.ibm.com/developerworks/opensource/linux390/docu/lx26apr04dd01.pdf (Linux per Driver dei Dispositivi zSeries e S/390, Caratteristiche e Comandi)
Impostare il dispositivo online:
# echo 1 /sys/bus/ccwgroup/drivers/qeth/<read_device_bus_id>/nline |
Definire l'alias
In base al tipo di interfaccia introdotta, aggiungete una riga su /etc/modprobe.conf, simile alle seguenti:
hsi<n> alias qeth eth<n> alias qeth tr<n> alias qeth |
Creazione di uno script di configurazione.
Create un file in /etc/sysconfig/network-scripts con un nome simile a quelli seguenti:
ifcfg-hsi<n> ifcfg-eth<n> ifcfg-tr<n> |
Il file dovrebbe somigliare al seguente:
/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 |
In base al tipo di interfaccia aggiunta, il parametro DEVICE dovrebbe essere uno dei seguenti:
DEVICE=hsi<n> DEVICE=eth<n> DEVICE=tr<n> |
Attivazione del dispositivo.
In base al tipo di interfaccia aggiunta, emettere il comando ifup:
# ifup hsi<n> # ifup eth<n> # ifup tr<n> |
Il collegamento Channel-to-Channel (CTC) risulta essere il tipico collegamento veloce tra mainframe. Il driver del dispositivo CTC può essere utilizzato per stabilire un collegamento point-to-point TCP/IP o tty tra Linux per istanze zSeries e S/390, oppure tra Linux per istanze zSeries e S/390 ed istanze del sistema operativo di altre mainframe, come ad esempio z/OS, OS/390, z/VM, o z/VSE.
Il driver CTC assegna una interfaccia di base simile a quanto segue:
ctc<n> |
Dove <n> è un valore intero che identifica unicamente il dispositivo. <n> è 0 per il primo dispositivo di quel tipo, 1 per il secondo e così via.
Caricamento del driver del dispositivo:
# modprobe ctc |
Creazione del dispositivo del gruppo:
# echo <read_device_bus_id>,<write_device_bus_id> > /sys/bus/ccwgroup/drivers/ctc/group |
A causa della lunghezza di questo comando, esso è stato suddiviso in due linee.
Configurare il dispositivo.
Impostare il protocollo:
# echo <protocol> /sys/bus/ccwgroup/drivers/ctc/<device_bus_id>/protocol |
Dove <protocol> risulta essere 0, 1, 2, or 3.
0 — Questo protocollo fornisce una compatibilità con peer diversi da OS/390, o z/OS, per esempio, una macchina del servizio VM TCP. Questo risulta essere il default.
1 — Questo protocollo fornisce un miglior controllo dei pacchetti per i peer di Linux.
2 — Questo protocollo fornisce un collegamento tty basato su CTC con un peer di Linux.
3 — Questo protocollo fornisce una compatibilità con peer OS/390 o z/OS.
Per maggiori informazioni su come configurare il driver CTC consultate quanto segue:
http://oss.software.ibm.com/developerworks/opensource/linux390/docu/lx26apr04dd01.pdf (Linux per Driver dei Dispositivi zSeries e S/390, Caratteristiche e Comandi)
Impostare il dispositivo online:
# cho 1 /sys/bus/ccwgroup/drivers/lcs/<read_device_bus_id>/online |
Definire l'alias
In base al tipo di interfaccia integrata, aggiungere una riga su /etc/modprobe.conf simile a quanto segue:
ctc<n> alias ctc |
Creazione di uno script di configurazione.
Create un file in /etc/sysconfig/network-scripts con un nome simile al seguente:
ifcfg-ctc<n> |
Il file dovrebbe somigliare al seguente:
/etc/sysconfig/network-scripts/ifcfg-ctc0 # IBM CTC DEVICE=ctc0 BOOTPROTO=static IPADDR=192.168.70.136 GATEWAY=172.16.70.136 NETMASK=255.255.255.255 ONBOOT=yes SUBCHANNELS=0.0.1b00,0.0.1b01 NETTYPE=ctc CTCPROT=0 TYPE=CTC |
Attivazione del dispositivo.
In base al tipo di interfaccia aggiunta, emettere il comando ifup:
# ifup ctc<n> |
Inter-User Communication Vehicle (IUCV) risulta essere un servizio di comunicazione VM che abilita un programma in esecuzione in un VM guest, di comunicare con un altro VM guest, o con un programma di controllo, o addirittura con se stesso. Linux per il driver del dispositivo IUCV S/390 e zSeries, risulta essere un driver del dispositivo di rete, il quale utilizza IUCV per il collegamento dei guest di Linux in esecuzione su ID user VM diversi, o per collegare un guest di Linux ad un altro VM guest come ad esempio una macchina del servizio TCP/IP.
Il driver IUCV assegna un nome per l'interfaccia di base simile al seguente:
iucv<n> |
Dove <n> è un valore intero che identifica unicamente il dispositivo. <n> è 0 per il primo dispositivo di quel tipo, 1 per il secondo e così via.
Caricamento del driver del dispositivo:
# modprobe netiucv |
Creazione del dispositivo IUCV:
# echo <peer_id> > /sys/bus/iucv/drivers/netiucv/connection |
Dove <peer_id> è l'ID guest del VM guest al quale desiderate collegarvi. Il driver del dispositivo IUCV interpreta l'ID con lettere maiuscole. Questo è generalmente TCPIP.
Ciò crea una struttura sysfs simile alla seguente:
cat /sys/bus/iucv/drivers/netiucv/netiucv<n> |
Dove <n> è un valore intero che identifica unicamente il dispositivo. <n> è 0 per il primo dispositivo di quel tipo, 1 per il secondo e così via.
Configurare il dispositivo.
Se necessario impostate la misura massima dei buffer:
# echo <value> > /sys/bus/iucv/drivers/netiucv/netiucv<n>/buffer |
<value> è il numero di byte che desiderate impostare. Se specificate un valore diverso dalla gamma valida, il comando viene ignorato.
La gamma di valori accettata per la misura massima del buffer, dipende dalle impostazioni MTU. I suddetti valori devono rientrare nella gamma <MTU minimo+ misura della testata> fino a <MTU massimo+ misura della testata>. Lo spazio della testata è generalmente di 4 byte. Il valore di default per la misura massima del buffer è di 32768 bytes (32 KB).
Per maggiori informazioni sulla configurazione del driver IUCV consultate quanto segue:
http://oss.software.ibm.com/developerworks/opensource/linux390/docu/lx26apr04dd01.pdf (Linux per Driver dei Dispositivi zSeries e S/390, Caratteristiche e Comandi)
Definire l'alias
In base al tipo di interfaccia integrata, aggiungere una riga su /etc/modprobe.conf simile a quanto segue:
iucv<n> alias netiucv |
Creazione di uno script di configurazione.
Create un file in /etc/sysconfig/network-scripts con un nome simile al seguente:
ifcfg-iucv<n> |
Il file dovrebbe somigliare al seguente:
/etc/sysconfig/network-scripts/ifcfg-iucv0 # IBM IUCV DEVICE=iucv0 BOOTPROTO=static IPADDR=192.168.70.136 GATEWAY=172.16.70.136 NETMASK=255.255.255.255 ONBOOT=yes NETTYPE=iucv PEERID=TCPIP TYPE=IUCV |
Attivazione del dispositivo.
In base al tipo di interfaccia aggiunta, emettere un comando ifup simile al seguente:
# ifup iucv<n> |