如何在 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

重新啟動以查看變更。

相關內容