您的位置:首页 > 运维架构 > Linux

精华--CentOS多网卡配置

2015-10-26 10:00 281 查看
事情是这样的,我之前在windows用vmware建了一个centos,现在ubuntu开发,要用到之前的虚拟机,所以下了个vmware10, 因为文件格式来自于同一款软件,所以ubuntu下可以使用windows创建的虚拟机。顺利开机让我略感兴奋,当我配置完ssh后发现ip地址变了,然后我决定配置为静态的ip,重启网络时报错:没有找到合适的设备,没有找到可用于连接‘Auto_eth0'的设备

当时我就不高兴了,用ifconfig一看,发现跟本就没有eth0,只有eth1, 然后

cd /etc/sysconfig/network-scripts/

发现有Auto_eth0的配置文件,然后

cd /etc/sysconfig/networking/devices/

发现有Auto_eth0这个设备

但是找不到eth1!!!而且有eth0,配置也是完整的,为什么报错!!!

事情是这样的:在linux下一切皆文件,我们可以这样理解,linux要上网必须要网卡,那么网卡就对应着一些配置文件,其中

/etc/sysconfig/networking/devices/ 下对应的是网卡

/etc/sysconfig/network-scripts/ 下对应的是网卡的配置文件

网络启动时会在配置文件目录下找网卡配置,比如ifcfg-Auto_eth0

因为虚拟机是借助于主机的网卡,所以不同的主机给出的网卡硬件地址也不一样,可以用ifconfig查看

如果我们把虚拟机整个移到另外的系统或者重装了vmware但是虚拟机文件还在,那么下次打开时虚拟机的网卡硬件地址和之前会不一样,但是你又找不到配置文件,所以我们需要自己根据以前的网卡配置新建对应的配置文件,具体过程如下:

cd /etc/sysconfig/networking/devices/

cp ifcfg-Auto_eth0 ifcfg-Auto_eth1

vi ifcfg-Auto_eth1

HWADDR换成ifconfig中eth1的硬件地址,DEVICE换成Auto_eth1,NAME换成"Auto eth1"

cd /etc/sysconfig/network-scripts/

cp ifcfg-Auto_eth0 ifcfg-eth1

vi ifcfg-eth1

HWADDR换成ifconfig中eth1的硬件地址,DEVICE换成Auto_eth1,NAME换成"eth1",IPADDR和GATEWAY换成ifconfig中eth1的ip和网关

两个文件的配置差不多,但是意义不一样,前者是设备,后者是配置



总结:如果你有多张网卡,配置的套路是一样的,先在 /etc/sysconfig/networking/devices/ 下补全设备,然后在 /etc/sysconfig/network-scripts/ 下补全对应的配置,最后记得执行 service network restart

注意事项:如果你的虚拟机是经过迁移的(系统或者软件环境变化),那么可能原先的网卡已经不存在,无法使用,但是配置文件还在,这时需要把没用的网卡配置文件移除:这里我假设是 Auto_eth0网卡不见了:

cd /etc/sysconfig/network-scripts/

mv ifcfg-Auto_eth0 ifcfg-Auto_eth0.bak

这里不删除文件的原因主要是如果以后还会在原来的环境下使用这个虚拟机则这里的Auto_eth0就得用上,那我们配置的其它网卡就得移除(网卡对应的设备文件不用动,只需要删配置文件)
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: