如何在 Centos 中配置网络配置文件?

如何在 Centos 中配置网络配置文件?

我正在尝试在 Centos 中设置两个网络配置文件。一种用于家里,一种用于工作。家庭配置文件具有固定的 IP 地址、固定的网关和 DNS 服务器地址。工作配置文件取决于 DHCP。

我在 /etc/sysconfig/networking/profiles 中创建了一个“home”和一个“work”目录。每个都有以下包含正确配置的文件:

> -rw-r--r-- 2 root root  422 Apr 17 20:17 hosts
> -rw-r--r-- 5 root root  223 Apr 17 20:18 ifcfg-eth0
> -rw-r--r-- 1 root root  101 Apr 17 20:17 network
> -rw-r--r-- 2 root root   73 Apr 17 20:18 resolv.conf

已经有一个“默认”配置文件,其中包含相同的文件。

然后我发出了这些命令:

system-config-network-cmd --profile work --activate
service network restart

我期望这些文件从目录复制profiles/work/etc/sysconfig//etc/sysconfig/networking-scripts。大多数文件都会被复制,除了ifcfg-eth0.

奇怪的是,当我发出 .txt 文件时,文件似乎被当前设置覆盖system-config-network-cmd。其他文件也被触及,但内容保持不变。

系统是 Centos 5.7,运行在 Windows 7 机器内的虚拟 PC 上。这是 ifconfig 的输出:

# ifconfig
eth0      Link encap:Ethernet  HWaddr 00:03:FF:6F:2E:AB
          inet addr:192.168.1.200  Bcast:192.168.1.255  Mask:255.255.255.0
          inet6 addr: fe80::203:ffff:fe6f:2eab/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:4199761 errors:7 dropped:0 overruns:0 frame:0
          TX packets:1733750 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:2316624688 (2.1 GiB)  TX bytes:415533386 (396.2 MiB)
          Interrupt:9

有人能告诉我这里缺少什么吗?

答案1

正如 RedHat 的文档在网络配置文件上,您不应使用eth0配置文件接口的基本接口名称 ( ),而应使用名为 as 的名称,依此eth0_work类推。顺便说一句,您不需要重新启动网络配置,因为配置文件切换会自行处理。一个例子:

# system-config-network-cmd --profile foobar --activate
Network device deactivating...
Deactivating network device eth0, please wait...
Network device activating...
Activating network device eth0_foobar, please wait...

答案2

为什么在这里使用配置文件?

假设 eth0 是家庭线路,静态 IP,编辑:

/etc/sysconfig/network-scripts/ifcfg-eth0

DEVICE=eth0
IPADDR=192.168.57.200
NETMASK=255.255.255.0
STATIC=yes
ONBOOT=yes

对于其他工作线,使用 DHCP,编辑:

/etc/sysconfig/network-scripts/ifcfg-eth1

DEVICE=eth0
ONBOOT=yes
BOOTPROTO=dhcp

并确保network服务在启动时启动。

例如,如果您在级别 2 、 3 运行服务,您可以执行以下操作:

chkconfig --level 23 network on

重新启动以查看更改。

相关内容