| Red Hat Enterprise Linux 4: インストールガイド - IBM® S/390® と IBM® eServer™ zSeries® Architecture | ||
|---|---|---|
| 前のページ | 付録 F. 詳細情報 - S/390 及び zSeries のユーザー | 次のページ |
ネットワークデバイスの追加の手順が Red Hat Enterprise Linux ではかなり変更されています。これは 2.4 カーネルから 2.6 カーネルへの移行によるものです。
proc ファイルシステムはネットワークデバイスでのステータス管理や取得に使われなくなりました。
新しい sys ファイルシステムがデバイスの管理に関するファシリティを提供するようになります。
/sys/class/net/<interface_name>/device がアクティブなデバイスでのステータスを提供するようになります。
<interface_name> は eth0 や ctc2 などのような名前で、デバイスが設定されるときにデバイスドライバによってネットワークインターフェースに与えられます。
/etc/chandev.conf はなくなりました。
sys ファイルシステムには /etc/chandev.conf に格納されていた情報が含まれるようになります。
/etc/modules.conf はなくなりました。
ネットワークインターフェースのエイリアス指定は /etc/modprobe.conf に格納されるようになります。
項F.6.1 では qeth デバイスを既存の Red Hat Enterprise Linux のインスタンスに追加する方法について詳細に説明されています。項F.6.2 はその他の zSeries ネットワークインターフェースのインストールに関するクィックリファレンスになります。
まず、qeth デバイスドライバモジュールが読み込まれているかどうか確認します。
# lsmod | grep qeth qeth 135240 0 qdio 45360 2 qeth ipv6 303984 13 qeth ccwgroup 15104 1 qeth |
lsmod コマンドの出力がモジュールを読み込んでいないと表示している場合には、modprobe コマンドを実行して読み込む必要があります。
# modprobe qeth |
次に、qeth グループデバイスを作成します。
# echo <read_device_bus_id>,<write_device_bus_id>,<data_device_bus_id> > /sys/bus/ccwgroup/drivers/qeth/group |
このコマンドラインは長いため、記載の都合上、2 行になっています。
次の例では、read_device_bus_id は 0.0.0600 で、write_device_bus_id は 0.0.0601、data_device_bus_id は 0.0.0602 になっています。このデバイスは z/VM 仮想 NIC で、このインターフェースに割り当てられるべき IP アドレスは 192.168.70.69 です。
# echo 0.0.0600,0.0.0601,0.0.0602 > /sys/bus/ccwgroup/drivers/qeth/group |
次に、qeth グループデバイスが正しく作成されたか確認します。
# ls /sys/bus/ccwgroup/drivers/qeth 0.0.0600 0.0.09a0 group notifier_register |
オプションでポート名を追加しても構いません。まず、ポート名が必要かどうかを確認する必要があります。
# cat /sys/bus/ccwgroup/drivers/qeth/0.0.0600/portname no portname required |
この応答ではポート名を与える必要がないことを示しています。
ポート名を追加するには、デバイスがオフラインであることを確認してから次のコマンドを実行します。
![]() | 注記 |
|---|---|
ポート名を追加するときはデバイスがオフラインになっていなければなりません。 |
# echo <portname> > /sys/bus/ccwgroup/drivers/qeth/0.0.0600/portname |
次に、デバイスをオンラインに戻します。
# echo 1 /sys/bus/ccwgroup/drivers/qeth/0.0.0600/online |
それからデバイスの状態を確認します。
# cat /sys/bus/ccwgroup/drivers/qeth/0.0.0600/online 1 |
戻り値の「1」はデバイスがオンラインであることを示し、戻り値が '0' はデバイスがオフラインであることを示します。
デバイスに割り当てられたインターフェース名がどうなっているか確認します。
# cat /sys/bus/ccwgroup/drivers/qeth/0.0.0600/if_name eth1 |
if_name の値を変更するには、次のコマンドを実行します。
# echo <new_if_name> > /sys/bus/ccwgroup/drivers/qeth/0.0.0600/if_name |
必要とされるシステムやその機能を設定する方法によって、オプションで追加のパラメータや機能を設定することができます。
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
これらの機能がどのように役立つのかについては次を参照してください。http://oss.software.ibm.com/developerworks/opensource/linux390/docu/lx26apr04dd01.pdf (Linux for zSeries and S/390 Device Drivers, Features, and Commands)。
次に、新しいインターフェースの設定ファイルを作成する必要があります。ネットワークインターフェース設定ファイルは /etc/sysconfig/network-scripts/ に格納されています。
ネットワーク設定ファイルは命名規則 ifcfg-<device> を使用し、ここのデバイスは先に作成した qeth グループデバイスにある if_name にその値があります。この例では eth1 になります。
既に定義した同じタイプの別のデバイスの設定ファイルがある場合は、それを新しい名前にコピーするのが一番簡単な方法です。
# cd /etc/sysconfig/network-scripts # cp ifcfg-eth0 ifcfg-eth1 |
定義されている同じようなデバイスがない場合は作成しなければなりません。テンプレートとしてこの ifcfg-eth0 の例を使用してください。
/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 |
新しいファイル ifcfg-eth1 を編集します。
ここで HWADDR の行を削除します。
DEVICE の記述が ccwgroup からの if_name の内容を反映するよう修正します。
IPADDR の記述が新しいインターフェースの IP アドレスを反映するよう修正します。
必要に応じて NETMASK の記述を修正します。
新しいインターフェースが起動時にアクティブになるようにする場合は、ONBOOT が yes に設定されていることを確認します。
SUBCHANNELS の記述が 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 |
qeth デバイスには /etc/modprobe.conf でエイリアスの定義が必要です。このファイルを編集してインターフェースのエイリアスを追加します。
/etc/modprobe.conf alias eth0 qeth alias eth1 qeth options dasd_mod dasd=0.0.0100,0.0.4b19 |
これで新しいインターフェースを開始することができます。
# ifup eth1 |
インターフェースのステータスを確認します。
# 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) |
ifconfig コマンドの最初の行にある HWaddr フィールドの出力に注意してください。この後ろにある値を ifcfg-eth1 ファイルに追加する必要があります。次のような行をそのファイルに追加します。
HWADDR=02:00:00:00:00:01 |
これで ifcfg-eth1 は次のようになります。
# 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 |
新しいインターフェースのルーティングを確認します。
# 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 |
ping コマンドを使ってゲートウェイを ping して変更を確認します。
# 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 |
デフォルトのルート情報が変更している場合、それに応じて /etc/sysconfig/network も更新する必要があります。
zSeries のシステムでネットワークインターフェースを追加するための基本的な作業がいくつかあります。
デバイスドライバを読み込みます。
グループデバイスを作成するか、IUCV の場合には IUCV デバイスを作成します。
デバイスを設定します。
デバイスをオンラインに設定します (IUCV には適用しません)。
エイリアスを定義します(必要であれば)。
設定スクリプトを作成します。
デバイスをアクティブにします。
次のセクションでは各 zSeries ネットワークデバイスドライバの基本的な情報を説明しています。
LAN チャンネルステーション (LCS) デバイスドライバは OSA-2 Ethernet/Token Ring、non-QDIO モードでの OSA-Express Fast Ethernet、non-QDIO モードでの OSA-Express High Speed Token Ring に対応しています。z990 の場合、LCS ドライバは non-QDIO モードでの Gigabit Ethernet にも対応しています (1000Base-T を含む)。
追加されるインターフェースのタイプに応じて、LCS ドライバは 2 つのベースインターフェース名のどちらかを割り当てます。OSA-Express Fast Ethernet には eth<n>、Token Ring には Gigabit Ethernet tr<n> です。<n> にはデバイスを固有に識別する整数が入ります。<n> はそのタイプの最初のデバイスなら 0、2 番目なら 1 と続きます。
デバイスドライバを読み込みます。
# modprobe lcs |
グループデバイスを作成します。
# echo <read_device_bus_id>,<write_device_bus_id> > /sys/bus/ccwgroup/drivers/lcs/group |
このコマンドラインは長いため、記載の都合上、2 行になっています。
デバイスを設定します。
ISA カードは単一の CHPID に対して 16 ポートまで提供することができます。デフォルトでは、LCS グループデバイスはポート 0 を使用します。別のポートを使うには、次のようなコマンドを発行します。
# echo <portno> > /sys/bus/ccwgroup/drivers/lcs/<device_bus_id>/portno |
LCS ドライバの設定についての詳細は次を参照してください。
http://oss.software.ibm.com/developerworks/opensource/linux390/docu/lx26apr04dd01.pdf (Linux for zSeries 及び S/390 デバイスドライバ、機能、コマンド)
デバイスをオンラインにセットします。
# echo 1 /sys/bus/ccwgroup/drivers/lcs/<read_device_bus_id>/online |
エイリアスを定義します。
追加されるインターフェースのタイプに応じて、次のいずれかになるような行を /etc/modprobe.conf に追加します。
eth<n> alias lcs tr<n> alias lcs |
設定スクリプトを作成します。
次のいずれかのような名前で /etc/sysconfig/network-scripts/ にファイルを作成します。
ifcfg-eth<n> ifcfg-tr<n> |
そのファイルは次のようになるはずです。
/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 |
追加されるインターフェースのタイプに応じて、DEVICE パラメータは次のいずれかにする必要があります。
DEVICE=eth<n> DEVICE=tr<n> |
デバイスをアクティブにします。
追加されるインターフェースのタイプに応じて、ifup コマンドを発行します。
# ifup eth<n> # ifup tr<n> |
QETH ネットワークデバイスドライバは zSeries HiperSockets、OSA-Express Fast Ethernet、Gigabit Ethernet (1000Base-T を含む)、High Speed Token Ring、QDIO での ATM 機能 (Ethernet LAN エミュレーションを実行)に対応しています。
追加されるインターフェースのタイプに応じて、QETH ドライバは 3 つのベースインターフェース名のいずれかを割り当てます。
HiperSocket デバイスには hsi<n>
OSA-Express Fast Ethernet 及び Gigabit Ethernet には eth<n>
Token Ring には tr<n>
<n> の値はデバイスを固有に識別する整数になります。<n> はそのタイプの最初のデバイスなら 0、2 番目なら 1 と続きます。
デバイスドライバを読み込みます。
# modprobe qeth |
グループデバイスを作成します。
# echo <read_device_bus_id>,<write_device_bus_id>,<data_device_bus_id> > /sys/bus/ccwgroup/drivers/qeth/group |
このコマンドラインは長いため、記載の都合上、2 行になっています。
デバイスを設定します。
QETH ドライバの設定についての詳細は次を参照してください。
http://oss.software.ibm.com/developerworks/opensource/linux390/docu/lx26apr04dd01.pdf (Linux for zSeries 及び S/390 デバイスドライバ、機能、コマンド)
デバイスをオンラインにセットします。
# echo 1 /sys/bus/ccwgroup/drivers/qeth/<read_device_bus_id>/nline |
エイリアスを定義します。
追加されるインターフェースのタイプに応じて、次のいずれかのような行を /etc/modprobe.conf に追加します。
hsi<n> alias qeth eth<n> alias qeth tr<n> alias qeth |
設定スクリプトを作成します。
次のいずれかのような名前で /etc/sysconfig/network-scripts/ にファイルを作成します。
ifcfg-hsi<n> ifcfg-eth<n> ifcfg-tr<n> |
このファイルは次のようになるはずです。
/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 |
追加されるインターフェースのタイプに応じて、DEVICE パラメータは次のいずれかのようになります。
DEVICE=hsi<n> DEVICE=eth<n> DEVICE=tr<n> |
デバイスをアクティブにします。
追加されるインターフェースのタイプに応じて、ifup コマンドを発行します。
# ifup hsi<n> # ifup eth<n> # ifup tr<n> |
チャンネル・ツー・チャンネル (CTC) 接続はメインフレーム間での一般的な高速接続のことです。CTC デバイスドライバは 2 台の Linux for zSeries 及び S/390 のインスタンス間、または 1台の Linux for zSeries 及び S/390 インスタンスと z/OS、OS/390、z/VM、z/VSE などの別のメインフレームのオペレーティングシステムのインスタンス間でのポイント・ツゥー・ポイント TCP/IP や tty 接続を確率するのに使用できます。
CTC ドライバは次のようなベースインターフェース名を割り当てます。
ctc<n> |
<n> の値はデバイスを固有に識別する整数になります。<n> はそのタイプの最初のデバイスなら 0、2 番目なら 1 と続きます。
デバイスドライバを読み込みます。
# modprobe ctc |
グループデバイスを作成します。
# echo <read_device_bus_id>,<write_device_bus_id> > /sys/bus/ccwgroup/drivers/ctc/group |
このコマンドラインは長いため、記載の都合上、2 行になっています。
デバイスを設定します。
プロトコルを設定します。
# echo <protocol> /sys/bus/ccwgroup/drivers/ctc/<device_bus_id>/protocol |
<protocol> には 0、1、2、3 のいずれかが入ります。
0 — このプロトコルは OS/390 または z/OS 以外の複数のピアとの互換性を提供します、例えば VM TCP サービスマシンなど。これがデフォルトです。
1 — このプロトコルは 複数の Linux ピアに拡張パッケージチェックを提供します。
2 — このプロトコルは 1 台の Linux ピアとの CTC ベースの tty 接続を提供します。
3 — このプロトコルは複数の OS/390 または z/OS ピアとの互換性を提供します。
CTC ドライバの設定についての詳細は次を参照してください。
http://oss.software.ibm.com/developerworks/opensource/linux390/docu/lx26apr04dd01.pdf (Linux for zSeries 及び S/390 デバイスドライバ、機能、コマンド)
デバイスをオンラインにセットします。
# cho 1 /sys/bus/ccwgroup/drivers/lcs/<read_device_bus_id>/online |
エイリアスを定義します。
追加されるインターフェースのタイプに応じて、次のような行を /etc/modprobe.conf に追加します。
ctc<n> alias ctc |
設定スクリプトを作成します。
次のような名前で /etc/sysconfig/network-scripts/ にファイルを作成します。
ifcfg-ctc<n> |
このファイルは次のようになるはずです。
/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 |
デバイスをアクティブにします。
追加されるインターフェースのタイプに応じて、ifup コマンドを発行します。
# ifup ctc<n> |
IUCV (Inter-User Communication Vehicle) は VM 通信機能であり、制御プログラムまたは自身を利用してある VM ゲスト上で実行中のプログラムが別の VM ゲストと通信できるようにします。Linux for zSeries 及び S/390 IUCV デバイスドライバはネットワークデバイスドライバであり、IUCV を使用して別の VM ユーザー ID 上で実行している Linux ゲストに接続、または Linux ゲストを TCP/IP サービスマシンなどの別の VM ゲストに接続します。
IUCV ドライバは次のようなベースインターフェース名を割り当てます。
iucv<n> |
<n> の値はデバイスを固有に識別する整数になります。<n> はそのタイプの最初のデバイスなら 0、2 番目なら 1 と続きます。
デバイスドライバを読み込みます。
# modprobe netiucv |
IUCV デバイスを作成します。
# echo <peer_id> > /sys/bus/iucv/drivers/netiucv/connection |
<peer_id> の値は接続先の VM ゲストのゲスト ID になります。IUCV デバイスドライバは大文字で ID を解釈します。通常、TCPIP になります。
これにより次のように sysfs 構造を作成します。
cat /sys/bus/iucv/drivers/netiucv/netiucv<n> |
<n> の値はデバイスを固有に識別する整数になります。<n> はそのタイプの最初のデバイスなら 0、2 番目なら 1 と続きます。
デバイスを設定します。
必要であれば最大バッファサイズを設定します。
# echo <value> > /sys/bus/iucv/drivers/netiucv/netiucv<n>/buffer |
<value> は設定するバイト数になります。有効範囲外の値を指定すると、そのコマンドは無視されます。
最大バッファサイズの許容範囲の値は MTU 設定により異なります。<最小 MTU + ヘッダサイズ> から <最大 MTU + ヘッダサイズ> の範囲内でなければなりません。ヘッダスペースは一般的には 4 バイトです。最大バッファサイズのデフォルトは 32768 バイト (32 KB) です。
IUCV ドライバの設定についての詳細は次を参照してください。
http://oss.software.ibm.com/developerworks/opensource/linux390/docu/lx26apr04dd01.pdf (Linux for zSeries 及び S/390 デバイスドライバ、機能、コマンド)
エイリアスを定義します。
追加されるインターフェースのタイプに応じて、次のような行を /etc/modprobe.conf に追加します。
iucv<n> alias netiucv |
設定スクリプトを作成します。
次のような名前で /etc/sysconfig/network-scripts/ にファイルを作成します。
ifcfg-iucv<n> |
このファイルは次のようになるはずです。
/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 |
デバイスをアクティブにします。
追加されるインターフェースのタイプに応じて、次のような ifup コマンドを発行します。
# ifup iucv<n> |