位置: 编程技术 - 正文
推荐整理分享RedHat服务器网卡阵列配置攻略(redhat网卡配置文件),希望有所帮助,仅作参考,欢迎阅读内容。
文章相关热门搜索词:redhat7.6重启网卡服务,redhat7.6重启网卡服务,redhat 网卡配置,redhat7.6重启网卡服务,redhat7.6配置网卡,redhat网卡配置文件,redhat7.6配置网卡,redhat7.6配置网卡,内容如对您有帮助,希望把文章链接给更多的朋友!
网卡阵列配置1.修改vi /etc/rc.d/rc.local文件,增加以下内容(注意这里添加的是eth0、eth1两个网口)复制代码代码如下:ifenslave bond0 eth0 eth1#如果一块网卡失效,系统会按照/etc/rc.d/rc.local里顺序启动网卡,起到失效保护作用。echo "0" >>/proc/sys/net/ipv4/icmp_echo_ignore_broadcastssetsebool ftpd_disable_trans 1service vsftpd restartroute add -net .0.0.0/4 dev bond0#添加路由来设定发送规则2.修改配置文件/etc/sysconfig/network-scripts新增ifcfg-bond0文件,内容如下:DEVICE=bond0 #设备名称BOOTPROTO=static #不启用DHCPONBOOT=yes #开机自启动IPADDR=...X #网卡阵列的ip地址NETMASK=...0 #掩码GATEWAY=...1 #网关修改ifcfg-eth0,ifcfg-eth1文件,根据实际配置文件新增修改部分如下:复制代码代码如下:MASTER=bond0SLAVE=yesBOOTPROTO=static #配置静态地址,不开启DHCPONBOOT=yes #开机网卡自启动3.修改/etc/modprobe.d/dist.conf(按esc用:$回车抵达最后一行在末尾添加下面两句)复制代码代码如下:alias bond0 bonding(Bonding只能提供链路监测,从主机到交换机的链路是否连通,如果只是交换机对外的链路down掉,而交换机本身没有故障,bonding会认为没有故障而继续使用)复制代码代码如下:options bond0 miimon= mode=1(miimon用来进行链路监测,每ms监测一次链路连接状态,如果一条不同转入另一条线路;mode的值表示工作模式,共有1,2,3,4四种模式Mode=0表示load balancing(round-robin)为负载均衡模式Mode=1表示fault- tolerance(active-backup)为冗余模式,主备工作模式)复制代码代码如下:alias net-pf- off #关闭ipv6支持,可以不加对于级联小交换机复制代码代码如下:alias bond0 bondingoptions bond0 mode=1 arp_interval= arp_ip_target=... arp_validate=all primary=eth0#通过定时器,每个slave接口不断发送ARP包来不断更换交换机端口与MAC的对应关系使得每个网卡都在进行工作。这个ARP的发送规则是:每arp_interval(MS)间隔向arp_ip_target发送arp请求,可以向多个arp_ip_target发送arp请求。
4.增加/etc/udev/rules.d/-hwinterfaces.rules(锁定网卡物理地址,SYSFS{address}==""双引号中输入物理地址)复制代码代码如下:KERNEL=="eth*",SYSFS{address}=="",NAME="eth0"KERNEL=="eth*",SYSFS{address}=="",NAME="eth1"KERNEL=="eth*",SYSFS{address}=="",NAME="eth2"KERNEL=="eth*",SYSFS{address}=="",NAME="eth3"KERNEL=="eth*",SYSFS{address}=="",NAME="eth4"防止机器网卡的mac地址发生漂移
5.查看网卡阵列的配置情况复制代码代码如下:#ifconfig -a|grep HWaddr查看网卡mac信息,如果bond0,eth0,eth1硬件地址一致,则配置成功复制代码代码如下:#cat /proc/net/bonding/bond0查看bond0工作状态
网卡常用操作方法笔记1.bond0上的mac地址修改成一致,这些网卡接在同一台交换机上,那么该交换机的arp表同一mac地址对应的端口有多个,交换机无法判断数据包发往的端口,所以要求交换机的相应端口采取聚合模式,聚合后的端口采用同一mac地址。2.使网卡配置马上生效,不用重启机器,命令复制代码代码如下:#service network restart或#/etc/rc.d/init.d/network restart必须关闭NetworkManager服务复制代码代码如下:#service NetworkManager stop //当前环境下关闭服务#chkconfig NetworkManager off //开机启动关闭服务3.重新启动网卡,命令复制代码代码如下:#ifconfig bond0 down/ifdown bond0#ifconfig eth0 down/ifdown eth0#ifconfig eth1 down/ifdown eth1#ifenslave bond0 eth0 #ifenslave bond0 eth1 #ifconfig bond0 up/ifup bond0#ifconfig eth0 up/ifup eth0#ifconfig eth1 up/ifup eth. Bonding的模式一共有7种:复制代码代码如下:#defineBOND_MODE_ROUNDROBIN 0.balance-rr模式,网卡的负载均衡模式#defineBOND_MODE_ACTIVEBACKUP 1.active-backup模式,网卡的容错模式#defineBOND_MODE_XOR 2.balance-xor模式,需要交换机支持#defineBOND_MODE_BROADCAST 3.broadcast模式#defineBOND_MODE_AD 4.IEEE .3ad动态链路聚合模式,需要交换机支持#defineBOND_MODE_TLB 5.自定义传输负载均衡模式#defineBOND_MODE_ALB 6.网卡虚拟化方式bonding模块的所有工作模式可以分为两类:多主型工作模式和主备型工作模式,balance-rr 和broadcast属于多主型工作模式而active-backup属于主备型工作模式。(balance-xor、自适应传输负载均衡模式 (balance-tlb)和自适应负载均衡模式(balance-alb)也属于多主型工作模式,IEEE .3ad动态链路聚合模式(.3ad)属于主备型工作模式。(1)BOND_MODE_ROUNDROBIN模式下,bonding对于发送和接收数据的处理逻辑是不一致的,对于数据的接收,bonding基本不做任何处理,纯粹依靠交换机端口与MAC的变化来实现交替接收数据。发送的话,交换机会根据数据的源MAC来学习端口和MAC之间的关系,所以bonding 做到的就是选择不一样的网卡发送。(2)网卡的容错模式(mode =BOND_MODE_ACTIVEBACKUP),容错模式的配置方法和负载均衡模式基本差不多,只不过修改一下/etc/modprobe.conf即可。
5.arp检测模式观察交换机端口上所学习到的MAC地址,发现MAC会在两个端口上反复切换在BOND_MODE_ROUNDROBIN模式下,bonding对于发送和接收数据的处理逻辑是不一致的,对于数据的接收,bonding基本不做任何处理,纯粹依靠交换机端口与MAC的变化来实现交替接收数据。发送的话,交换机会根据数据的源MAC来学习端口和MAC之间的关系,所以bonding 做到的就是选择不一样的网卡发送。对于数据的发送,复制代码代码如下:static inline voidbond_set_mode_ops(struct net_device *bond_dev, int mode){switch(mode) {case BOND_MODE_ROUNDROBIN:bond_dev->hard_start_xmit =bond_xmit_roundrobin;break;...bond的发送函数被注册为bond_xmit_roundrobin。通过bond_xmit_roundrobin的实现可以发现。复制代码代码如下:static int bond_xmit_roundrobin(structsk_buff *skb, struct net_device *bond_dev){ead_lock(&bond->curr_slave_lock);slave = start_at = bond->curr_active_slave;read_unlock(&bond->curr_slave_lock);bond_for_each_slave_from(bond, slave, i,start_at) {if(IS_UP(slave->dev) && (slave->link == BOND_LINK_UP) && (slave->state ==BOND_STATE_ACTIVE)) {res =bond_dev_queue_xmit(bond, skb, slave->dev);write_lock(&bond->curr_slave_lock);bond->curr_active_slave= slave->next;write_unlock(&bond->curr_slave_lock);break;}bond_xmit_roundrobin会通过curr_active_slave指针所指向的设备来进行发送,当然 curr_active_slave会在调用bond_dev_queue_xmit完成实际的发送之后指向下一个slave设备。 bond_dev_queue_xmit实际是调用通用的发送函数dev_queue_xmit来进行的,它传递给dev_queue_xmit的是一个 skb,在传递之前skb->dev就被指定为了当前的slave设备,这样内核就会找到对应的真实网卡设备来进行发送,最后 curr_active_slave指针的轮询切换,实现了bonding的负载均衡工作模式。从这种模式可以看到,bonding实现了一个类似网卡驱动的模块,对应的bond0设备是一个纯粹的虚设备,数据发送虽然说经过了它,但通过一系列调用,转了一圈之后才回到真正的网卡设备那里进行发送,无疑会消耗一定的系统性能。简单用Mbps速率的UDP数据包测试了一下BOND_MODE_ROUNDROBIN模式。测试过程中发现接收端会有较多的乱序包,观察交换机端口情况,端口之间的切换频率不规则,这个和交换机的配置或者性能应该有很大联系,有必要的话需要进一步研究。数据的正确性和时序性能否保证需要进一步仔细测试。
6. mii链路检测方式与之前arp检测方式不同。这两种链路检测方式在各种mode下都是可以使用的,但要注意不能同时使用。bonding的mii检测实现。首先和arp-monitor一样,mii也是定时器触发复制代码代码如下:if(bond->params.miimon) { /* link checkinterval, in milliseconds. */init_timer(mii_timer);mii_timer->expires= jiffies + 1;mii_timer->data = (unsigned long)bond_dev;mii_timer->function = (void*)&bond_mii_monitor;add_timer(mii_timer);}bond_mii_monitor函数其本质的原理就是检测网卡的链路状态,bonding定义网卡有4个链路状态:BOND_LINK_UP:正常状态(处于该状态的网卡是是潜在的发送数据包的候选者)BOND_LINK_FAIL:网卡出现故障,向状态BOND_LINK_DOWN 切换中BOND_LINK_DOWN:失效状态BOND_LINK_BACK:网卡恢复,向状态BOND_LINK_UP切换中从上到下,表示了网卡链路从正常到失效再到恢复状态。bond_mii_monitor函数就是依次检查网卡的链路状态是否处于这些状态,然后通过标记 do_failover变量来说明当前是否需要切换slave网卡。代码篇幅较大,但逻辑还是很清晰的,故此处不罗列了。在BOND_MODE_ACTIVEBACKUP模式下,两块网卡其实有一块是不工作的,被设置为IFF_NOARP的状态。同时,bond虚设备,还有 slave设备的MAC地址均一致,所以这张网卡不会被外界察觉存在。交换机也不存在想该端口发包的情况。当bond的mii检测发现当前的active 设备失效了之后,会切换到这个备份设备上。在bond_change_active_slave函数中复制代码代码如下:if (bond->params.mode ==BOND_MODE_ACTIVEBACKUP) {if (old_active) {bond_set_slave_inactive_flags(old_active);}if (new_active) {bond_set_slave_active_flags(new_active);}}这个就是在BOND_MODE_ACTIVEBACKUP模式下的切换逻辑,很简单,需要注意的是,在 bond_set_slave_inactive_flags(old_active)中,需要将接口的状态设置为IFF_NOARP,不然交换机就可能 会把数据包发送到一个错误的端口上。
CentOS系统修改网卡em1为eth0的方法 问题:部分Dell服务器在安装Linux操作系统之后,发现网卡名称变成em1了。解决办法:修改网卡名称为eth0,这里以CentOS操作系统为例。一:修改系统grubvi/
centos:/tmp不能运行导致的安装编译错误问题解决方法 [root@web1~]#peclinstallapcdownloadingAPC-3.1.9.tgz...StartingtodownloadAPC-3.1.9.tgz(,bytes).................................done:,bytessourcefiles,buildingrunning:phpizeConfiguringfor:
centos7怎么查看cpu内存等系统性能参数? Linux下面查看系统的资源参数,有时候会忘记其方法,现将方法记录分享如下1、打开terminal或者直接登录,如下2、点击进去,输入以下命令查看CPU版本
标签: redhat网卡配置文件
本文链接地址:https://www.jiuchutong.com/biancheng/353583.html 转载请保留说明!友情链接: 武汉网站建设