1. 程式人生 > >Linux網路介面配置檔案ifcfg-eth0解析

Linux網路介面配置檔案ifcfg-eth0解析

        在Windows上配置網路比較容易,有圖形化介面可操作。在Linux中往往是通過命令修改檔案的方式配置網路,因此不僅需要知道配置哪個檔案,還要知道檔案中每個配置引數的功能。在Redhat/Fedora等Linux中,網路配置檔案一般是/etc/sysconfig/network-scripts/ifcfg-eth0;而在SLES 10中卻是/etc/sysconfig/network/ifcfg-eth-id-xx:xx:xx:xx:xx:xx(後面是該網路介面的MAC地址);在SLES 11中是/etc/sysconfig/network/ifcfg-eth0。

        在一個計算機系統中,可以有多個網路介面,分別對應多個網路介面配置檔案,在/etc/sysconfig/network-scripts/目錄下,依次編號的檔案是ifcfg-eth0,ifcfg-eth1,...,ifcfg-eth<X>。常用的是ifcfg-eth0,表示第一個網路介面配置檔案。

        ifcfg-eth0示例:

TYPE=Ethernet
DEVICE=eth0
BOOTPROTO=none
ONBOOT=yes
IPADDR=10.0.1.27
NETMASK=255.255.255.0
GATEWAY=10.0.1.1
BROADCAST=10.10.1.255
HWADDR=00:0C:29:13:5D:74
PEERDNS=yes
DNS1=10.0.1.41
USERCTL=no
NM_CONTROLLED=no
IPV6INIT=yes
IPV6ADDR=FD55:faaf:e1ab:1B0D:10:14:24:106/64

1. 配置引數說明

注:這些引數值不區分大小寫,不區分單引號和雙引號,甚至可以不用引號。


TYPE:配置檔案介面型別。在/etc/sysconfig/network-scripts/目錄有多種網路配置檔案,有Ethernet 、IPsec等型別,網路介面型別為Ethernet。

DEVICE:網路介面名稱

BOOTPROTO:系統啟動地址協議

none:不使用啟動地址協議

bootp:BOOTP協議

dhcp:DHCP動態地址協議

static:靜態地址協議

ONBOOT:系統啟動時是否啟用

yes:系統啟動時啟用該網路介面

no:系統啟動時不啟用該網路介面

IPADDR:IP地址

NETMASK:子網掩碼

GATEWAY:閘道器地址

BROADCAST:廣播地址

HWADDR/MACADDR:MAC地址。只需設定其中一個,同時設定時不能相互衝突。


PEERDNS:是否指定DNS。如果使用DHCP協議,預設為yes。

yes:如果DNS設定,修改/etc/resolv.conf中的DNS

no:不修改/etc/resolv.conf中的DNS

DNS{1, 2}:DNS地址。當PEERDNS為yes時會被寫入/etc/resolv.conf中。

NM_CONTROLLED:是否由Network Manager控制該網路介面。修改儲存後立即生效,無需重啟。被其坑過幾次,建議一般設為no。

yes:由Network Manager控制

no:不由Network Manager控制

USERCTL:使用者許可權控制

yes:非root使用者允許控制該網路介面

no:非root使用者不執行控制該網路介面

IPV6INIT:是否執行IPv6

yes:支援IPv6

no:不支援IPv6

IPV6ADDR:IPv6地址/字首長度

2. 配置生效

修改網路配置,最簡單地是使用ifconfig命令,無需重啟,立即生效。關於ifconfig的知識在博文《Linux命令 — 設定或檢視網路配置命令ifconfig》中有詳細介紹。ifconfig配置的網路只是當前臨時有效,當計算機重啟之後就失效了。為了使網路配置永久有效,就需要在/etc/sysconfig/network-scripts/下修改網路介面配置檔案。但是,這些檔案修改後,並不能立即生效。有兩種方式使修改檔案的網路配置生效:

1) 執行service network restart命令,重啟網路服務(推薦

2) 重啟計算機

Reference