linux 下 ifcfg-eth0 配置 以及ifconfig、ifup、ifdown區別



這3個命令的用途都是啟動網絡接口,不過,ifup與ifdown僅就 /etc/sysconfig/network- scripts內的
ifcfg-ethx(x為數字)進行啟動或關閉的操作,並不能直接修改網絡參數,除非手動調整ifcfg-ethx文件
才行。至於 ifconfig則可以直接手動給予某個接口IP或調整其網絡參數。下面我們就分別來談一談。
1. ifconfig
ifconfig主要是可以手動啟動、觀察與修改網絡接口的相關參數,可以修改的參數很多,包括IP參數以及
MTU等都可以修改,它的語法如下:
[root@linux ~]# ifconfig {interface} {up|down} <==
觀察與啟動接口
[root@linux ~]# ifconfig interface {options} <== 設
置與修改接口
參數:
Interface,網卡接口代號,包括 eth0、eth1、ppp0 等
Options,可以接的參數,包括如下:
Up或down,啟動 (up) 或關閉 (down) 該網絡接口(不涉及
任何參數)
mtu,可以設置不同的 MTU 數值,例如MTU 1500 (單位為
byte)
netmask,就是子屏蔽網絡
broadcast,就是廣播地址
范例:
范例一:觀察所有的網絡接口(直接輸入 ifconfig)
[root@linux ~]# ifconfig
eth0 Link encap:Ethernet HWaddr 00:0F:EA:A3:06:A2
inet addr:192.168.10.100 Bcast:192.168.10.255
Mask:255.255.255.0
inet6 addr: fe80::20f:eaff:fe73:682/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500
Metric:1
RX packets:3439 errors:0 dropped:0 overruns:0
frame:0
TX packets:2735 errors:0 dropped:0 overruns:0
carrier:0
collisions:0 txqueuelen:1000
RX bytes:646935 (631.7 KiB) TX bytes:562313
(549.1 KiB)
Interrupt:209 Memory:fb000000-0

一般來說,直接輸入ifconfig就會列出目前已經被啟動的卡,不論這個卡是否有設置IP,都會被顯示出
來。而如果是輸入 ifconfig eth0,則會顯示出這個接口的相關數據,而不管該接口是否啟動。所以,如果
你想要知道某個網卡的Hardware Address,直接輸入“ifconfig"網絡接口代號"”即可。至於上述代碼中
出現的各項數據是這樣的(數據排列由上而下、由左而右)。
· eth0:網卡的代號,也有lo這個loopback。
· HWaddr:網卡的硬件地址,習慣稱為MAC。
· inet addr:IPv4的IP地址,后續的Bcase、Mask分別代表的是Broadcast與Netmask。
· inet6 addr:是IPv6的版本的IP,我們沒有使用,所以略過。
· RX:那一行代表的是網絡由啟動到目前為止的數據包接收情況,packets代表數據包數、errors代表數
據包發生錯誤的數量、dropped代表數據包由於有問題而遭丟棄的數量等。
· TX:與RX相反,為網絡由啟動到目前為止的傳送情況。
· collisions:代表數據包碰撞的情況,如果發生太多次,表示你的網絡狀況不太好。
· txqueuelen:代表用來傳輸數據的緩沖區的儲存長度。
· RX Bytes、TX Bytes:總傳送、接收的字節總量。

· Interrupt、Memory:網卡硬件的數據,IRQ岔斷與內存地址。
通過觀察上述的資料,大致上可以了解到你的網絡情況,尤其是RX、TX內的error數量,以及是否發生嚴
重的collision情況,都是需要注意的。

范例二:暫時修改網絡接口
[root@linux ~]# ifconfig eth0 192.168.100.100
# 如果不加任何其他參數,則系統會依照該 IP 所在的 class 范
圍,
# 自動地計算出 netmask 以及 network, broadcast 等 IP
參數
[root@linux ~]# ifconfig eth0 192.168.100.100
netmask 255.255.255.128 \
> mtu 8000
# 設置網絡接口,同時設置 MTU 的數值
[root@linux ~]# ifconfig eth0 MTU 9000
# 僅修改該接口的 MTU 數值,其他的保持不動
[root@linux ~]# ifconfig eth0:0 192.168.50.50
# 仔細看那個接口, eth0:0 。那就是在該網絡接口上,再仿真
一個網絡接口,
# 亦即是在一個網卡上面設置多個 IP 的意思啦
[root@linux ~]# ifconfig
eth0 Link encap:Ethernet HWaddr
00:0F:EA:A3:06:A2
inet addr:192.168.10.100 Bcast:192.168.10.255
Mask:255.255.255.0
UP BROADCAST RUNNING MULTICAST
MTU:1500 Metric:1
RX packets:3669 errors:0 dropped:0 overruns:0
frame:0
TX packets:2892 errors:0 dropped:0 overruns:0
carrier:0
collisions:0 txqueuelen:1000
RX bytes:667547 (651.9 KiB) TX bytes:584799
(571.0 KiB)

Interrupt:209 Memory:fb000000-0
eth0:0 Link encap:Ethernet HWaddr
00:0F:EA:A3:06:A2
inet addr:192.168.200.2 Bcast:192.168.200.255
Mask:255.255.255.0
UP BROADCAST RUNNING MULTICAST
MTU:1500 Metric:1
Interrupt:209 Memory:fb000000-0
# 仔細看,是否與硬件有關的信息都相同。沒錯。因為是同一
個網卡。
[root@linux ~]# ifconfig eth0:0 down
# 關掉 eth0:0 這個接口。如果想要啟動 eth1 ,並且不設置任
何網絡參數
# ifconfig eth1 up 就可以實現

[root@linux ~]# /etc/init.d/network restart
# 剛剛設置的數據全部失效,會以 ifcfg-ethx 的設置為主

使用ifconfig可以暫時用手動來設置或修改某個適配卡的相關功能,並且也可以通過eth0:0這種虛擬的網
絡接口來設置一張網卡上面的多個 IP。手動的方式是比較簡單。而且設置錯誤也沒有關系,因為我們可以
利用 /etc/init.d/network restart來重新啟動整個網絡接口,那么之前手動的設置數據會全部失效。另
外,要啟動某個網絡接口,但又不讓它具有IP參數時,直接給它 ifconfig eth0 up即可。這個操作經常在
無線網卡當中進行,因為我們需要啟動無線網卡讓它去檢測AP存在與否。
2. ifup、ifdown
實時地手動修改一些網絡接口參數,可以利用ifconfig來實現,如果是要直接以配置文件,亦即是在 /etc/
sysconfig/network-scripts里面的ifcfg-ethx等文件的設置參數來啟動的話,那就得要通過ifdown或
ifup來實現了。
[root@linux ~]# ifup {interface}
[root@linux ~]# ifdown {interface}
[root@linux ~]# ifup eth0
ifup與ifdown真是太簡單了。這兩個程序其實是script而已,它會直接到 /etc/ sysconfig/networkscripts
目錄下搜索對應的配置文件,例如ifup eth0,它會找出ifcfg-eth0這個文件的內容,然后加以設
置。關於ifcfg-eth0的設置請參考前一章連上Internet的說明。
不過,由於這兩個程序主要是搜索設置文件(ifcfg-ethx)來進行啟動與關閉的,所以在使用前請確定
ifcfg-ethx是否真的存在於正確 的目錄內,否則會啟動失敗。另外,如果以ifconfig eth0來設置或者是修
改了網絡接口后,就無法再以ifdown eth0的方式來關閉了。因為ifdown會分析比較目前的網絡參數與
ifcfg-eth0是否相符,不符的話,就會放棄這次操作。因此,使用 ifconfig修改完畢后,應該要以ifconfig
eth0 down才能夠關閉該接口。

linux 下 ifcfg-eth0 配置

參考:http://www.cnblogs.com/iixiaowei/articles/2300084.html

網絡接口配置文件
[root@localhost ~]# cat /etc/sysconfig/network-scripts/ifcfg-eth0
# Intel Corporation 82545EM Gigabit Ethernet Controller (Copper)
TYPE=Ethernet       #網卡類型
DEVICE=eth0         #網卡接口名稱
ONBOOT=yes          #系統啟動時是否自動加載
BOOTPROTO=static    #啟用地址協議 --static:靜態協議 --bootp協議 --dhcp協議
IPADDR=192.168.1.11      #網卡IP地址
NETMASK=255.255.255.0    #網卡網絡地址
GATEWAY=192.168.1.1      #網卡網關地址
DNS1=10.203.104.41       #網卡DNS地址
HWADDR=00:0C:29:13:5D:74 #網卡設備MAC地址
BROADCAST=192.168.1.255  #網卡廣播地址 
重新導入ifcfg-eth0網絡配置文件
[root@localhost ~]# /etc/init.d/network reload
Shutting down interface eth0:                             [ OK ]
Shutting down loopback interface:                         [ OK ]
Bringing up loopback interface:                           [ OK ]
Bringing up interface eth0:                               [ OK ]

網卡接口關閉與激活
[root@localhost ~]# ifdown eth0   #關閉網絡
[root@localhost ~]# ifup eth0     #啟動網絡

網絡服務啟動與關閉
方法一:
[root@localhost ~]# service network stop    #關閉網絡服務
[root@localhost ~]# service network start   #啟動網絡服務
[root@localhost ~]# service network restart #重啟網絡服務
方法二:
[root@localhost ~]# /etc/init.d/network stop
[root@localhost ~]# /etc/init.d/network start
[root@localhost ~]# /etc/init.d/network restart 
網卡狀態查詢
[root@localhost ~]# service network status
Configured devices:
lo eth0
Currently active devices:
lo eth0

臨時配置網卡信息,無需重啟。
[root@localhost ~]# ifconfig eth0 10.1.1.10 netmask 255.0.0.0
查看網卡接口信息,默認列出所有接口
[root@localhost ~]# ifconfig
eth0      Link encap:Ethernet  HWaddr 00:0C:29:13:5D:74
          inet addr:192.168.1.11  Bcast:192.168.1.255  Mask:255.255.255.0
          inet6 addr: fe80::20c:29ff:fe13:5d74/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:413 errors:0 dropped:0 overruns:0 frame:0
          TX packets:572 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:47701 (46.5 KiB)  TX bytes:64842 (63.3 KiB)
          Base address:0x2000 Memory:d8920000-d8940000 

lo        Link encap:Local Loopback
          inet addr:127.0.0.1  Mask:255.0.0.0
          inet6 addr: ::1/128 Scope:Host
          UP LOOPBACK RUNNING  MTU:16436  Metric:1
          RX packets:407 errors:0 dropped:0 overruns:0 frame:0
          TX packets:407 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0
          RX bytes:70759 (69.1 KiB)  TX bytes:70759 (69.1 KiB)
查看當前路由及網關信息
[root@localhost ~]# netstat -r
Kernel IP routing table
Destination     Gateway         Genmask         Flags   MSS Window  irtt Iface
192.168.1.0     *               255.255.255.0   U         0 0          0 eth0
169.254.0.0     *               255.255.0.0     U         0 0          0 eth0
default         192.168.1.1     0.0.0.0         UG        0 0          0 eth0

DNS:
主機名:CentOS
主DNS:202.106.46.151
第二DNS:202.106.0.20
第三DNS:8.8.8.8

網絡配置:
eth0
靜態ip:192.168.1.106
子網掩碼        255.255.255.0
默認網關 IP     192.168.1.1


DEVICE=eth0
IPADDR=192.168.1.106
NETMASK=255.255.255.0
BROADCAST=192.168.1.255
ONBOOT=yes
BOOTPROTO=none
GATEWAY=192.168.1.1
TYPE=Ethernet
"/etc/sysconfig/network-scripts/ifcfg-eth0" 11L, 187C


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM