linux双网卡绑定配置,验证及测试
linux系统主机双网卡环回测试要点
Linux下双网卡主机的回环测试一、设计任务及要求路由器测试早期采用“回绕测试法”(Loop-back Test Method,LTM),即测试器将测试数据的目的IP地址指定为测试系统(SUT)自身的IP地址,测试器发出的测试数据将被路由器的输入单元直接返回测试系统。
单台主机多网卡的测试系统也可以进行回绕测试,在RFC2544文档中有相关描述,本实验的任务就是在linux下的双网卡主机进行回绕测试,也可叫做环回测试,待测设备可以是路由器或者交换机,主机的双网卡分别和交换机或路由器的两个接口相连,数据由一个网卡出来经过待测设备之后再从另外一个网卡回来,这就是整个实验测试的任务。
实验要求:网卡之间能够进行ICMP报文和TCP或UDP报文的传输。
二、实验的解决思路Linux的内核对从一个网络地址发往另一个网络地址的数据包,如果这两个网络地址同属一个host,则这个数据包会直接在内部转发,根本不会放到网络设备上,本实验的解决思路是在主机上制定两个不属于任何主机的ip,再将网卡的IP地址进行绑定,增加两条相关的路由,用防火墙进行ip 地址转换。
三、实验操作实验场景如图所示:图1:双网卡主机测试环境如图所示其ip地址分别为192.168.1.108(有线网卡),另一个的IP地址为192.168.1.101(无线网卡),有线网卡通过一台路由器进行连接,路由器的网关是192.168.1.1,有线网卡和无线网卡通过路由器的Dhcp自动获得分配的IP,可以连接外网。
其配置如下图所示:图2:linux下主机的网络配置图在主机上增加两条路由,route add 192.168.1.11 dev eth0;route add 192.168.1.22 dev wlan0;上面的两个ip地址是不属于任何主机,目的地址为192.168.1.11的数据包由eth0转发,目的地址为192.168.1.22的数据包由wlan0转发。
Lniux网络配置与管理实验报告
实验六网络配置与管理
一、实验目的
1.掌握Linux系统下网络的管理方法。
2.掌握Linux系统下常用的网络命令。
二、实验内容
某公司新购一台服务器,服务器上已安装Linux操作系统,并且服务器上配置两块网卡,现需对这两块网卡进行网络配置,配置内容如下表所示:
令重启Linux系统的网络服务功能,并ifconfig命令查看网卡的IP 地址是否为更改的IP地址。
(1)查看网卡信息和配置IP地址和子网掩码和网关
(2)配置网关
(3)重启Linux系统的网络服务功能,用ifconfig查看网卡的IP 地址
三、实验总结
通过本次实验,让我知道了用ifconfig命令配置的网卡信息,在机器重启后,修改的配置就不存在了。
要想保存修改的配置,就需要
修改网卡的配置文件。
linux下双网卡绑定并设置双IP
linux下双网卡绑定并设置双IP环境:双网卡服务器RHEL AS5.4目的:双网卡绑定并设置双IP配置:分为2部分:一、双网卡绑定;二、给绑定后的网卡设置双IP一、双网卡绑定1,新建个ifcfg-bond0 (cp /etc/sysconfig/network-scripts/ifcfg-eth0/etc/sysconfig/network-script/ifcfg-bond0)2,修改ifcfg-bond0文件,去掉mac地址相关信息(HW ADDR),给个ip地址,网络地址,广播地址如下:# cat ifcfg-bond0DEVICE= bond0BOOTPROTO=staticIPADDR=192.168.80.189 //*第一个IP地址*//NETMASK=255.255.255.0 //*网络掩码*//ONBOOT=yes:wq //*保存退出*//3,修改ifcfg-eth0和ifcfg-eth1,如下:cat ifcfg-eth0cat ifcfg-eth14,修改/etc/modprobe.conf,添加如下语句:alias bond0 bondingoptions bond0 miimon=100 mode=1注释:mode可以为0,1,0为负载均衡,1为失效保护如下图:5,修改/etc/rc.d/rc.local,添加如下内容:ifenslave bond0 eth0 eth1route add -net 192.168.1.255 netmask 255.255.255.0 bond0如下图:6,重启,看能否通过ssh登陆上服务器bond0得ip(192.168.1.136),如果成功登陆或者ping通了,再查看一下连接状态ifconfig,如下图:ifconfig查看连接状态7,尝试拔掉一根网线看是否能正常登陆上去(或ping得通),再查看一下更连接状态(cat /proc/net/bonding/bond0)如下图:8,尝试一下更换一下mode的值,再试一下。
linux双网卡双IP双网关如何配置
# Broadcom Corporation NetXtreme II BCM5709 Gigabit Ethernet
DEVICE=eth1
BOOTPROTO=none
ONBOOT=yes
HOTPLUG=no
HOTPLUG=no
TYPE=Ethernet
IPADDR=192.168.1.2
NETMASK=255.255.255.0
HWADDR=d8:d3:85:fb:d4:60
GATEWAY=192.168.1.1
USERCTL=no
IPV6INIT=no
PEERDNS=yes
eth1 的配置如下,不需要配置网关
TYPE=Ethernet
IPADDR=192.168.2.2
NETMASK=255.255.255.0
USERCTL=no
IPV6INIT=no
PEERDNS=yes
Linux 命令行下添加路由,192.168.3.0 走 eth1 的网关 192.168.2.1
route add -net 192.168.3.0 netmask 255.255.255.0 dev eth1
linux双网卡双ip双网关如何配置 注意: 2张网卡,只能有1张网卡配置网关,另1张网卡不能配置网关,通过route add添加路由功能来完成第2张网卡的网关配置. 如 : eth1 (192.168.2.2)不需要配置网关,但到 192.168.3.0的网段,需要从eth1去实现通信,其余的全部走eth0网卡,eth0配置网关. eth0的配置如下,配置网关参数 [root@redhat network-scripts]# cat ifcfg-eth0 # broadcom corporation netxtreme ii bcm5709 gigabit ethernet device=eth0 bootproto=none onboot=yes hotplug=no type=ethernet ipaddr=192.168.1.2 netmask=255.255.255.0 hwaddr=d8:d3:85:fb:d4:60 gateway=192.168.1.1 userctl=no ipv6init=no peerdns=yes eth1的配置如下,不需要配置网关 [root@server network-scripts]# cat ifcfg-eth1 # broadcom corporation netxtreme ii bcm5709 gigabit ethernet device=eth1 bootproto=none onboot=yes hotplug=no type=ethernet ipaddr=192.168.2.2 netmask=255.255.255.0 userctl=no ipv6init=no peerdns=yes linux命令行下添加路由,192.168.3.0走 eth1的网关 192.168.2.1 route add -net 192.168.3.0 netmask 255.255.255.0 dev eth1 下载文档原格式( txt原格式 ,共1页)
Linux双网卡绑定和解除
Linux双⽹卡绑定和解除⼀、传统的bond模式⽹卡绑定⼀定要在服务管理中关闭NetworkManager服务并禁⽤⾃动启动,因为centos中NetworkManager服务与network服务冲突,默认是由NetworkManager接管⽹络服务,所以传统⽅式重启会出现启动失败,错误⽇志⼀般如下所⽰,管理员就得回到机房接显⽰器配置⽹络连接。
以绑定eth0和eth1为例1.通过vim设置eth0的IP地址和eth1的IP地址。
[root@x101 network-scripts]# vim ifcfg-eth0DEVICE=eth0ONBOOT=yesBOOTPROTO=noneTYPE=EthernetMASTER=bond0 //将⽹卡指向bond0SLAVE=yesUSERCTL=[yes|no](⾮root⽤户是否可以控制该设备)[root@x101 network-scripts]# vim ifcfg-eth1DEVICE=eth1ONBOOT=yesNETBOOT=yesBOOTPROTO=noneTYPE=EthernetMASTER=bond0 //将⽹卡指向bond0SLAVE=yesUSERCTL=[yes|no](⾮root⽤户是否可以控制该设备)2.新建 /etc/sysconfig/network-scripts/ifcfg-bond0绑定配置⽂件[root@x101 network-scripts]# cat ifcfg-bond0DEVICE=bond0ONBOOT=yesNETBOOT=yesBOOTPROTO=noneTYPE=EthernetIPADDR=192.168.0.106PREFIX=24DNS=192.168.0.1NM_CONTROLLED=no[root@x101 network-scripts]#5.创建⽹卡绑定的驱动⽂件/etc/modprobe.d/⾃定义.conf,使得绑定后的⽹卡bond0能够⽀持绑定技术(bonding),同时定义⽹卡以mode6模式进⾏绑定,且出故障时⾃动切换时间为100毫秒ms,添加alias bond0 bondingoptions bond0 mode=6 miimon=100 max_bonds=2miimon是指多久时间要检查⽹路⼀次,单位是ms(毫秒)。
Linux网卡Bonding配置
Linux⽹卡Bonding配置⼀、bonding技术简介 bonding(绑定)是⼀种将n个物理⽹卡在系统内部抽象(绑定)成⼀个逻辑⽹卡的技术,能够提升⽹络吞吐量、实现⽹络冗余、负载等功能,有很多优势。
Linux 系统下⽀持⽹络 Bonding,也叫 channel Bonding,它允许你将 2 个或者更多的⽹卡绑定到⼀起,成为⼀个新的逻辑⽹卡,从⽽实现故障切换或者负载均衡的功能,具体情况要取决于 mode 参数的具体配置。
Linux系统bonding技术是内核层⾯实现的,它是⼀个内核模块(驱动)。
使⽤它需要系统有这个模块, 我们可以modinfo命令查看下这个模块的信息, ⼀般来说都⽀持.modinfo bondingbonding的七种⼯作模式bonding技术提供了七种⼯作模式,在使⽤的时候需要指定⼀种,每种有各⾃的优缺点.balance-rr (mode=0) 默认, 有⾼可⽤ (容错) 和负载均衡的功能, 需要交换机的配置,每块⽹卡轮询发包 (流量分发⽐较均衡).active-backup (mode=1) 只有⾼可⽤ (容错) 功能, 不需要交换机配置, 这种模式只有⼀块⽹卡⼯作, 对外只有⼀个mac地址。
缺点是端⼝利⽤率⽐较低balance-xor (mode=2) 不常⽤broadcast (mode=3) 不常⽤802.3ad (mode=4) IEEE 802.3ad 动态链路聚合,需要交换机配置,没⽤过balance-tlb (mode=5) 不常⽤balance-alb (mode=6) 有⾼可⽤ ( 容错 )和负载均衡的功能,不需要交换机配置 (流量分发到每个接⼝不是特别均衡)详细说明请参考⽹络上其他资料,了解每种模式的特点根据⾃⼰的选择就⾏, ⼀般会⽤到0、1、4、6这⼏种模式。
⼆、RHEL6 下的 Boding 配置: 在所有的 RHEL 版本下,⽬前都不⽀持在 NetworkManager 服务协作下实现 Bonding 配置.所以要么直接关闭 NetworkManager 服务,并取消其开机启动,要么在所有涉及 Bonding 的⽹卡配置⽂件中(包含ethx 或者 bondY),显式地添加⼀⾏:NM_CONTROLLED=no 要配置⽹卡 Bonding,你必须在/etc/sysconfig/network-scripts/⽬录下建⽴逻辑⽹卡的配置⽂件 ifcfg-bondX,⼀般 X 从 0 开始,依次增加.具体的⽂件内容根据参与 Bonding 的⽹卡类型的不同⼜有所差别,以最最常见的 Ethernet 为例,配置⽂件⼤致是这样的:DEVICE=bond0IPADDR=192.168.0.1NETMASK=255.255.255.0ONBOOT=yesBOOTPROTO=noneUSERCTL=noBONDING_OPTS="bonding parameters separated by spaces"NM_CONTROLLED=no BONDING_OPTS 这⼀⾏填写你需要的 Bonding 模式,⽐如 BONDING_OPTS="miimon=100 mode=1" ,下⾯也会介绍⼏种常见的配置⽅式和它代表的意义,这⾥暂时不展开说明.为了⽅便称呼,我们把Bongding 后的逻辑⽹卡 bondX 称为主⽹卡(Master),参与 Bonding 的物理⽹卡 ethY 称为⼦⽹卡(Slave). 主⽹卡配置⽂件创建完毕以后,⼦⽹卡的配置⽂件也需要做相应的改变,主要是添加 MASTER=和SLAVE=这两项参数,我们假设 2 张⼦⽹卡为 eth0 和 eth1,那么他们的配置⽂件⼤致的样⼦会是这样⼦:DEVICE=ethXBOOTPROTO=noneONBOOT=yesMASTER=bond0SLAVE=yesUSERCTL=noNM_CONTROLLED=no 像这样,分别修改 ifcfg-eth0 和 ifcfg-eth1 配置⽂件,DEVICE=ethX 中的 X ⽤相应的值代替.然后我们重启⽹络服务.service network restart这样⼦,⼦⽹卡为 eth0 和 eth1,主⽹卡为 bond0,模式为 mode 1 的⽹络 Bonding 就完成了rhel6 bonding 实例展⽰系统: rhel6⽹卡: eth2、eth3bond0:10.200.100.90负载模式: mode1(active-backup) # 这⾥的负载模式为1,也就是主备模式.1、关闭和停⽌NetworkManager服务service NetworkManager stopchkconfig NetworkManager offps: 如果有装的话关闭它,如果报错说明没有装这个,那就不⽤管2、加载bonding模块modprobe --first-time bonding3、创建基于bond0接⼝的配置⽂件[root@rhel6.6 network-scripts]# cat ifcfg-bond0DEVICE=bond0BOOTPROTO=noneIPADDR=10.200.100.90NETMASK=255.255.255.0ONBOOT=yesNM_CONTROLLED=noUSERCTL=noBONDING_OPTS="mode=1 miimon=200"4、SLAVE⽹卡的配置⽂件两种⼦⽹卡的配置⽂件如下[root@rhel6.6 network-scripts]# cat ifcfg-eth2DEVICE=eth2#HWADDR=14:58:D0:5A:0F:76NM_CONTROLLED=no#UUID=3b718bed-e8d4-4b64-afdb-455c8c3ccf91ONBOOT=yes#NM_CONTROLLED=yesBOOTPROTO=noneMASTER=bond0SLAVE=yesUSERCTL=no[root@rhel6.6 network-scripts]# cat ifcfg-eth3DEVICE=eth3#HWADDR=14:58:D0:5A:0F:77NM_CONTROLLED=no#UUID=988835c2-8bfa-4788-9e8d-e898f68458f0ONBOOT=yes#NM_CONTROLLED=yesBOOTPROTO=noneMASTER=bond0SLAVE=yesUSERCTL=no5、bonding信息查看重启⽹络服务器后bonding⽣效[root@rhel6.6 network-scripts]# ip a4: eth2: <BROADCAST,MULTICAST,SLAVE,UP,LOWER_UP> mtu 1500 qdisc mq master bond0 state UP qlen 1000link/ether c4:34:6b:ac:5c:9e brd ff:ff:ff:ff:ff:ff5: eth3: <BROADCAST,MULTICAST,SLAVE,UP,LOWER_UP> mtu 1500 qdisc mq master bond0 state UP qlen 1000link/infiniband a0:00:03:00:fe:80:00:00:00:00:00:00:00:02:c9:03:00:0a:6f:ba brd 00:ff:ff:ff:ff:12:40:1b:ff:ff:00:00:00:00:00:00:ff:ff:ff:ff10: bond0: <BROADCAST,MULTICAST,MASTER,UP,LOWER_UP> mtu 1500 qdisc noqueue state UPlink/ether c4:34:6b:ac:5c:9e brd ff:ff:ff:ff:ff:ffinet 10.200.100.90/24 brd 10.212.225.255 scope global bond0inet6 fe80::c634:6bff:feac:5c9e/64 scope linkvalid_lft forever preferred_lft forever[root@rhel6.6 network-scripts]# cat /proc/net/bonding/bond0Ethernet Channel Bonding Driver: v3.6.0 (September 26, 2009)Bonding Mode: fault-tolerance (active-backup) # bond0接⼝采⽤mode1Primary Slave: NoneCurrently Active Slave: eth2MII Status: upMII Polling Interval (ms): 200Up Delay (ms): 0Down Delay (ms): 0Slave Interface: eth2MII Status: upSpeed: 1000 MbpsDuplex: fullLink Failure Count: 0Permanent HW addr: c4:34:6b:ac:5c:9eSlave queue ID: 0Slave Interface: eth3MII Status: upSpeed: 1000 MbpsDuplex: fullLink Failure Count: 0Permanent HW addr: c4:34:6b:ac:5c:9fSlave queue ID: 0进⾏⾼可⽤测试,拔掉其中的⼀条⽹线看丢包和延时情况, 然后在插回⽹线(模拟故障恢复),再看丢包和延时的情况.三、RedHat7配置bonding系统: Red Hat Enterprise Linux Server release 7.6 (Maipo)⽹卡: eno3、eno4bonding:bond0负载模式: mode1(active-backup)服务器上两张物理⽹卡eno3和eno4, 通过绑定成⼀个逻辑⽹卡bond0,bonding模式选择mode1注: ip地址配置在bond0上, 物理⽹卡不需要配置ip地址.1、关闭和停⽌NetworkManager服务RedHat7默认安装了NetworkManager,在配置前先关掉NetworkManager服务,否则可能会对bonding或造成问题。
linux双网卡绑定
一、L inux bonding研究及实现Linux Bonding本文介绍Linux(具体发行版本是CentOS5.6)下的双卡绑定的原理及实现。
Linux双网卡绑定实现是使用两块网卡虚拟成为一块网卡设备,这简单来说,就是两块网卡具有相同的IP地址而并行链接聚合成一个逻辑链路工作。
这项技术在Sun和Cisco中分别被称为Trunking和Etherchannel技术,在Linux的2.4.x及其以后的内核则称为Bonding技术。
bonding的前提条件:网卡应该具备自己独立的BIOS芯片,并且各网卡芯片组型号相同。
同一台服务器上的网卡毫无疑问是是符合这个条件的。
Bonding原理bonding的原理:在正常情况下,网卡只接收目的硬件地址(MAC Address)是自身MAC的以太网帧,过滤别的数据帧,以减轻驱动程序的负担;但是网卡也支持另外一种被称为混杂promisc的模式,可以接收网络上所有的帧,bonding就运行在这种模式下,而且修改了驱动程序中的mac地址,将两块网卡的MAC地址改成相同,可以接收特定MAC的数据帧。
然后把相应的数据帧传送给bond驱动程序处理。
为方便理解bonding的配置及实现,顺便阐述一下Linux的网络接口及其配置文件。
在Linux 中,所有的网络通讯都发生在软件接口与物理网络设备之间。
与网络接口配置相关的文件,以及控制网络接口状态的脚本文件,全都位于/etc/sysconfig/netwrok-scripts/ 目录下。
网络接口配置文件用于控制系统中的软件网络接口,并通过这些接口实现对网络设备的控制。
当系统启动时,系统通过这些接口配置文件决定启动哪些接口,以及如何对这些接口进行配置。
接口配置文件的名称通常类似于ifcfg-<name>,其中<name> 与配置文件所控制的设备的名称相关。
在所有的网络接口中,最常用的就是以太网接口ifcfg-eth0,它是系统中第一块网卡的配置文件。
Linux系统配置双网卡绑定bond0
Linux系统配置双⽹卡绑定bond01、bonding简述双⽹卡配置设置虚拟为⼀个⽹卡实现⽹卡的冗余,其中⼀个⽹卡坏掉后⽹络通信仍可正常使⽤,实现⽹卡层⾯的负载均衡和⾼可⽤性。
现在⼀般的企业都会使⽤双⽹卡接⼊,这样既能添加⽹络带宽,同时⼜能做相应的冗余,可以说是好处多多。
⽽⼀般企业都会使⽤linux操作系统下⾃带的⽹卡绑定模式,当然现在⽹卡产商也会出⼀些针对windows操作系统⽹卡管理软件来做⽹卡绑定(windows操作系统没有⽹卡绑定功能需要第三⽅⽀持)。
1.1 bonding原理⽹卡⼯作在混杂(promisc)模式,接收到达⽹卡的所有数据包,tcpdump⼯作⽤的也是混杂模式(promisc),将两块⽹卡的MAC地址修改为相同接收特定MAC的数据帧,然后把相应的数据帧传送给bond驱动程序进⾏处理。
1.2 Bonding模式(bonding mode)轮询策略(round robin),mode=0,按照设备顺序依次传输数据包,提供负载均衡和容错能⼒主备策略(active-backup),mode=1,只有主⽹卡处于⼯作状态,备⽹卡处于备⽤状态,主⽹卡坏掉后备⽹卡开始⼯作,提供容错能⼒异或策略(load balancing (xor)),mode=2,根据源MAC地址和⽬的MAC地址进⾏异或计算的结果来选择传输设备,提供负载均衡和容错能⼒⼴播策略(fault-tolerance (broadcast)),mode=3,将所有数据包传输给所有接⼝通过全部设备来传输所有数据,⼀个报⽂会复制两份通过bond下的两个⽹卡分别发送出去,提供⾼容错能⼒动态链接聚合(lacp),mode=4,按照802.3ad协议的聚合⾃动配置来共享相同的传输速度,⽹卡带宽最⾼可以翻倍,链路聚合控制协议(LACP)⾃动通知交换机聚合哪些端⼝,需要交换机⽀持 802.3ad协议,提供容错能⼒输出负载均衡模式(transmit load balancing),mode=5,输出负载均衡模式,只有输出实现负载均衡,输⼊数据时则只选定其中⼀块⽹卡接收,需要⽹卡和驱动⽀持ethtool命令输⼊/输出负载均衡模式(adaptive load balancing),mode=6,输⼊和输出都实现负载均衡,需要⽹卡和驱动⽀持ethtool命令2、⽹卡配置⽂件的配置2.1 配置环境 环境:系统CentOS 6.7 + 虚拟机 VMware 12 ⾄少两块物理⽹卡(VMware上添加eth0,eth1) 2.2 需要添加或修改的配置⽂件有5个(mode=1) 这5个配置⽂件是: /etc/sysconfig/network-scripts/ifcfg-eth{0,1} /etc/sysconfig/network-scripts/ifcfg-bond0 /etc/modprobe.d/dist.conf /etc/rc.local2.2.1 /etc/sysconfig/network-scripts/ifcfg-{eth0,eth1,bonding0}修改或添加提⽰:先备份好eth0和eth1,再修改这⼏个⽂件以下是修改好的三个⽹卡配置⽂件的参数[root@ant network-scripts]# vimdiff ifcfg-eth0 ifcfg-eth1 ifcfg-bond02.2.2 修改/etc/modprobe.d/dist.conf⽂件在此⽂件中添加以下内容:alias bond0 bonding,表⽰系统在启动时加载bonding模块,对外虚拟⽹络接⼝设备为 bond0miimon=100,表⽰系统每100ms监测⼀次链路连接状态,如果有⼀条线路不通就转⼊另⼀条线mode=1,表⽰绑定模式为1primary=eth0,系统⾸先eth0作为bond0接⼝与外界信息的传输接⼝2.2.3 修改配置⽂件/etc/rc.local在此⽂件中添加以下内容:modprobe bonding miimon=100 mode=12.2.4 重启⽹络(service network restart),并查看三个接⼝的mac地址使⽤ifconfig命令显⽰,bond0,eth1,eth2物理地址相同,提⽰三个⽹卡均通过⼀个ip主机端⼝与外界通信但是,我们可以看到,在mode=1的情况下,当前bond0采⽤eth0通信,实际的物理⽹卡地址见下图:3、验证⽹络的连通性没有丢包,⽹络连通性可。
麒麟系统双网卡绑定配置
麒麟操作系统技术总结一、网卡绑定当系统中有多个网卡需要进行设置时,建议将网卡的MAC地址与ethX 文件种的HWADDR一一对应,否则系统重启后网卡的eth号很可能会发生改变,在设置了网卡绑定的生成系统中,这是非常危险的。
网卡绑定配置(如将网卡eth1和eth3绑定为bond0的操作步骤):(1)使用service NetworkManage stop命令关闭NetworkManage服务,使用chkconfig NetworkManage off命令使NetworkManage服务在系统开机时不自动启动;(2)修改被绑定网卡eth1的配置。
打开终端,使用cd /etc/sysconfig/network-scripts命令进入network-scripts目录,使用gedit ifcfg-eth1命令打开ifcfg-eth1文件,修改以下内容,修改完成后保存并关闭ifcfg-eth1文件。
DEVICE=eth1BOOTPROTO=noneHWADDR=”: ::::”ONBOOT=yesTYPE=EthernetUSERCTL=noIPV6INIT=noPEERDNS=yesSLA VE=yesMASTER=bond0备注:DEVICE=<name>:<name>表示物理设备的名称,对于动态寻址的PPP设备则是指它的逻辑名称。
BOOTPROTO=<protocol><protocol>的值有以下几种:none——不自定启用协议bootp——使用BOOTP协议dhcp——使用DHCP协议HWADDR:网卡的MAC地址ONBOOT=<yes | no>:yes表示系统启动时激活设备;no表示系统启动时不激活设备USERCTL=<yes | no>:yes表示允许非root用户控制这个设备;no表示不允许非root用户控制这个设备;PEERDNS=<yes | no>:yes表示使用DNS选项的值代替/etc/resolv.conf中的配置。
LINUX系统下双网卡双网关设置(含五篇)
LINUX系统下双网卡双网关设置(含五篇)第一篇:LINUX系统下双网卡双网关设置由于电信和网通之间互联互通的问题,很多人选择双线路机房,所谓双线路机房就是拥有两条出口,一条电信一条网通。
最近在一个双线路机房测试一台服务器,打算作为论坛的数据库服务器使用,服务器操作系统为Linux。
计划配置为双IP,双域名,使得浏览者通过电信和网通两条线路都能正常访问服务器,而且各走各的,互不影响。
在配置网络的时候遇到了问题,由于Linux默认只有一个网关,在网络上查询了很久,找到一个解决方案,因此整理了一下。
感谢原文作者jac003ke。
服务器操作系统RedHat linux 9,设置两张路由表1.vi /etc/iproute2/rt_tables,增加网通和电信两个路由表251 tel电信路由表252 cnc 网通路由表2.给网卡绑定两个地址用于电信和网通两个线路ip addr add 192.168.0.2/24 dev eth0ip addr add 10.0.0.2/24 dev eth13、分别设置电信和网通的路由表电信路由表:#确保找到本地子网ip route add 192.168.0..0/24 via 192.168.0.2 dev eth0 table tel#内部回环网络ip route add 127.0.0.0/8 dev lo table tel#192.168.0.1为电信网络默认网关地址ip route add default via 192.168.0.1 dev eth0 table tel网通线路路由表:#确保找到本地子网ip route add 10.0.0.0/24 via 10.0.0.2 dev eth1 table cnc#内部回环网络ip route add 127.0.0.0/8 dev lo table cnc#10.0.0.1是网通的默认网关ip route add default via 10.0.0.1 dev eth1 table cnc4、电信和网通各有自己的路由表,制定策略,让192.168.0.2的回应数据包走电信的路由表路由,10.0.0.2的回应数据包走网通的路由表路由ip rule add from 192.168.0.1 table telip rule add from 10.0.0.1 table cnc第二篇:双网卡连接内网外网--默认网关设置问题双网卡连接内网外网--默认网关设置问题2010年06月07日星期一14:36首先你的机器需要有两块网卡,分别接到两台交换机上,internet地址:192.168.1.8,子网掩码:255.255.255.0,网关:192.168.1.1内部网地址:172.23.1.8,子网掩码:255.255.255.0,网关:172.23.1.1如果按正常的设置方法设置每块网卡的ip地址和网关,再cmd下使用 route print查看时会看到Network Destination Netmask Gateway Interface Metric0.0.0.0 0.0.0.0 192.168.1.1 192.168.1.80.0.0.0 0.0.0.0 172.23.1.1 172.23.1.8即指向0.0.0.0的有两个网关,这样就会出现路由冲突,两个网络都不能访问。
虚拟机添加配置双网卡linux
虚拟机添加配置双⽹卡linux版本信息:1.添加⽹卡,两个⽹卡必须为同⼀种⼯作模式,ifconfig查看2,。
使⽤Vim⽂本编辑器来配置⽹卡设备的绑定参数。
可以看到只有⼀张原有的⽹卡信息,先配置这张⽹卡,然后通过复制修改这张⽹卡来添加另⼀张⽹卡,两张⽹卡内容除了名字外其他内容⼀样vim /etc/sysconfig//network-scripts/ifcfg-eno16777736BOOTPROTO="none"NAME="eno16777736"DEVICE="eno16777736"ONBOOT="yes"MASTER=bond0SLAVE=yes[root@linux network-scripts]# cp ifcfg-eno16777736 ifcfg-eno33554992[root@linux network-scripts]# vi ifcfg-eno33554992BOOTPROTO="none"NAME="eno33554992"DEVICE="eno33554992"ONBOOT="yes"MASTER=bond0SLAVE=yes3.创建⼀个⽹卡的合集,将IP地址等信息写⼊bond0[root@linux network-scripts]# vim ifcfg-bond0TYPE=BondBOOTPROTO=staticONBOOT=yesDEVICE=bond0IPADDR=192.168.112.101PREFIX=24GATEWAY=192.168.112.254DNS=10.1.4.141BODNING_MASTER=yesBONDING_OPTS="miimon=100 mode=6"4.重启⽹络systemctl restart netword再次查看可能出现的问题,DNS检测不到,⽆法正常联⽹追加DNSvi /etc/resolv.conf 设置DNS。
LINUX bond效果测试
LINUX bond效果测试一、测试环境:SERVER运行VSFTP服务器软件,PC从FTP服务器下载文件来测试网络的传输性能,文件大小为10485760B(10M)。
服务器安装3块intel 82559网卡。
PC安装1块DTX530网卡。
中间交换机为H3C S2016 线速交换。
因PC机网卡所限,不能测试100M绑定效果,因此只测试了服务器网卡10绑定是的效果,测试中的100M仅做参考。
测试结果中的所有数据的单位俊为kbytes/sec。
二、测试结果:1、未绑定前的测试基线:10dd0M全双工: 11778.8510M全双工: 1177.2510M半双工:1070.302、服务器做双网卡绑定,交换机不做任何设置:Mode=0、10M全双工: 2354.76Mode=0、10M半双工:1757.00Modse=1:1177.383、服务器做3网卡绑定,交换机不做任何设置:Mode=0、10M全双工: 3532.94Mode=0、10M半双工:未测试Mode=1: 1175.274、服务器做双网卡绑定,交换机做e0/1 e0/2链路聚合:Mode=0、10M全双工: 2362.72Mode=0、10M半双工:未测试Mode=1: 1175.255、服务器做3网卡绑定,交换机做e0/1 e0/2 e0/3链路聚合:Mode=0、103M全双工: 3531.75Mode=0、10M半双工:未测试Mode=1: 117744.38三、实验结论及注意事项:1、LINUX机器做BOND=0需交换机的支持,而BOND=6则无需。
2、MODE 0 即为负载均衡模式,1即为冗余备份模式。
3、在测试中建议将交换机端口和网卡的工作速率以及工作模式强制为一致,在测试中发现82559网卡不能正确的和H3C S2016交换机协商工作模式,导致速度巨慢,强制速率及工作模式后排除。
(LINUX用mii-tool -F 来强制,ethtool发现不能使用)。
Linux双网卡路由设置
为了Linux双网卡路由设置如题。
为了Linux可以上网,加了网关。
如下:1。
所修改得关键文件:/etc/sysconfig/hwconf 检查网卡是否被检测到。
/etc/modules.conf 检查每个网卡分配得别名。
/etc/sysconfig/network-stripts/ifcfg-eth0 配置网卡一/etc/sysconfig/network-stripts/ifcfg-eth1 配置网卡二/etc/sysconfig/networking/* 有部分关于主机名称等得配置文件。
2。
使用如下命令可以让配置生效:/etc/init.d/network restart3。
静态路由添加方法:(1)将添加静态路由的命令加入到rc.local中/etc/rc.d/rc.local格式如下(与route命令格式一致):route add -net 219.223.216.0 netmask 255.255.255.0 gw219.223.215.129 dev eth1加后,需重启系统后生效。
注:另有说法可将静态路由加入/etc/sysconfig/static-routes文件中(此文件中加入试用无效)(2)将添加静态路由的命令加入到/etc/sysconfig/network-scripts/route-eth1文件中格式如下:219.223.214.0/24 via 219.223.215.129 dev eth1219.223.215.0/24 via 219.223.215.129加后,需service network restart后生效以上两种方式加入路由重启后不丢失(3)临时添加路由命令(命令行加入):route add -net 192.168.0.0 netmask 255.255.255.0 gw 192.168.0.1 eth0 route add default gw 192.168.0.1 eth0netstat -rn 查看路由表。
linux系统主机双网卡环回测试
Linux下双网卡主机的回环测试一、设计任务及要求路由器测试早期采用“回绕测试法”(Loop-back Test Method,LTM),即测试器将测试数据的目的IP地址指定为测试系统(SUT)自身的IP地址,测试器发出的测试数据将被路由器的输入单元直接返回测试系统。
单台主机多网卡的测试系统也可以进行回绕测试,在RFC2544文档中有相关描述,本实验的任务就是在linux下的双网卡主机进行回绕测试,也可叫做环回测试,待测设备可以是路由器或者交换机,主机的双网卡分别和交换机或路由器的两个接口相连,数据由一个网卡出来经过待测设备之后再从另外一个网卡回来,这就是整个实验测试的任务。
实验要求:网卡之间能够进行ICMP报文和TCP或UDP报文的传输。
二、实验的解决思路Linux的内核对从一个网络地址发往另一个网络地址的数据包,如果这两个网络地址同属一个host,则这个数据包会直接在内部转发,根本不会放到网络设备上,本实验的解决思路是在主机上制定两个不属于任何主机的ip,再将网卡的IP地址进行绑定,增加两条相关的路由,用防火墙进行ip 地址转换。
三、实验操作实验场景如图所示:图1:双网卡主机测试环境如图所示其ip地址分别为192.168.1.108(有线网卡),另一个的IP地址为192.168.1.101(无线网卡),有线网卡通过一台路由器进行连接,路由器的网关是192.168.1.1,有线网卡和无线网卡通过路由器的Dhcp自动获得分配的IP,可以连接外网。
其配置如下图所示:图2:linux下主机的网络配置图在主机上增加两条路由,route add 192.168.1.11 dev eth0;route add 192.168.1.22 dev wlan0;上面的两个ip地址是不属于任何主机,目的地址为192.168.1.11的数据包由eth0转发,目的地址为192.168.1.22的数据包由wlan0转发。
Linux-双网卡绑定bond详解
Linux-双⽹卡绑定bond详解1、什么是bond⽹卡bond是通过多张物理⽹卡绑定为⼀个逻辑⽹卡,实现本地⽹卡的冗余,带宽扩容和负载均衡,在⽣产场景中是⼀种常⽤的技术。
Kernels 2.4.12及以后的版本均供bonding模块,以前的版本可以通过patch实现。
可以通过以下命令确定内核是否⽀持 bonding:[root@lixin network-scripts] #cat /boot/config-2.6.32-573.el6.x86_64 |grep -i bondingCONFIG_BONDING=m[root@lixin network-scripts] #2、bond的模式bond的模式常⽤的有两种:mode=0(balance-rr)表⽰负载分担round-robin,并且是轮询的⽅式⽐如第⼀个包⾛eth0,第⼆个包⾛eth1,直到数据包发送完毕。
优点:流量提⾼⼀倍缺点:需要接⼊交换机做端⼝聚合,否则可能⽆法使⽤mode=1(active-backup)表⽰主备模式,即同时只有1块⽹卡在⼯作。
优点:冗余性⾼缺点:链路利⽤率低,两块⽹卡只有1块在⼯作bond其他模式:mode=2(balance-xor)(平衡策略)表⽰XOR Hash负载分担,和交换机的聚合强制不协商⽅式配合。
(需要xmit_hash_policy,需要交换机配置port channel)特点:基于指定的传输HASH策略传输数据包。
缺省的策略是:(源MAC地址 XOR ⽬标MAC地址) % slave数量。
其他的传输策略可以通过xmit_hash_policy选项指定,此模式提供负载平衡和容错能⼒mode=3(broadcast)(⼴播策略)表⽰所有包从所有⽹络接⼝发出,这个不均衡,只有冗余机制,但过于浪费资源。
此模式适⽤于⾦融⾏业,因为他们需要⾼可靠性的⽹络,不允许出现任何问题。
需要和交换机的聚合强制不协商⽅式配合。
linux双网卡绑定
TYPE=Ethernet
这里要主意,不要指定单个网卡的IP 地址、子网掩码或网卡 ID。将上述信息指定到虚拟适配器(bonding)中即可。
[root@rhas-13 network-scripts]# cat ifcfg-eth0
DEVICE=eth0
ONBOOT=yes
在mode=0 负载均衡工作模式,他能提供两倍的带宽,下我们来看一下网卡的配置信息
[root@rhas-13 root]# ifconfig
bond0 Link encap:Ethernet HWaddr 00:0E:7F:25:D9:8B
inet addr:172.31.0.13 Bcast:172.31.3.255 Mask:255.255.252.0
alias bond0 bonding
options bond0 miimon=100 mode=0
6. 说明
如果是主备冗余模式,需将
options bond0 miimon=100 mode=0中
mode 改为1
其它改为
options bond0 miimon=100 mode=1 primary=eth0
UP BROADCAST RUNNING SLAVE MULTICAST MTU:1500 Metric:1
RX packets:9572 errors:0 dropped:0 overruns:0 frame:0
TX packets:480 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:753739 (736.0 Kb) TX bytes:0 (0.0 b)
linux下双网卡同一个IP
由于需要一台机器有两个网卡,开始时设置在同一个网段的IP,发现数据总是从一个网卡发出,而另一个网卡上没有数据流动。
网上找了下,发现相同的问题不少:一、关于双网卡设置同一网段IP然后连接交换机的时候出现的奇怪现象。
当时没有怎么思考、以为是生成树的缘故,不过后来一想不太对。
初步做了一下实验:服务器为RHEL5 双网卡,eth0为234,eth1为233,我本地客户机为172。
RHEL: ifconfig如下:[root@server1 ~]# ifconfigeth0 Link encap:Ethernet HWaddr 00:0C:29:A5:D5:A3inet addr:60.232.83.233 Bcast:60.232.83.255 Mask:255.255.255.128 略。
eth1 Link encap:Ethernet HWaddr 00:0C:29:A5:D5:ADinet addr:60.232.83.234 Bcast:60.232.83.255 Mask:255.255.255.128 略。
lo Link encap:Local Loopbackinet addr:127.0.0.1 Mask:255.0.0.0略。
在客户机XP上ping两个地址,都是通的。
C:\ >ping 60.232.83.233Pinging 60.232.83.233 with 32 bytes of data:Reply from 60.232.83.233: bytes=32 time=9ms TTL=64Reply from 60.232.83.233: bytes=32 time<1ms TTL=64C:\ >ping 60.232.83.234Pinging 60.232.83.234 with 32 bytes of data:Reply from 60.232.83.234: bytes=32 time<1ms TTL=64Reply from 60.232.83.234: bytes=32 time<1ms TTL=64此时用arp –a在本地查看C:\ >arp -aInterface: 60.232.83.172 --- 0x20005Internet Address Physical Address Type60.232.83.129 00-04-96-1a-ca-60 dynamic60.232.83.233 00-0c-29-a5-d5-a3 dynamic60.232.83.234 00-0c-29-a5-d5-a3 dynamic发现两个网卡的MAC地址一样,也就是eth0的mac地址。
麒麟系统双网卡绑定配置
麒麟操作系统技术总结一、网卡绑定当系统中有多个网卡需要进行设置时,建议将网卡的MAC地址与ethX 文件种的HWADDR一一对应,否则系统重启后网卡的eth号很可能会发生改变,在设置了网卡绑定的生成系统中,这是非常危险的。
网卡绑定配置(如将网卡eth1和eth3绑定为bond0的操作步骤):(1)使用service NetworkManage stop命令关闭NetworkManage服务,使用chkconfig NetworkManage off命令使NetworkManage服务在系统开机时不自动启动;(2)修改被绑定网卡eth1的配置。
打开终端,使用cd /etc/sysconfig/network-scripts命令进入network-scripts目录,使用gedit ifcfg-eth1命令打开ifcfg-eth1文件,修改以下内容,修改完成后保存并关闭ifcfg-eth1文件。
DEVICE=eth1BOOTPROTO=noneHWADDR=”: ::::”ONBOOT=yesTYPE=EthernetUSERCTL=noIPV6INIT=noPEERDNS=yesSLA VE=yesMASTER=bond0备注:DEVICE=<name>:<name>表示物理设备的名称,对于动态寻址的PPP设备则是指它的逻辑名称。
BOOTPROTO=<protocol><protocol>的值有以下几种:none——不自定启用协议bootp——使用BOOTP协议dhcp——使用DHCP协议HWADDR:网卡的MAC地址ONBOOT=<yes | no>:yes表示系统启动时激活设备;no表示系统启动时不激活设备USERCTL=<yes | no>:yes表示允许非root用户控制这个设备;no表示不允许非root用户控制这个设备;PEERDNS=<yes | no>:yes表示使用DNS选项的值代替/etc/resolv.conf中的配置。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
shwang 西安 linux+c E-mail:fenghuaster@ QQ:271904106
内容概要
什么是双网卡绑定 检查kernel是否支持绑定 检查 是否支持绑定 绑定配置 绑定后的验证 测试带宽
什么是双网卡绑定
双网卡绑定实现就是使用两块网卡虚拟成为一块网卡, 双网卡绑定实现就是使用两块网卡虚拟成为一块网卡, 这个聚合起来的设备看起来是一个单独的以太网接口设备。 这个聚合起来的设备看起来是一个单独的以太网接口设备。 通俗讲就是两块网卡具有相同的IP IP地址而并行链接聚合成 通俗讲就是两块网卡具有相同的IP地址而并行链接聚合成 一个逻辑链路工作。 一个逻辑链路工作。 Linux下双网卡绑定技术实现负载均衡和失效保护。 Linux下双网卡绑定技术实现负载均衡和失效保护。 下双网卡绑定技术实现负载均衡和失效保护
检查kernel是否支持绑定 是否支持绑定 检查
cat /boot/config-2.6.18-*** |grep –i bongding 如果有: 如果有: CONFIG_BONDING=m 表示支持。 表示支持。 否则需要编译内核使她支持bonding后,才可以做双网卡绑定 否则需要编译内核使她支持 后
配置绑定
1.新建/etc/sysconfig/network-scripts/ifcfg-bond0文件。 1.新建/etc/sysconfig/network-scripts/ifcfg-bond0文件。 新建/etc/sysconfig/network 文件 DEVICE=bond0 ONBOOT=yes BOOTPROTO=static PADDR=192.168.9.202 NETMASK=255.255.255.0 GATEWAY=192.168.9.1 USERCTL=no
eth1
Link encap:Ethernet HWaddr 00:0B:2F:39:3D:09 UP BROADCAST RUNNING SLAVE MULTICAST MTU:1500 Metric:1 RX packets:7069422 errors:125 dropped:2411 overruns:14 frame:89 TX packets:8033049 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:968616377 (923.7 MiB) TX bytes:4249508543 (3.9 GiB) Interrupt:233 Base address:0xe000 (解释:486.3MiB –每超过4G,则记录剩余值。)
测试带宽
1.准备测试场景 1.准备测试场景 双网卡绑定配置机器 B, 单网卡普通机器 A, 单网卡普通机器 C, 单网卡普通机器 D, 链接方式: A---------、 | D-------交换机----B | C---------/
测试带宽
2.使用netperf工具测试带宽,同时用ifconfig查询网络接口 2.使用netperf工具测试带宽,同时用ifconfig查询网络接口 使用netperf工具测试带宽 ifconfig (1)A 做netserver ,B 做netperf 测试。 B: Rx(接受)16.4M ,Tx(发送)0.7G。 带宽:11431.44KBytes/sec(91.45Mb/sec). (2)C 做netserver ,B 做netperf 测试。 B: Rx(接受)16.5M ,Tx(发送)0.7G。 带宽:11131.50KBytes/sec(89.05Mb/sec). (3)D 做netserver ,B 做netperf 测试。 B: Rx(接受)16.5M ,Tx(发送)0.7G。 带宽:11131.50KBytes/sec(89.05Mb/sec).
配置绑定
4.更改/etc/modprobe.conf,在该文件末增加两行: 4.更改/etc/modprobe.conf,在该文件末增加两行: 更改/etc/modprobe.conf,在该文件末增加两行 alias bond0 bonding options bond0 miimon=100 mode=6 是主备模式, 是负载均衡模式) (mode =1 是主备模式,mode=6 是负载均衡模式) 5.更改/etc/rc.d/rc.local,在该文件末增加两行: 5.更改/etc/rc.d/rc.local,在该文件末增加两行: 更改/etc/rc.d/rc.local ifenslave bond0 eth0 eth1 route add default gw x.x.x.x natmask x.x.x.x bond0 (如果系统没有ifenslave工具,需要事先自行安装) 如果系统没有ifenslave工具,需要事先自行安装) ifenslave工具
测试带宽
(4)A 做做netserver ,C 做netserver ,B 做netperf 同时链接 A、C做测试。 B: Rx(接受)30.4M ,Tx(发送)1.3G。 A-B间带宽:11386.23KBytes/sec(91.09Mb/sec). C-B间带宽:10318.31KBytes/sec(82.54Mb/sec). B带宽总和:91.09+82.54 = 173.63(Mb/sec). (5) A 做做netserver ,C 做netserver ,D 做netserver ,B 做netperf 同时链接 A、C、D做测试。 B: Rx(接受)32.7M ,Tx(发送)1.4G。 A-B间带宽:3384.98KBytes/sec(27.08Mb/sec). C-B间带宽:9894.91KBytes/sec(79.16Mb/sec). D-B间带宽:9158.55KBytes/sec(73.27Mb/sec). B带宽总和:27.08+79.16+73.27 = 179.50(Mb/sec).
绑定后的验证
1.使用ifconfig查询网络配置 1.使用ifconfig查询网络配置 使用ifconfig
bond0 Link encap:Ethernet HWaddr 00:0B:2F:39:3D:09 inet addr:192.168.9.202 Bcast:192.168.9.255 Mask:255.255.255.0 inet6 addr: fe80::20b:2fff:fe39:3d09/64 Scope:Link UP BROADCAST RUNNING MASTER MULTICAST MTU:1500 Metric:1 RX packets:8517405 errors:125 dropped:2411 overruns:14 frame:89 TX packets:11517283 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:0 RX bytes:1075683696 (1.0 GiB) TX bytes:510004696 (486.3 MiB) eth0 Link encap:Ethernet HWaddr C8:3A:35:D0:E8:20 UP BROADCAST SLAVE MULTICAST MTU:1500 Metric:1 RX packets:1447986 errors:0 dropped:0 overruns:0 frame:0 TX packets:3484243 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:107067517 (102.1 MiB) TX bytes:555465611 (529.7 MiB) Interrupt:225 Base address:0x6000
测试带宽
测试结论: 测试结论: 双网卡绑定的负载均衡模式,确实可以扩展带宽。 双网卡ຫໍສະໝຸດ 定的负载均衡模式,确实可以扩展带宽。
配置绑定
2.更改/etc/sysconfig/network-scripts/ifcfg2.更改/etc/sysconfig/network-scripts/ifcfg-eth0 更改/etc/sysconfig/network DEVICE=eth0 ONBOOT=yes BOOTPROTO=none MASTER=bond0 USERCTL=no 3.更改/etc/sysconfig/network-scripts/ifcfg更改/etc/sysconfig/network 3.更改/etc/sysconfig/network-scripts/ifcfg-eth1 DEVICE=eth1 ONBOOT=yes BOOTPROTO=none MASTER=bond0 USERCTL=no