Show Table of Contents
25.3. 加入網路裝置
網路裝置驅動程式模組會自動地被 udev 載入。
您可手動式或永續性地在 IBM System z 上新增網路介面卡。
- 動態式
- 載入裝置驅動程式
- 將網路裝置由忽略裝置清單中移除。
- 建立群組裝置:
- 設定裝置。
- 將裝置設為啟用。
- 永續性
- 建立一個配置 script。
- 啟用介面卡。
下列部份提供了各個 IBM System z 網路裝置驅動程式與其任務上的基本資訊。節 25.3.1, “新增 qeth 裝置” 描述了如何將 qeth 裝置新增至一個既有的 Red Hat Enterprise Linux 上。節 25.3.2, “新增一個 LCS 裝置” 描述了如何將一個 lcs 裝置新增至既有的 Red Hat Enterprise Linux 上。節 25.3.3, “對映子頻道和網路裝置名稱” 描述了永續性的網路裝置名稱如何運作。節 25.3.4, “為網路 Root 檔案系統配置 System z 網路裝置” 描述了如何配置網路裝置,以便與一個只能透過網路存取的 root 檔案系統搭配使用。
25.3.1. 新增 qeth 裝置
qeth 網路裝置驅動程式在 QDIO 模式、HiperSockets、z/VM guest LAN,以及 z/VM VSWITCH 中支援 System z OSA-Express 功能。
根據要加入的介面卡類型,qeth 驅動程式會指定其中一組基本介面卡名稱:
- hsin 代表 HiperSockets 裝置
- ethn 代表乙太網路
其中 n 這個值,是個獨一無二、用來代表裝置的整數。n 如果為
0,代表第一個該類型的裝置,1 則代表第二個裝置,由此類推。
25.3.1.1. 動態式新增 qeth 裝置
若要動態式新增 qeth 裝置,請依照下列步驟進行:
- 判斷 qeth 裝置驅動程式模組是否已載入。下列範例顯示了已載入的 qeth 模組:
# lsmod | grep qeth qeth_l3 127056 9 qeth_l2 73008 3 ipv6 492872 155ip6t_REJECT,nf_conntrack_ipv6,qeth_l3 qeth 115808 2 qeth_l3,qeth_l2 qdio 68240 1 qeth ccwgroup 12112 2 qeth
如果lsmod指令的輸出顯示 qeth 模組尚未被載入,請執行modprobe以載入這些模組:# modprobe qeth - 請使用
cio_ignore指令來將網路頻道由被忽略的裝置清單中移除,並使其能讓 Linux 偵測到:# cio_ignore -r read_device_bus_id,write_device_bus_id,data_device_bus_id將 read_device_bus_id、write_device_bus_id、data_device_bus_id 取代為代表網路裝置的三組裝置 bus ID。比方說,若 read_device_bus_id 是0.0.f500的話,write_device_bus_id 便是0.0.f501,並且 data_device_bus_id 則為0.0.f502:# cio_ignore -r 0.0.f500,0.0.f501,0.0.f502 - 請使用 znetconf 指令來偵測和列出網路裝置的候選配置:
# znetconf -u Scanning for network devices... Device IDs Type Card Type CHPID Drv. ------------------------------------------------------------ 0.0.f500,0.0.f501,0.0.f502 1731/01 OSA (QDIO) 00 qeth 0.0.f503,0.0.f504,0.0.f505 1731/01 OSA (QDIO) 01 qeth 0.0.0400,0.0.0401,0.0.0402 1731/05 HiperSockets 02 qeth
- 選擇您希望設置的配置,然後使用 znetconf 來套用配置,並將經過配置的群組裝置啟用為網路裝置。
# znetconf -a f500 Scanning for network devices... Successfully configured device 0.0.f500 (eth1)
- 您亦可選用性地在群組裝置啟用前,傳送在該群組裝置上所配置的引數:
# znetconf -a f500 -o portname=myname Scanning for network devices... Successfully configured device 0.0.f500 (eth1)
現在,您可繼續配置網路eth1介面卡。
此外,您亦可使用 sysfs 屬性來如下啟用裝置:
- 建立 qeth 群組裝置:
# echo read_device_bus_id,write_device_bus_id,data_device_bus_id > /sys/bus/ccwgroup/drivers/qeth/group舉例來說:# echo 0.0.f500,0.0.f501,0.0.f502 > /sys/bus/ccwgroup/drivers/qeth/group - 接下來,請透過搜尋讀取頻道來確認 qeth 群組裝置是否已正確建立:
# ls /sys/bus/ccwgroup/drivers/qeth/0.0.f500視您設定系統的方式與所需要的功能而定,您可選擇性地設定額外參數與功能。例如:portnolayer2portname
欲取得更多有關於額外參數上的相關資訊,請參閱 Linux on System z Device Drivers, Features, and Commands on Red Hat Enterprise Linux 6 中的 qeth 裝置驅動程式章節。 - 藉由將 1 寫至啟用 sysfs 屬性中來啟用裝置:
# echo 1 > /sys/bus/ccwgroup/drivers/qeth/0.0.f500/online - 並檢查裝置的狀態:
# cat /sys/bus/ccwgroup/drivers/qeth/0.0.f500/online1傳回值1表示裝置已啟用;而0則表示裝置目前停用。 - 找出指定給裝置的介面卡名稱:
# cat /sys/bus/ccwgroup/drivers/qeth/0.0.f500/if_nameeth1現在,您可繼續配置網路eth1介面卡。下列來自於 s390utils 套件的指令顯示了您 qeth 裝置最重要的設定:# lsqeth eth1 Device name : eth1 --------------------------------------------- card_type : OSD_1000 cdev0 : 0.0.f500 cdev1 : 0.0.f501 cdev2 : 0.0.f502 chpid : 76 online : 1 portname : OSAPORT portno : 0 state : UP (LAN ONLINE) priority_queueing : always queue 0 buffer_count : 16 layer2 : 1 isolation : none
25.3.1.2. 動態式移除 qeth 裝置
若要移除 qeth 裝置,請使用 znetconf 工具。例如:
- 使用
znetconf指令來顯示所有已配置的網路裝置:znetconf -c Device IDs Type Card Type CHPID Drv. Name State -------------------------------------------------------------------------------- 0.0.8036,0.0.8037,0.0.8038 1731/05 HiperSockets FB qeth hsi1 online 0.0.f5f0,0.0.f5f1,0.0.f5f2 1731/01 OSD_1000 76 qeth eth0 online 0.0.f500,0.0.f501,0.0.f502 1731/01 GuestLAN QDIO 00 qeth eth1 online
- 選擇欲移除的網路裝置並啟用
znetconf,以將裝置設為停用,並將 ccw 群組裝置的群組設定解除。# znetconf -r f500 Remove network device 0.0.f500 (0.0.f500,0.0.f501,0.0.f502)? Warning: this may affect network connectivity! Do you want to continue (y/n)?y Successfully removed device 0.0.f500 (eth1)
- 驗證移除是否成功:
znetconf -c Device IDs Type Card Type CHPID Drv. Name State -------------------------------------------------------------------------------- 0.0.8036,0.0.8037,0.0.8038 1731/05 HiperSockets FB qeth hsi1 online 0.0.f5f0,0.0.f5f1,0.0.f5f2 1731/01 OSD_1000 76 qeth eth0 online
25.3.1.3. 永續性新增 qeth 裝置
若要使您的新 qeth 裝置持有永續性,您必須要為您的新介面卡建立配置檔案。網路介面卡配置檔案位於
/etc/sysconfig/network-scripts/ 中。
這些網路配置檔案的命名方式為
ifcfg-裝置,其中的裝置代表位於稍早建立的 qeth 群組裝置中,if_name 檔案裡的值。在此範例中為 eth1。若使用了永續性的裝置配置,cio_ignore 將會被自動處理,並且您無須手動式地將裝置由忽略清單中移除。
如果另一個同類型裝置的配置檔案已存在,那麼最簡單的解決方法,就是以一組新的名稱來複製它。
# cd /etc/sysconfig/network-scripts # cp ifcfg-eth0 ifcfg-eth1
如果您未定義相似的裝置,您就必須建立。請使用此
ifcfg-eth0 範例來作為範本:
/etc/sysconfig/network-scripts/ifcfg-eth0
# IBM QETH DEVICE=eth0 BOOTPROTO=static IPADDR=10.12.20.136 NETMASK=255.255.255.0 ONBOOT=yes NETTYPE=qeth SUBCHANNELS=0.0.09a0,0.0.09a1,0.0.09a2 PORTNAME=OSAPORT OPTIONS='layer2=1 portno=0' MACADDR=02:00:00:23:65:1a TYPE=Ethernet
如下編輯新的 ifcfg-eth1 檔案:
- 修改
DEVICEstatement,以反映來自於您 ccwgroup 的if_name檔案中的內容。 - 修改
IPADDRstatement,以反映您新介面卡的 IP 位址。 - 視需求修改
NETMASKstatement。 - 如果您希望開機的時候啟動新的介面卡,那麼請確認
ONBOOT已設為yes。 - 請確認
SUBCHANNELSstatement 和您 qeth 裝置的硬體位址符合。 - 修改
PORTNAMEstatement,或若是您無須在您的環境中使用它,請將它保留為空白。 - 您可將任何有效的 sysfs 屬性和它的值附加至
OPTIONS參數。Red Hat Enterprise Linux 的安裝程式目前使用此來配置層級模式(layer2)以及 qeth 裝置的相聯連接埠號(portno)。OSA 裝置的 qeth 裝置驅動程式預設值現在是 layer 2 模式。若要繼續使用依賴先前 layer 3 模式預設值的舊 ifcfg 定義,請將layer2=0新增至OPTIONS參數。
/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 PORTNAME=OSAPORT OPTIONS='layer2=1 portno=0' MACADDR=02:00:00:b3:84:ef TYPE=Ethernet
ifcfg 檔案的修改只有在重新啟動系統,或是透過更改系統 I/O 配置來動態式新增網路裝置時(比方說,連至 z/VM 上),才會生效。此外,您亦可透過下列指令來為網路頻道啟用先前尚未啟用的 ifcfg 檔案:
- 請使用
cio_ignore指令來將網路頻道由被忽略的裝置清單中移除,並使其能讓 Linux 偵測到:# cio_ignore -r read_device_bus_id,write_device_bus_id,data_device_bus_id將 read_device_bus_id、write_device_bus_id、data_device_bus_id 取代為代表網路裝置的三組裝置 bus ID。比方說,若是 read_device_bus_id 為0.0.0600,write_device_bus_id 便會是0.0.0601,而 data_device_bus_id 則會是0.0.0602:# cio_ignore -r 0.0.0600,0.0.0601,0.0.0602 - 若要啟動將啟用變更的 uevent,請輸入:
echo add > /sys/bus/ccw/devices/read-channel/uevent舉例來說:echo add > /sys/bus/ccw/devices/0.0.0600/uevent - 檢查網路裝置的狀態:
# lsqeth - 現在您可啟用新的介面卡:
# 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) - 檢查新介面卡的路由資訊:
# 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 10.1.20.0 * 255.255.255.0 U 0 0 0 eth0 default 10.1.20.1 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。

Where did the comment section go?
Red Hat's documentation publication system recently went through an upgrade to enable speedier, more mobile-friendly content. We decided to re-evaluate our commenting platform to ensure that it meets your expectations and serves as an optimal feedback mechanism. During this redesign, we invite your input on providing feedback on Red Hat documentation via the discussion platform.