隨著網路科技的快速發展,網路在我們日常生活中扮演的角色越來越重要。而在建構網路環境時,網路介面卡(NIC)是連接電腦與外界網路的重要連結。本文將深入介紹Linux系統中修改網卡配置的方法,透過自主設定網路參數,讓使用者完全掌控網路環境。
一、環境
#VirtualBox CentOS6.5
**二、問題
**
有時在複製伺服器之後配置網路時,或是在維護別人建好的伺服器時,會遇到這樣一種情況。如下圖所示:
即:在介面設定檔ifcfg-eth0中,設定的是網卡eth1的資訊。
這種不一致有可能對強迫症造成一定的困擾,有時候我們更想要的是:在ifcfg-eth0文件中,配置的應該是網卡eth0的信息,而網卡eth1,則應該是在ifcfg -eth1中進行配置。
三、解決方法
#要解決上面的問題,大致上有兩種方法:
1) 將介面設定檔的檔名由ifcfg-eth0修改為ifcfg-eth1;
2) 將網卡eth1的名稱修改為eth0.
方法一:
此方法實測是可行的,如下圖所示,修改完後直接重啟網路即可。
方法二:
#這種方法的直覺感覺是直接在ifcfg-eth0設定檔中將網卡名稱由eth1修改為eth0,但是這樣改的話,重啟網路會出現Device eth0 does not seem to be present即:裝置eth0 不存在的錯誤,如下圖所示,該問題的解決參考《L08-Linux解決Device eth0 does not seem to be present,delaying initialization問題》 。
所以還不能簡單粗暴的這麼改,因為,正如下圖由ifconfig –a指令查詢到的,伺服器所辨識的網路卡還是eth1,而不是eth0。
註:記住這裡的mac位址08:00:27:74:39:02,在後面的實作步驟中可作為修改的依據,因為一台伺服器的IP可以隨意改變,但是mac位址是唯一的。
為了解決這個問題,我們先修改/etc/udev/rules.d/70-persistent-net.rules檔案中的配置,讓伺服器的網路卡名稱由eth1變成eth0,然後,我們再將ifcfg-eth0中的網路卡名稱也跟著改過來,最後重新啟動網路。
1) 修改設定檔/etc/udev/rules.d/70-persistent-net.rules。
原/etc/udev/rules.d/70-persistent-net.rules檔案內容如下:
# This file was automatically generated by the /lib/udev/write_net_rules # program, run by the persistent-net-generator.rules rules file. # # You can modify it, as long as you keep each rule on a single # line, and change only the value of the NAME= key. # PCI device 0x8086:0x100e (e1000) SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="08:00:27:9b:bb:3c", ATTR{type}=="1 ", KERNEL=="eth*", NAME="eth0" # PCI device 0x8086:0x100e (e1000) SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="08:00:27:74:39:02", ATTR{type}=="1 ", KERNEL=="eth*", NAME="eth1"
修改後的內容如下:
# This file was automatically generated by the /lib/udev/write_net_rules # program, run by the persistent-net-generator.rules rules file. # # You can modify it, as long as you keep each rule on a single # line, and change only the value of the NAME= key. # PCI device 0x8086:0x100e (e1000) SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="08:00:27:74:39:02", ATTR{type}=="1 ", KERNEL=="eth*", NAME="eth0"
如上圖所示
a)將原始檔案中的eth0的設定刪掉了(因為它沒用了,這項配置是我本次測試時克隆本伺服器時來源機器的配置,配置中對應的mac位址也是來源伺服器的mac位址,對我們目前這台伺服器而言沒用);
b)將eth1網卡名稱修改為了eth0(可注意到它的mac位址為08:00:27:74:39:02,恰恰就是我們要修改的條目。)
2) 修改介面設定檔ifcfg-eth0,將網路卡由eth1修改為eth0
3) 重新啟動機器,讓伺服器根據/etc/udev/rules.d/70-persistent-net.rules檔案重新設定網路卡資訊
可以發現,重啟機器之後一進入伺服器,網路就已經配置成一致的了,如下圖:
至此,修改完畢。
在今天的資訊時代,網路已經成為了我們工作和生活中不可或缺的一部分,而網路卡正是實現網路通訊的關鍵設備。本文詳細闡述了在Linux系統中修改網卡配置的方法,並提供了一些實際操作案例。透過這些知識的學習,我們可以更靈活地管理和配置網路卡,在網路環境中完全掌控自己的設備。
以上是自主設定Linux網卡,完全掌控網路環境的詳細內容。更多資訊請關注PHP中文網其他相關文章!