`
emcome
  • 浏览: 306940 次
  • 性别: Icon_minigender_1
  • 来自: 重庆
社区版块
存档分类
最新评论

Linux 多网卡识别顺序邦定

阅读更多

 

转自:http://linux.chinaunix.net/bbs/thread-1175497-1-1.html

 

使用linux系统时会出现这样的情况,当你安装了某个网卡的驱动程序时,或者安装了与网卡相关的程序后。

网卡会出现所谓的漂移现象。(注意:不是飘逸)。可能的表象为:

(1):网卡顺序颠倒,比如之前你的网线连接的网口为eth0,当安装某个网卡的驱动后,可能它的名字变为eth0或者eth3,等等情况。

(2):网卡名字改变,这种情况倒不是eth0到eth1的改变,而是很诡异的变化,比如eth0找不到了,多了个网卡名字叫 __tmp3183921382193__

这个确实让人很恼火。因为有人可能会通过ifconfig | grep eth来获取信息从而完成一些开发工作,如果网卡名字变得乌七八糟了,程序肯定会出错。

(3):光口网卡和电口网卡顺序乱了,或者交叉。

总之我们的目的就是:能够指定某个网卡的名字为我们想要的物理设备。做法如下:

第一步,识别谁是谁。

要使用网卡,首现要知道哪个名字对应的哪个物理设备,做法为:从交换机拉一根网线,从上到下挨个接到网卡上面,注意每次只能接一个网卡,接上后通过ethtool命令来查看是否连着网线,比如

[root@AS5 ~]# ethtool eth0
Settings for eth0:
Supported ports: [ MII ]
Supported link modes:   10baseT/Half 10baseT/Full
                         100baseT/Half 100baseT/Full
                         1000baseT/Full
Supports auto-negotiation: Yes
Advertised link modes:  10baseT/Half 10baseT/Full
                         100baseT/Half 100baseT/Full
                         1000baseT/Full
Advertised auto-negotiation: Yes
Speed: 100Mb/s
Duplex: Full
Port: MII
PHYAD: 2
Transceiver: external
Auto-negotiation: on
Supports Wake-on: g
Wake-on: d
Link detected: yes

看到了eth0的状态为连接着网线。如果Linked detected:no,则说明没有连接网线。

如此区分开哪个设备的名字是什么,标注好。

第二步:获取每个网卡的MAC地址

ifconfig -a能看到所有网络设备。

通过 ifconfig -a | grep HWaddr 来获取每个设备的MAC地址。

比如:

[root@AS5 ~]# ifconfig  -a | grep HWaddr
eth0      Link encap:Ethernet  HWaddr 00:30:48:7F:B5:CA
eth1      Link encap:Ethernet  HWaddr 00:30:48:7F:B5:CB
eth2      Link encap:Ethernet  HWaddr 00:04:23:A6:81:E0
eth3      Link encap:Ethernet  HWaddr 00:04:23:A6:81:E1

拿到了每个网卡的MAC地址。

第三步:进行MAC和网卡名称绑定。

我们都知道,对于RedHat的系统,网络的配置文件在:/etc/sysconfig/network-scripts/ifcfg-ethX

中存着,N=0,1,2。。。

比如:root@AS5 ~]# cat /etc/sysconfig/network-scripts/ifcfg-eth0
# nVidia Corporation MCP55 Ethernet
DEVICE=eth0
ONBOOT=yes
HWADDR=00:30:48:7f:b5:ca
TYPE=Ethernet
NETMASK=255.255.255.0
IPADDR=192.168.42.231
GATEWAY=192.168.42.1
BOOTPROTO=static
#NAMESERVER=202.106.0.20

这个文件是对网卡进行初始化的配置文件。

比如如果我们想指定网卡MAC地址为MAC1的设备名称为ethn,那么,修改文件

/etc/sysconfig/network-scripts/ifcfg-ethn

在里面添加MAC地址绑定和名字的配置信息

DEVICE=ethn

HWADDR=MAC1(比如00:30:48:7f:b5:ca)

其它配置信息不受影响。

当对所有网卡实现绑定后,reboot系统,应该就可以了。

还有一点需要注意,就是驱动对应关系的文件:

/etc/modprobe.conf

要在该文件中修改,确保某个设备使用的就是对应它的驱动,比如:

cat /etc/modprobe.conf
alias eth0 forcedeth
alias eth1 forcedeth
alias scsi_hostadapter aic79xx
alias scsi_hostadapter1 sata_nv
alias scsi_hostadapter2 usb-storage
alias eth2 e1000
alias eth3 e1000

说明eth0和eth1用的forcedeth的驱动,eth2和eth3用的是e1000的驱动。

分享到:
评论

相关推荐

    服务器多网卡绑定与交换机链路聚合对接探讨.docx

    本文将重点介绍Linux下的多网卡绑定原理以及与之对应的交换机配置策略。 #### 二、多网卡绑定概述 多网卡绑定(NIC Teaming)是指将多个物理网络接口卡组合成一个逻辑接口的过程。这种方式能够显著提高网络连接的...

    linux bond配置步骤中的七种bond模式

    首先,Bonding是一种将多个网络接口卡(NICs)绑定到一起,形成一个单一逻辑链路的技术,目的是为了提高网络的可靠性、容错能力以及带宽。在Linux系统中,可以通过修改配置文件和加载模块来实现bonding。 配置步骤...

    Redhat5根据PCI槽位模式指定网卡名称

    - 注意:这种方式不适用于网桥和汇聚绑定的网卡模式,并且需要确保`/etc/sysconfig/network-script/ifcfg-eth*`文件中的MAC地址为空。 3. **根据PCI槽位模式指定网卡名称**: - 为了更灵活地指定网卡名称,可以...

    LLinux操作系统的安装部署及安全设置

    - 网卡绑定:为了提高网络的稳定性和性能,可以进行网卡绑定配置。 - 字符集设置:设置操作系统字符集,确保系统显示和处理中文字符时不会出现乱码。 - 系统服务设置:根据实际需求启用或禁用某些服务,并配置...

    Oracle11.2_RAC在64bitOnOracleLinux6.6安装文档

    - **双网卡绑定**:提供双网卡绑定的方法,增强网络稳定性。 - **安装 Grid 执行 root.sh 脚本输出**:解释执行结果及其含义。 以上步骤和内容为 Oracle 11.2 RAC 在 Oracle Linux 6.6 系统上的完整安装流程和技术...

    知库云盘技术参数.pdf

    9. **vCPU绑定**:虚拟机vCPU可绑定物理CPU,支持专享和共享绑定。 10. **内存配置调整**:提供多种内存模式,如预留、共享、专享和自定义。 11. **vSMP和NUMA技术**:支持高负载应用环境,优化性能。 12. **vGPU...

    华为云计算HCNA最新题库(精品50道)

    1. **虚拟机重启**:绑定USB设备后,虚拟机重启可能导致USB设备重新识别,影响正常工作。 2. **虚拟机热迁移**:热迁移过程中可能会导致USB设备连接中断,因此不建议在热迁移前绑定USB设备。 3. **集群调度策略**:...

    易语言程序免安装版下载

    绑定参数()”命令不支持汉字/UTF-8。 14. 修改BUG:VCL相关支持库部分组件在修改个别属性或调用个别方法后不可见,并改进了Delphi版本的支持库SDK。 15. 修改BUG:高级表格在列类型为数值型时,添加新行且省略标题...

Global site tag (gtag.js) - Google Analytics