eth0會變
A. 怎麼解決虛擬機遷移後eth0變成了eth1
1、用ifconfig
eth0
up命令開啟下網卡。
#ifconfig
eth0
up
2、更改eth0配置:
#vi/etc/sysconfig/network-scripts/ifcfg-eth0下顯示:
DEVICE=eth0
ONBOOT=no
//開機啟動網卡
BOOTPROTO=static
IPADDR=192.168.1.8
//自己設置有效ip地址
NETMASK=255.255.255.0
//子網掩碼
GATEWAY=192.168.1.1
//有效網關地址
HWADDR=00:0C:29:96:38:F8
注意其中的ONBOOT=no將其改為yes,網卡激活。
3、重啟服務。
#service
network
restart
重啟後配置生效。
B. Android eth0怎麼轉換成wlan
eth0,eth1,eth2……代表網卡一,網卡二,網卡三……
lo代表127.0.0.1,即localhost
wlan0代表無線網卡
在執行ifconfig 命令後,系統將在內核表中設置必要的參數,這樣Linux 就知道如何與網路上的網卡通信。ifconfig 命令有以下兩種格式:
※ifconfig [interface]
※ifconfig interface [aftype] option | address …
ifconfig 的第一種格式(或使用不帶任何參數的ifconfig 命令)可以用來查看當前系統的網路配置情況。
在剛剛安裝完系統之後,實際上是在沒有網卡或者網路連接的情況下使用Linux,但通過ifconfig 可以使用回繞方式工作,使計算機認為自己工作在網路上。
現在我們運行一下ifconfig 命令,不帶參數的ifconfig 命令可以顯示當前啟動的網路介面,其輸出結果為:
[root@machine1 /sbin]#ifconfig
eth0 Link encap:Ethernet HWaddr 52:54:AB:DD:6F:61
inet addr:210.34.6.89 Bcast:210.34.6.127 Mask:255.255.255.128
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:46299 errors:0 dropped:0 overruns:0 frame:189
TX packets:3057 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:100
Interrupt:5 Base address:0xece0
lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
UP LOOPBACK RUNNING MTU:3924 Metric:1
RX packets:44 errors:0 dropped:0 overruns:0 frame:0
TX packets:44 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
其中以eth0 為首的部分是本機的乙太網卡配置參數,的設這里顯示了網卡的設備名/dev/eth0 和硬體的MAC 地址52:54:AB:DD:6F:61, MAC 地址是生產廠家定的,每個網卡擁有的唯一地址。
不過我們可以手工改動網卡的MAC 地址,只要我們在/etc/rc.d/init.d/中的network 中加入:
ifconfig eth0 hw ether xx:xx:xx:xx:xx:xx
Jiania 解說 注:
eth0,eth1,eth2,代表網卡一,網卡二,網卡三
hw 代表hardware 硬體意思
ether 代表ethernet 乙太網的意思
然後重啟,此時再用ifconfig 命令查看一下,我們就會發現網卡的MAC 地址已經變成xx:xx:xx:xx:xx:xx了。
ifconfig配置網卡
配置網卡的IP地址
ifconfig eth0 192.168.0.1 netmask 255.255.255.0
在eth0上配置上192.168.0.1 的IP地址及24位掩碼。 若想再在eth0上在配置一個192.168.1.1/24 的IP地址怎麼辦?用下面的命令
ifconfig eth0:0 192.168.1.1 netmask 255.255.255.0
這時再用ifconifg命令查看,就可以看到兩個網卡的信息了,分別為:eth0和eth0:0.若還想再增加IP,那網卡的命名就接著是:eth0:1、eth0:2……想要幾個就填幾個。ok!
配置網卡的硬體地址
ifconfig eth0 hw ether xx:xx:xx:xx:xx:xx就將網卡的硬體地址更改了,此時你就可以騙過區域網內的IP地址邦定了。
將網卡禁用
ifconfig eth0 down
將網卡啟用
ifconfig eth0 up
ifconfig 命令的功能很強大,還可以設置網卡的MTU,混雜模式等。
C. 為啥VM克隆後重啟發現eth0變成了eth1
昨天寫了個日誌關於udev, sysfs,今天繼續。 要說的是由於udev的存在引起的一個問題:克隆一台vm(ubuntu),poweron之後這台vm的網卡是eth1,而被克隆的vm的網卡是eth0,讓人很費解。 root cause: 出現這種情況一般都是udev設置的rule引起的。ubuntu(其他系統沒試過)一般有類似下面的一條rule去定義kernel發現的網卡(sysfs)與用戶希望這塊網卡使用的名字的一個mapping: ~$ cat /etc/udev/rules.d/70-persistent-net.rules # PCI device 0x10ec:0x8168 (r8169) SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}==" 00:23:5a:bd:14:f8", ATTR{dev_id}=="0x0", ATTR{type}=="1", KERNEL=="eth*", NAME="eth0" 輸出中紅色的是網卡的mac地址。在vm克隆並poweron之後,這個vm會產生一個新的mac,但是這個udev rule文件由於是克隆的並不會被修改。因此,系統在啟動過程中,udev在查看rule的時候發現eth0已經被定義了,而且和目前檢測到的網卡mac不匹配,所以只能創建個eth1出來。實際上,這個eth1並不是被udev map出來的,而是在內核里export到sysfs中的設備就叫這個名字。 為了避免這種情況,可以直接清空這條rule或者是把mac匹配那項刪掉。 ----------------------------------- 現在疑問的地方如下: 疑問的出現: 為了重現上面的問題,手工修改匹配mac然後重啟,發現eth0變成了eth1。但是如下輸出表明udev冒失影響了內核 - 但是,可當是, 不應該這樣啊......原始狀態: $ sudo find /sys -name "eth*" [sudo] password for zhuzhu: /sys/class/net/eth0 修改 rule後狀態: $ sudo find /sys -name "eth*" [sudo] password for zhuzhu: /sys/class/net/eth1 再改回來的狀態:
D. 沒有system eth0怎麼辦
因為新版的Centos使用systemd,它是一款系統和服務管理器,會自動命名設備,以前的eth0,在systemd管理下,會變成奇怪的eno後加一串隨機數字。讓你無所適同,一瞬間,教科書上的知識就變成了上個世紀的,那怎麼辦呢,把它命名為eth0就好了,編輯/etc/sysconfig/grub文件內容,增加「net.ifnames=0 biosdevname=0」,執行:grub2-mkconfig -o /boot/grub2/grub.cfg,重新對 文件進行命名
mv /etc/sysconfig/network-scripts/ifcfg-ens'X'X'X' /etc/sysconfig/network-scripts/ifcfg-eth0
注意這里的'X'X'X'是你的網卡後的隨機數字,每台機均不同,eth0則是你改名後的網卡設備名。
然後編輯一下/etc/sysconfig/network-scripts/ifcfg-eth0這個文件,把name = ens'X'X'X' 改為name=eth0 。保存退出,重啟伺服器。
E. Linux的網卡由eth0變成了eth1,如何修復麻煩告訴我
經過網路,了解了一些信息,特此記錄在此,以備忘。
很多Linux distribution使用udev動態管理設備文件,並根據設備的信息對其進行持久化命名。udev會在系統引導的過程中識別網卡,將mac地址和網卡名稱對應起來記錄在udev的規則腳本中。而對於新的虛擬機
,VMware會自動為虛擬機的網卡生成MAC地址,當你克隆或者重裝虛擬機軟體時,由於你使用的是以前系統虛擬硬碟的信息,而該系統中已經有eth0的信息,對於這個新的網卡,udev會自動將其命名為eth1(累加的原則),所以在你的系統啟動後,你使用ifconfig看到的網卡名為eth1。
在fedora中,udev記錄網路規則的腳本為:/etc/udev/rules.d/70-persistent-net.rules
[user@localhost ~]$ vi /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.
# PCI device 0x1022:0x2000 (pcnet32)
SUBSYSTEM==net, ACTION==add, DRIVERS==?*, ATTR{address}==00:0c:29:5a:6c:73, ATTR{type}==1, KERNEL==eth*, NAME=eth0
SUBSYSTEM==net, ACTION==add, DRIVERS==?*, ATTR{address}==00:0c:29:a9:22:9d, ATTR{type}==1, KERNEL==eth*, NAME=eth1
打開該文件,這時你會發現,裡面有eth0,eth1兩個網卡的信息,但實際上你ifconfig時只能發現eth1一個網卡的信息,這時因為eth0根本就不存在。
將其中eth0的信息刪掉,並將eth1信息中的設備名改為eth0,重啟系統,你看到的網卡就是eth0了,或者刪掉其中所有的信息重啟系統udev會幫你發現新的設備的。
F. eth0變成了rename2,怎麼回事
原因:
Linux distribution使用udev動態管理設備文件,並根據設備的信息對其進行持久化命名。udev會在系統引導的過程中識別網卡,將mac地址和網卡名稱對應起來記錄在udev的規則腳本中。而對於新的虛擬機,VMware會自動為虛擬機的網卡生成MAC地址,當克隆或者重裝虛擬機軟體時,由於使用的是以前系統虛擬硬碟的信息,而該系統中已經有eth0的信息,對於這個新的網卡,udev會自動將其命名為eth1(累加的原則),所以在系統啟動後,使用ifconfig看到的網卡名為eth1。
解決方法:
在fedora中,udev記錄網路規則的腳本為:/etc/udev/rules.d/70-persistent-net.rules
[user@localhost ~]$ vi /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.
# PCI device 0x1022:0x2000 (pcnet32)
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:0c:29:5a:6c:73", ATTR{type}=="1", KERNEL=="eth*", NAME="eth0"
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:0c:29:a9:22:9d", ATTR{type}=="1", KERNEL=="eth*", NAME="eth1"
打開該文件,這時會發現,裡面有eth0,eth1兩個網卡的信息,但實際上ifconfig時只能發現eth1一個網卡的信息,這時因為eth0根本就不存在。
將其中eth0的信息刪掉,並將eth1信息中的設備名改為eth0,重啟系統,看到的網卡就是eth0了,或者刪掉其中所有的信息重啟系統udev會幫發現新的設備的。
G. Linux系統\Centos沒有網卡eth0配置文件怎麼辦
因為新版的Centos使用systemd,它是一款系統和服務管理器,會自動命名設備,以前的eth0,在systemd管理下,會變成奇怪的eno後加一串隨機數字。讓你無所適同,一瞬間,教科書上的知識就變成了上個世紀的,那怎麼辦呢,把它命名為eth0就好了,編輯/etc/sysconfig/grub文件內容,增加「net.ifnames=0 biosdevname=0」,執行:grub2-mkconfig -o /boot/grub2/grub.cfg,重新對 文件進行命名
mv /etc/sysconfig/network-scripts/ifcfg-ens'X'X'X' /etc/sysconfig/network-scripts/ifcfg-eth0
注意這里的'X'X'X'是你的網卡後的隨機數字,每台機均不同,eth0則是你改名後的網卡設備名。
然後編輯一下/etc/sysconfig/network-scripts/ifcfg-eth0這個文件,把name = ens'X'X'X' 改為name=eth0 。保存退出,重啟伺服器。
H. linux KVM中復制虛擬機後eth0變成eth1問題
linux
KVM中復制虛擬機後eth0變成eth1問題當克隆或者重裝虛擬機後,再啟動系統時會發現系統下不再有eth0,而變成了eth1,當使用/etc/init.d/network重啟網路時,會提示找不到設備eth0及eth1的啟動腳本。做以下改動:/etc/sysconfig/network-scripts/ifcfg-eth0重命名為/etc/sysconfig/network-scripts/ifcfg-eth1/etc/init.d/network
restart
提示找不到eth0發現腳本中的device一項沒有改過來,將其改為eth1(或者刪掉)/etc/init.d/network
restart
提示網卡的物理地址不匹配/etc/sysconfig/network-scripts/ifcfg-eth0中的mac地址為原來eth0網卡的物理地址,而虛擬機為eth1分配新的物理地址,故啟動腳本中的信息與實際信息時不匹配的,將MAC的地址信息從腳本中刪除,再次重啟網路,OK!為什麼原來的eth0會變成eth1?很多linux
distribution使用udev動態管理設備文件,並根據設備的信息對其進行持久化命名。udev會在系統引導的過程中識別網卡,將mac地址和網卡名稱對應起來記錄在udev的規則腳本中。而對於新的虛擬機,VMware會自動為虛擬機的網卡生成MAC地址,當你克隆或者重裝虛擬機軟體時,由於你使用的是以前系統虛擬硬碟的信息,而該系統中已經有eth0的信息,對於這個新的網卡,udev會自動將其命名為eth1(累加的原則),所以在你的系統啟動後,你使用ifconfig看到的網卡名為eth1。如何把名字改回eth0?在fedora
11中,udev記錄網路規則的腳本為:/etc/udev/rules.d/70-persistent-net.rules打開該文件,這時你會發現,裡面有eth0,eth1兩個網卡的信息,但實際上你ifconfig時只能發現eth1一個網卡的信息,這時因為eth0根本就不存在。將其中eth0的信息刪掉,並將eth1信息中的設備名改為eth0,重啟系統,你看到的網卡就是eth0了,或者刪掉其中所有的信息重啟系統udev會幫你發現新的設備的。
I. linux靜態IP地址配置後網路介面eth經常重啟後變化,求助!
這個可能是因為系統MAC地址綁定引起的
你編輯/etc/udev/rulesd/70-persistent-net.rules這個文件
把裡面跟MAC地址有關的代碼全部刪掉,基本上是前三行注釋不刪除的
保存退出,重啟電腦看看。
保險起見,給/etc/network/interface這個文件加個許可權
命令chittr +i /etc/network/interface
這樣這個配置文件就不會被系統更改了
J. Linux的網卡由eth0變成了eth1,怎麼修復
在fedora中,udev記錄網路規則的腳本為:/etc/udev/rules.d/70-persistent-net.rules
[user@localhost ~]$ vi /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.
# PCI device 0x1022:0x2000 (pcnet32)
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:0c:29:5a:6c:73", ATTR{type}=="1", KERNEL=="eth*", NAME="eth0"
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:0c:29:a9:22:9d", ATTR{type}=="1", KERNEL=="eth*", NAME="eth1"
打開該文件,這時你會發現,裡面有eth0,eth1兩個網卡的信息,但實際上你ifconfig時只能發現eth1一個網卡的信息,這時因為eth0根本就不存在。
將其中eth0的信息刪掉,並將eth1信息中的設備名改為eth0,重啟系統,你看到的網卡就是eth0了,或者刪掉其中所有的信息重啟系統udev會幫你發現新的設備的。
另外還有一個啟動腳本文件/etc/sysconfig/network-scripts/ifcfg-eth0,該文件中的mac地址為原來eth0網卡的物理地址,而虛擬機為eth1分配新的物理地址,故啟動腳本中的信息與實際信息時不匹配的,將MAC的地址信息修改為70-persistent-net.rules中的eth1的MAC地址,再次重啟網路,就完全恢復到以前eth0網卡的狀態了。