Show Table of Contents
25.3. 添加网络设备
网络设备驱动程序模块自动由 udev 载入。
可动态或者永久在 IBM System z 中添加网络接口。
- 动态
- 载入设备驱动程序
- 从忽略的设备列表中删除网络设备。
- 创建组设备。
- 配置该设备。
- 在线设置设备。
- 永久
- 创建配置脚本。
- 激活该接口。
下面的部分为每个 IBM System z 网络设备驱动程序的每个任务提供基本信息。第 25.3.1 节 “添加 qeth 设备” 描述如何在现有 Red Hat Enterprise Linux 实例中添加 qeth 设备。第 25.3.2 节 “添加 LCS 设备” 描述如何在 Red Hat Enterprise Linux 现有实例中添加 lcs 设备。第 25.3.3 节 “映射子通道和网络设备名称” 描述如何永久保留网络设备名称。第 25.3.4 节 “为网络 Root 文件系统配置 System z 网络设备” 描述如何将网络设备配置为使用只能通过网络访问的 root 文件系统。
25.3.1. 添加 qeth 设备
qeth 网络设备驱动程序支持 System z QDIO 模式、HiperSocket、z/VM 客体 LAN 以及 z/VM VSWITCH 的 OSA 快速特性。
根据所添加接口的类型,qeth 设备驱动程序分配以下三个基本接口名之一:
- hsin 用于 HiperSocket 设备
- hsin 用于以太网特性
n 的值是一个唯一的整数值来区分不同的设备。n 为 0 代表此种类型中的第一个设备,1 为第 2 个设备,依次类推。
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命令的输出显示这个模块还没有被载入,则请运行modprobe命令去载入它们:# modprobe qeth - 使用
cio_ignore命令删除忽略的设备列表中的网络通道,并使其出现在 Linux 中:# cio_ignore -r read_device_bus_id,write_device_bus_id,data_device_bus_id使用三个代表网络设备的设备总线 ID 替换 read_device_bus_id、write_device_bus_id 和 data_device_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
有关额外参数的详情请参考《System z 中的 Linux: Red Hat Enterprise Linux 6 中的设备驱动程序、特性和命令》中有关 qeth 设备驱动程序的章节。 - 在在线 sysfs 属性中写入 1 将设备设置为在线:
# 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-device 命名规则,其中 device 可在之前生成的 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 文件,如下:
- 修改
DEVICE状态反映 ccw 组群中if_name的内容。 - 修改
IPADDR状态反映新接口的 IP 地址。 - 根据需要修改
NETMASK状态。 - 如果要在引导时激活新接口,则请确定将
ONBOOT设定为yes。 - 请确定
SUBCHANNELS说明与 qeth 设备的硬件地址一致。 - 修改
PORTNAME状态,如果环境不需要该参数,则无需修改。 - 可在
OPTIONS参数中添加任意有效 sysfs 属性及其值。 Red Hat Enterprise Linux 安装程序目前使用它配置 qeth 设备的层模式(layer2)以及相关端口号(portno)。现在 OSA 设备的默认 qeth 设备驱动程序为层 2 模式。要继续使用之前默认依赖为层 3 模式旧的 ifcfg 定义,请在OPTION参数中添加layer2=0。
/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使用三个代表网络设备的设备总线 ID 替换 read_device_bus_id、write_device_bus_id 和 data_device_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.