在运维工作中,经常需要配置运行 OpenSuSE 系统的服务器。起初我尝试沿用 CentOS 下熟悉的 ifcfg-ethx 文件配置套路,发现完全行不通。经过查阅大量资料,才掌握 OpenSuSE 独特的网络配置逻辑。以下整理核心步骤与配置细节,希望能为遇到相似情况的朋友提供参考。
一、修改 ifcfg-eth0 文件
直接编辑对应的网卡配置文件即可:
# vi /etc/sysconfig/network/ifcfg-eth0
BOOTPROTO=static
IPADDR=192.168.1.100
NETMASK=255.255.255.0
二、配置网关(路由)
在 OpenSuSE 中,网关设置独立存放在单独的文件里:
# vi /etc/sysconfig/network/routes
default 192.168.1.1
三、配置 DNS
# vi /etc/resolv.conf
nameserver 202.101.172.35
nameserver 114.114.114.114
四、重启网卡
所有配置完成后,记得重启网络服务使变更生效:
# /etc/init.d/network restart
掌握上述步骤只是第一步,深入理解背后各配置文件的逻辑同样重要,否则遇到故障时将无从排查。下面详细拆解几个关键文件。
相关知识介绍
1. /etc/sysconfig/network/config
该文件决定了网卡的管理模式,核心参数如下:
NETWORKMANAGER="yes":通过 NetworkManager 的图形化界面进行设置NETWORKMANAGER="no":使用传统的 ifup 方法配置(推荐此项,命令行操作更便于控制)
2. /etc/sysconfig/network/ifcfg-eth0
这是最核心的网卡配置文件,IP 地址、子网掩码等参数都在这里定义:
BOOTPROTO='static'
IPADDR='192.168.1.136'
NAME='RTL-8139/8139C/8139C+'
NETMASK='255.255.255.0'
STARTMODE='auto'
USERCONTROL='no'
3. /etc/sysconfig/network/routes
路由配置文件,在 network 服务启动时自动加载。默认网关、指定网络或主机的路由均可在此定义。配置格式如下:
<网关> <目的网络子网掩码> <本地网络接口>
实例1:添加默认网关
default 192.168.1.1
当然也可以使用命令完成相同操作:
# route add default gw 192.168.1.1
# route del -net 0.0.0.0 # 删除默认网关
实例2:配置到 192.168.1.100 的网络从 192.168.2.100 网口出口
192.168.1.100 192.168.2.100 255.255.255.255
对应的命令行操作:
# route add -net 192.168.1.100 netmask 255.255.255.255 gw 192.168.2.100
# route del -net 192.168.1.100 netmask 255.255.255.255 # 删除该路由
4. /etc/resolv.conf
DNS 域名解析配置文件,包含四个主要参数:
nameserver:指定 DNS 服务器的 IP 地址(必选)domain:定义本地域名(可选)search:定义域名的搜索列表(可选)sortlist:对返回的域名进行排序(可选)
