Linux教程

别名接口和克隆接口配置文件

别名(Alias) 文件和 克隆(clone) 文件是 Linux 中用得比较少的两类网络接口配置文件。其中别名文件可以将多个 IP 地址绑定到一个网络接口上,克隆文件则用于为接口定义附加选项。

别名(Alias) 文件和 克隆(clone) 文件是 Linux 中用得比较少的两类网络接口配置文件。其中别名文件可以将多个 IP 地址绑定到一个网络接口上,克隆文件则用于为接口定义附加选项。

 

别名文件

别名文件的命名结构为 ifcfg-<if-name>:<alias-value>,如 ifcfg-eth0:0。假设 eth0 接口已经配置成 DHCP 自动获取 IP 地址,你可以在 ifcfg-eth0:0 配置文件中定义 DEVICE=eth0:0,并指定 IP 地址为 10.0.0.2。如此一来 eth0 接口使用 DHCP 分配的动态 IP,同时也能够接收到传给 10.0.0.2 的数据请求。

通道绑定接口配置

Fedora/Linux 操作系统允许管理员通过使用“绑定内核模块”(bonding kernel model),将多个网络接口绑定成一个”通道绑定接口“(channel bonding interface),或称“绑定接口”。

Fedora/Linux 操作系统允许管理员通过使用“绑定内核模块”(bonding kernel model),将多个网络接口绑定成一个”通道绑定接口“(channel bonding interface),或称“绑定接口”。

绑定接口能够让两个或多个网络接口变成一个,从而增加网络带宽,提供网络冗余。

通过在 /etc/sysconfig/network-scripts/ 目录下创建 ifcfg-bond<N> 文档,就能够创建绑定接口。文件名称中的 <N> 为接口的编号,如第一个通道绑定接口的名称一般为 ifcfg-bond0。

ifcfg-bond<N> 文件的内容与以太网接口的配置文件(如 ifcfg-eth0)基本相同,只是 DEVICE 选项的值,应该为 bond<N>。

IPSec 接口配置

在上面的配置文件中,X.X.X.X 要替换为支持 IPsec 的目标路由器的公网 IP 地址。除了以上的选项和指令外,IPSec 接口配置文件中还可以使用以下选择和指令

使用 Fedora/Linux 操作系统,能够轻易的实现 IPSec 接口的配置,以下是一个网络间 IPsec 连接的接口配置文件的示例。它的配置文件名中具备唯一的连接标识符 ipsec<N>,文件的绝对路径类似于 /etc/sysconfig/network-scripts/ifcfg-ipsec1

TYPE=IPsec
ONBOOT=yes
IKE_METHOD=PSK
SRCNET=192.168.1.0/24
DSTNET=192.168.2.0/24
DST=X.X.X.X

在上面的配置文件中,X.X.X.X 要替换为支持 IPsec 的目标路由器的公网 IP 地址。除了以上的选项和指令外,IPSec 接口配置文件中还可以使用以下选择和指令:

DST=<address>

以太网接口配置

本文是对以太网接口配置文件中选项的补充,有关 Linux 网络的基本配置,还请参考《Linux 网络接口配置文件》。

本文是对以太网接口配置文件中选项的补充,有关 Linux 网络的基本配置,还请参考《Linux 网络接口配置文件》。

 

BONIDNG_OPTS=<parameters>

这个参数用于 /etc/sysconfig/network-scripts/ifcfg-bond<N> 配置文件中,用于绑定设备 (Bonding Device) 设置参数。这些参数与 /sys/class/net/<bonding-device>/bonding 中使用的参数是相同的。

网络接口配置文件

在 Linux 中,网络接口配置文件用于控制系统中的软件网络接口,并通过接口实现对网络设备的控制。当系统启动时,系统通过这些接口配置文件决定启动哪些接口,以及如此对这些接口进行配置。

在 Linux 中,网络接口配置文件用于控制系统中的软件网络接口,并通过这些接口实现对网络设备的控制。当系统启动时,系统通过这些接口配置文件决定启动哪些接口,以及如何对这些接口进行配置。接口配置文件的名称通常类似于 ifcfg-<name>,其中 <name> 与配置文件所控制的设备的名称相关。

在所有的网络接口中,我们日常中最常用到的接口类型就是以太网接口。

以太网接口

在所有的网络配置文件中,最常用的就是 ifcfg-eth0,因为它是系统中第一块网卡的配置文件。如果系统中有多块网卡,ifcfg-eth 后面的数字就会依次递增。正因为每个设备都有对应的一个配置文件,因此管理员也能够单独地控制每一个设备。

以下是一个 ifcfg-eth0 配置文件的示例,在配置中已经为网卡设置好了 IP 地址。

Linux 网络接口

在 Fedora 中,所有的网络通讯都发生在软件接口与物理网络设备之间。与网络接口配置相关的文件,以及控制网络接口状态的脚本文件,全都位于 /etc/sysconfig/netwrok-scripts/ 目录下。

在 Linux 中,所有的网络通讯都发生在软件接口与物理网络设备之间。与网络接口配置相关的文件,以及控制网络接口状态的脚本文件,全都位于 /etc/sysconfig/netwrok-scripts/ 目录下。虽然在不同的系统之间,这些文件的类型和数量并不一定相同,但大致来讲,都包含以下几类与网络相关的配置文件:

  • 网络接口配置文件
  • 网络接口控制脚本
  • 与网络相关的函数库文件(function files)

各种的网络设备都需要用到这些文件保证设备的正常动作

本章将深入探讨这些文件的用途,以及使用它们的方式。

 

Linux 网络接口

网络配置文件

在开始对 Linux 进行网络配置之前,我们先要认识与网络配置相关的一些主要配置文件。了解这些配置文件如何控制和影响网络,对你自定义 Fedora 系统的网络非常有帮助。

在开始对 Linux 进行网络配置之前,我们先要认识与网络配置相关的一些主要配置文件。了解这些配置文件如何控制和影响网络,对你自定义 Fedora/Linux 系统的网络非常有帮助。

以下是 Linux 中主要的几个网络配置文件,目前你只需要大致了解一下,在之后的教程中会详细讲解各种网络配置:

/etc/hosts

这个文件用于设置主机名与 IP 映射关系,为那些无法通过其它方式 (如通过 DNS 服务器) 解析的主机名进行解析,它还能够在没有 DNS 的小型网络中充当主机名解析的角色。不论计算机在什么类型的网络上,hosts 文件中都有关于环回链路(127.0.0.1)的主机记录 (localhost.localdomain)。

更多有关 hosts 文件的信息,请参考 hosts 文件的 man 文档。

/etc/resolv.conf

RPM 命令常见用法实例

RPM 不仅是管理系统软件包的强力工具,还是论断和修复难题得力助手。通过查看和学习各个选项的实际示例,能让你更好的理解这一点。

RPM 不仅是管理系统软件包的强力工具,还是论断和修复难题得力助手。通过查看和学习各个选项的实际示例,能让你更好的理解这一点。

也许你不小心删除了某个文件,但是又不确定删除的是什么。通过验证整个系统的软件包,RPM 能够帮你找出哪些文件丢失,或者出现了其它问题。

~]# rpm -Va

如果文件丢失,或者不通过验证,你可以考虑重新安装软件包来解决这个问题。

有时你看到某个不认识的文件,可以使用以下命令找出它属于哪一个软件包

~]# rpm -qf /usr/bin/ghostscript
ghostscript-8.70-1.fc12.x86_64

如果你想查看某个程序的更多信息,可以使用以下命令列出与该程序相关的文档资料

检查 RPM 软件包及签名

如果你希望检查一个软件包是否损坏或者被窜改,你可以通过 RPM 命令检查软件包的 MD5 校验值。并且在成功导入 GnuPG 密钥之后,还能使用 RPM 命令对 RPM 软件包进行签名验证

检查软件包完整性

如果希望检查一个软件包是否损坏或者被窜改,可以通过以下命令检查软件包的 MD5 校验值 (注意将 <rpm_file> 更改为你希望检查的软件包的路径或名称)

~]# rpm -K --nosignature <rpm_file>
<rpm_file>: rsa sha1 (md5) pgp md5 OK

类似于上下输出结果则表示得到的是正确的(未损坏的、未被篡改的)软件包

如果希望看到详细的输出信息,可以使用 -Kvv 选项代替 -K 选项。

使用 RPM 命令验证软件包

验证软件包,通常是指比较安装的文件的信息与原软件包中的信息进行比对。其中包含每个文件的大小、MD5 校验值、权限、类型、用户及用户组的验证。

验证软件包,通常是指比较安装的文件的信息与原软件包中的信息进行比对。其中包含每个文件的大小、MD5 校验值、权限、类型、用户及用户组的验证。

使用 -V 选项对软件包进行验证,例如使用 rpm -V tree 命令,就会将 tree 软件包中的所有文件与它们最开始的安装时的情况进行对比验证。

~]# rpm -V tree

验证指定的文件可以使用以下命令

~]# rpm -Vf /usr/bin/tree
说明:执行指定文件的验证时,需要使用文件的绝对路径。

结合 -a 参数,可以对系统中所有安装的软件包进行验证(所需要时间较长)

~]# rpm -Va

验证已安装的 RPM 软件包

页面