网络接口配置文件

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

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

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

以太网接口

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

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

DEVICE=eth0
BOOTPROTO=none
ONBOOT=yes
NETWORK=10.0.1.0
NETMASK=255.255.255.0
IPADDR=10.0.1.27
USERCTL=no

在接口配置文件中,选项之间存在着一些关联,如果不像上例中那样使用固定 IP,使用 DHCP 获取 IP 地址的配置文件又会不一样。以下就是将网卡配置成通过 DHCP 获取 IP 地址的配置:

DEVICE=eth0
BOOTPROTO=dhcp
ONBOOT=yes
使用网络管理工具(system-config-network) 对网络接口文件进行更改是比较方便的一种方式,但通过学习手动更改配置文件,能够更好的在各种 Linux 发行版中执行网络配置的工作。
有关网络管理工具的使用方法,可以参考下一章翻译文档 - 《Fedora/Linux 网络配置工具》

下面是以太网接口配置文件中常用的一些选项:

BOOTPROTO=<protocol>

<protocol> 的值能够是以下几种:

  • none - 不指定启用协议
  • bootp - 使用 BOOTP 协议
  • dhcp - 使用 DHCP 协议

BROADCAST=<address>

<address> 表示广播地址。ifcalc 程序会自动计算这个地址,不推荐手动对它进行配置。

DEVICE=<name>

<name> 表示物理设备的名称 ,对于动态寻址的 PPP 设备则是指它的逻辑名称。

DNS{1,2}=<adderss>

<address> 表示名称服务器的 IP 地址。如果 PEERDNS 选项被设置为 yes,这里设置的 IP 地址将会替代 /etc/resolv.conf 中的设置

IPADDR=<address>

<address> 的值就是分配给网卡的 IP 地址

NETMASK=<mask>

<mask> 表示子网掩码

GATEWAY=<address>

<address> 的值为路由器或其它网关设备的 IP 地址

NETWORK=<address>

<address> 表示网络地址,ifcalc 程序会自动计算这个地址,不推荐手动对它进行配置。

ONBOOT=<yes|no>

  • yes - 系统启动时激活设备
  • no - 系统启动时不激活设备

PEERDNS=<yes|no>

  • yes - 使用 DNS 选项的值替代 /etc/resolv.conf 中的配置。如果使用 DHCP,yes 则为这个选项的默认
  • no - 不更改 /etc/resolv.conf 中的配置

USERCTL=<yes|no>

  • yes - 允许非 root 用户控制这个设备
  • no - 不允许非 root 用户控制这个设备

以上是有关以太网配置的常用选项,更多配置选项请参考《Linux 以太网接口配置


付费阅读