在CentOS7上改變網(wǎng)絡(luò)接口名的方法
在CentOS7,我想將分配的網(wǎng)絡(luò)接口名更改為別的名字。有什么合適的方法來(lái)來(lái)重命名CentOS或RHEL7的網(wǎng)絡(luò)接口?接下來(lái)是小編為大家收集的在CentOS7上改變網(wǎng)絡(luò)接口名的方法,希望能幫到大家。
在CentOS7上改變網(wǎng)絡(luò)接口名的方法
傳統(tǒng)上,Linux的網(wǎng)絡(luò)接口被枚舉為eth[0123...],但這些名稱并不一定符合實(shí)際的硬件插槽,PCI位置,USB接口數(shù)量等,這引入了一個(gè)不可預(yù)知的命名問(wèn)題(例如,由于不確定的設(shè)備探測(cè)行為),這可能會(huì)導(dǎo)致不同的網(wǎng)絡(luò)配置錯(cuò)誤(例如,由無(wú)意的接口改名引起的禁止接口或者防火墻旁路)。基于MAC地址的udev規(guī)則在虛擬化的環(huán)境中并不有用,這里的MAC地址如端口數(shù)量一樣無(wú)常。
CentOS/RHEL6引入了一致和可預(yù)測(cè)的網(wǎng)絡(luò)設(shè)備命名網(wǎng)絡(luò)接口的方法。這些特性可以唯一地確定網(wǎng)絡(luò)接口的名稱以使定位和區(qū)分設(shè)備更容易,并且在這樣一種方式下,無(wú)論是否重啟機(jī)器、過(guò)了多少時(shí)間、或者改變硬件,其名字都是持久不變的。然而,這種命名規(guī)則并不是默認(rèn)在CentOS/RHEL6上開啟。
從CentOS/RHEL7起,這種可預(yù)見的命名規(guī)則變成了默認(rèn)。根據(jù)這一規(guī)則,接口名稱被自動(dòng)基于固件,拓?fù)浣Y(jié)構(gòu)和位置信息來(lái)確定?,F(xiàn)在,即使添加或移除網(wǎng)絡(luò)設(shè)備,接口名稱仍然保持固定,而無(wú)需重新枚舉,和壞掉的硬件可以無(wú)縫替換。
* 基于接口類型的兩個(gè)字母前綴:* en -- 以太網(wǎng)* sl -- 串行線路IP (slip)* wl -- wlan* ww -- wwan** 名字類型:* b
新的命名方案的一個(gè)小的缺點(diǎn)是接口名稱相比傳統(tǒng)名稱有點(diǎn)難以閱讀。例如,你可能會(huì)發(fā)現(xiàn)像enp0s3名字。再者,你再也無(wú)法來(lái)控制接口名了。
如果由于某種原因,你喜歡舊的方式,并希望能夠選擇任意名稱分配給CentOS/ RHEL7的設(shè)備,你需要重寫默認(rèn)的可預(yù)測(cè)的命名規(guī)則,定義基于MAC地址udev規(guī)則。
下面是如何在CentOS或RHEL7命名網(wǎng)絡(luò)接口。
首先,讓我們來(lái)禁用該可預(yù)測(cè)命名規(guī)則。對(duì)于這一點(diǎn),你可以在啟動(dòng)時(shí)傳遞“net.ifnames=0”的內(nèi)核參數(shù)。這是通過(guò)編輯/etc/default/grub并加入“net.ifnames=0”到GRUBCMDLINELINUX變量來(lái)實(shí)現(xiàn)的。
然后運(yùn)行這條命令來(lái)重新生成GRUB配置并更新內(nèi)核參數(shù)。
$ sudo grub2-mkconfig -o /boot/grub2/grub.cfg
接下來(lái),編輯(或創(chuàng)建)一個(gè)udev的網(wǎng)絡(luò)命名規(guī)則文件(/etc/udev/rules.d/70-persistent-net.rules),并添加下面一行。更換成你自己的MAC地址(08:00:27:a9:7a:e1)和接口(sushi)。
$ sudo vi /etc/udev/rules.d/70-persistent-net.rules
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="08:00:27:a9:7a:e1", ATTR{type}=="1", KERNEL=="eth*", NAME="sushi"
最后,重啟電腦并驗(yàn)證新的接口名。
看了“在CentOS7上改變網(wǎng)絡(luò)接口名的方法”還想看: