文档库 最新最全的文档下载
当前位置:文档库 › Linux网卡配置问题攻略

Linux网卡配置问题攻略

Linux网卡配置问题攻略
Linux网卡配置问题攻略

linux 网卡攻略

Linux系统下的网卡不像Windows那么支持完善,有时需要自己动手,本文总结了相关的驱动安装、命令行工具和测试网卡的负载等内容。

网卡驱动

https://www.wendangku.net/doc/459835203.html,/

安装包中README有详细说明,主要就是如下几个命令

Make install

modprobe e1000e 或者insmod e1000

rmmod e1000e; modprobe e1000e

网卡配置文件

对于网卡信息的配置通常包括:配置IP地址、子网掩码和网关。网卡信息保存在网卡配置文件中。网卡配置文件位于

/etc/sysconfig/network-scripts目录下。一块网卡对应一个网卡配置文件,配置文件命名规则:

ifcfg-网卡类型以及网卡的序列号

由于以太网卡类型是eth,网卡的序列号从0开始,所以第一块网卡的配置文件名称为ifcfg-eth0,第二块网卡为ifcfg-eth1,以此类推。

网卡配置文件中常用配置文件名的还以如下:

DEVICE=eth0,定义该网卡的识别名称。

BOOTPROTO=dhcp,启动该网卡的识别名称。

static/none:代表固定的IP地址;bootp/dhcp:通过BOOTP或DHCP协议取得IP地址。

HWADDR=00:02:B3:0B:64:22,该网卡的MAC地址。

ONBOOT=yes,启动network服务时,是否启用该网卡。当RedHat系统启动network服务时,network服务一次读取保存于

/etc/sysconfig/network-scripts/目录下所有网卡的配置文件。如果网卡配置文件的ONBOOT设置为yes,则network服务就会调用ifup命令启动该网卡;如果网卡的配置文件的ONBOOT参数为no,network会跳过启动这个网卡的工作。

TYPE=Ethernet,网卡的类型。

USERCTL=no,是否允许普通用户启动或者停止该网卡。

IPV6INIT=no,是否在该网卡上启动IPV6的功能。

PEERDNS=yes,是否允许网卡在启动时向DHCP服务器查询DNS信息,并自动覆盖/etc/resolv.conf配置文件。

以下配置项用于指定该网卡的静态IP地址,此时BOOTPROTO必须为static或者none。

IPADDR=192.168.1.55,静态方式指定网卡的IP地址。

NETMASK=255.255.255.0,定义该网卡的子网掩码。

MTU=1500,设置网卡的MAC帧最大传输单位大小。

GATEWAY=192.168.1.1,设置网络的默认网关。

DNS1=192.168.128.5,指定主要的DNS服务器地址。

DNS2=192.168.128.6,指定备用的DNS服务器地址。

配置网卡信息

配置网卡信息可以直接修改网卡配置文件中的相关内容,但是这种方法对用户的要求比较高。在RedHat Enterprise Linux5中常用于设置IP地址的三个命令,分别是:system-config-network、setup和ifconfig。其中ifconfig设置IP地址的方法将在常用命令部分中介绍。

(1)system-config-network命令

在命令提示行下输入system-config-network命令将会启动可视化网络配置界面(对于新手这个方式比较简单)

(2)setup设置网卡信息

在命令行下输入setup命令后将会进入系统设置界面,然后选择网卡设置进入网卡设置界面(很多系统都可以使用setup命令设置,运用比较广)

(3)ifconfig网卡常用命令

ifconfig命令的功能比较强大,可以用来查看和设置网卡信息。

a.查看网卡信息

命令语法:ifconfig [参数]

参数说明:

无参数:显示当前活动的网卡

- a:显示系统中所有网卡的配置信息

网卡设备名称:显示指定网卡的配置信息

eg:查看eth0网卡信息:#ifconfig eth0

b.设置IP地址

命令语法:ifconfig 网卡设备名IP地址netmask 子网掩码

(注:ifconfig命令设置的IP地址即时生效,但是重启机器后,IP地址又回复到原IP地址,所以ifconfig命令只能用于设置临时的IP 地址)

eg:ifconfig eth0 192.168.168.156 netmask 255.255.255.0

c.修改MAC地址

命令语法:ifconfig 网卡设备名hw ether MAC地址

(注:修改网卡的MAC地址前要禁用网卡,修改后要启用网卡)

eg:ifconfig eth0 hw ether 00:0C:29:03:F3:76

几个常用的命令

1.ifdown禁用网卡

语法:ifdown 网卡设备名

2.ifup启用网卡

语法:ifup 网卡设备名

3.绑定IP和MAC地址

实现方法:创建/etc/ethers文件,文件内容“ip地址mac地址”,然后执行“arp -f”命令,是配置生效。

eg:将IP地址193.168.168.154与MAC地址00:0C:29:03:F3:75绑定。

#echo "193.168.168.154 00:0C:29:03:F3:75">>/etc/ethers

#arp -f

ethtool---查看网卡以及修改网卡配置工具

ethtool 是用于查询及设置网卡参数的命令。

使用概要:

ethtool ethx //查询ethx网口基本设置,其中x 是对应网卡的编号,如eth0、eth1等等

ethtool –h //显示ethtool的命令帮助(help)

ethtool –i ethX //查询ethX网口的相关信息

ethtool –d ethX //查询ethX网口注册性信息

ethtool –r ethX //重置ethX网口到自适应模式

ethtool –S ethX //查询ethX网口收发包统计

ethtool –s ethX [speed 10|100|1000] [duplex half|full] [autoneg on|off] //设置网口速率10/100/1000M、设置网口半/全双工、设置网口是否自协商

[root@linux /]# ethtool eth1 //查看网卡1信息

[root@linux /]# ethtool -i eth1 //查看网卡型号等

[root@linux /]# ethtool -S eth1 //查看数据率等

[root@linux /]# ethtool -s eth1 autoneg off speed 100 duplex full//强制修改网卡速率,配置成百兆网卡,autoneg off是一定要用,如果是on的话就是自适应配置,自动根据机器等进行配置。

[root@linux /]# which ethtool //查询ethtool 存放的路径

/sbin/ethtool

[root@linux /]# rpm -qf /sbin/ethtool //查询ethtool 的版本信息

ethtool-1.6-5

将ethtool 设置永久保存在网络设备的方法

解决方法一:

ethtool 设置可通过/etc/sysconfig/network-scripts/ifcfg-ethX 文件保存,从而在设备下次启动时激活选项。

例如:ethtool -s eth0 speed 100 duplex full autoneg off

此指令将eth0设备设置为全双工自适应,速度为100Mbs。若要eth0启动时设置这些参数, 修改文件

/etc/sysconfig/network-scripts/ifcfg-eth0 ,添加如下一行:

ETHTOOL_OPTS="speed 100 duplex full autoneg off"

解决方法二:

将ethtool设置写入/etc/rc.d/rc.local之中。

mii-tool 的用法

mii-tool 在更改网络设备通信协商方式的方法比较简单,用-v 参数来查看网络接口的状态;看下面的例子;

mii-tool 更改网络接口协商的方法;

[ ~]# mii-tool --help

usage: mii-tool [-VvRrwl] [-A media,... | -F media] [interface ...]

-V, --version display version information

-v, --verbose more verbose output 注:显示网络接口的信息;

-R, --reset reset MII to poweron state 注:重设MII到开启状态;

-r, --restart restart autonegotiation 注:重启自动协商模式;

-w, --watch monitor for link status changes 注:查看网络接口连接的状态变化;

-l, --log with -w, write events to syslog 注:写入事件到系统日志;

-A, --advertise=media,... advertise only specified media 注:指令特定的网络接口;

-F, --force=media force specified media technology 注:更改网络接口协商方式;

media: 100baseT4, 100baseTx-FD, 100baseTx-HD, 10baseT-FD, 10baseT-HD,

(to advertise both HD and FD) 100baseTx, 10baseT

更改网络接口的协商方式,我们要用到-F选项,后面可以接100baseT4, 100baseTx-FD, 100baseTx-HD, 10baseT-FD, 10baseT-HD等参数;

如果我们想把网络接口eth0改为1000Mb/s全双工的模式应该怎么办呢?

[root@localhost ~]# mii-tool -F 100baseTx-FD

[root@localhost ~]#mii-tool -v eth0

Ip

ip与ethtool的功能与传统的ifconfig类似,而且功能更强。

ip下载:apt-get install iproute

# ip addr

1: lo: mtu 16436 qdisc noqueue

link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00

inet 127.0.0.1/8 scope host lo

inet6 ::1/128 scope host

valid_lft forever preferred_lft forever

2: eth0: mtu 1500 qdisc pfifo_fast qlen 1000

link/ether 00:e0:22:02:25:46 brd ff:ff:ff:ff:ff:ff

inet 192.168.1.2/24 brd 192.168.1.255 scope global eth0

inet6 fe80::2e0:22ff:fe02:2546/64 scope link

valid_lft forever preferred_lft forever

# ip link

1: lo: mtu 16436 qdisc noqueue

link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00

2: eth0: mtu 1500 qdisc pfifo_fast qlen 1000

link/ether 00:e0:22:02:25:46 brd ff:ff:ff:ff:ff:ff

# ip -s link ls dev eth0

2: eth0: mtu 1500 qdisc pfifo_fast qlen 1000

link/ether 00:e0:22:02:25:46 brd ff:ff:ff:ff:ff:ff

RX: bytes packets errors dropped overrun mcast

287018517 364010 0 0 0 0

TX: bytes packets errors dropped carrier collsns

272957602 395576 0 0 0 0

网卡的负载测试工具

如果需要对网卡进行详细的负载等指标检测,可以使用如下的工具

Tcpdump

https://www.wendangku.net/doc/459835203.html,/tcpdump_man.html

Tcprelay

https://www.wendangku.net/doc/459835203.html,/

https://www.wendangku.net/doc/459835203.html,/wiki/manual

Tcpreplay 是UNIX 系统下用来编辑和重放网络流量包的工具集合,这些流量包可以是通过tcpdump 或ethereal 等工具抓取的。tcpreplay 提供了可靠的、可重复的方法来测试不同的网络设备,包括:交换机、路由器、防火墙、入侵检测系统(IDS) 和入侵防御系统(IPS) 。

tcpreplay:常用的发包软件,可以重发tcpdump所捕获的报文。

pktgen:linux内核自带的发包工具。

https://www.wendangku.net/doc/459835203.html,/s/blog_63ac8a6c0100u17d.html

linux双网卡做成bond

l i n u x双网卡做成b o n d 集团企业公司编码:(LL3698-KKI1269-TM2483-LUI12689-ITT289-

双网卡做成b o n d0的方法说明 所谓bond,就是把多个物理网卡绑定成一个逻辑上的网卡 好处:增加带宽接入,还可以实现主备功能,当其中一个网卡挂掉,不会影响网络连接。并且节约IP。 实施案例讲解 我们的测试服务器 双网卡 E 我们需要将这2个网卡做成一个bond0网卡 1.编辑eth1. vi/etc/sysconfig/network-scripts/ifcfg-eth1 修改为 我们去掉了IP,MAC,掩码网关,bootproto设置为none 2.编辑eth2 同样这样更改eth2,如下图所示 3.创建并且编辑bond0网卡 vi/etc/sysconfig/network-scripts/ifcfg-bond0 增加如下参数

可以看到,和我们平时用的eth1网卡配置差不多,只是少了MAC地址。。。 编辑vi/etc/modprobe.conf文件 添加如下参数 编辑好了之后重启网卡,会发现eth1eth2无IP,依然通了外网 至此,我们的bond0已经创建成功 接下来我们需要去编辑启动文件添加一行 vi/etc/rc.local 添加ifenslavebond0eth1eth2 重启服务器,测试是否能成功 多个bond 如果是创建多个bond的时候,我们修改vi/etc/modprobe.conf配置文件的时候依照下图添加,依次增加 Eth2eth3….等修改方式同上。 如果bond的模式(请查看参数讲解)不同,那么修改为 这种情况遇到较少,我们了解就好 参数讲解 Bond有7种模式,我们常用的是 mode=0:平衡负载模式,有自动备援,但需要”Switch”支援及设定。mode=1:自动备援模式,其中一条线若断线,其他线路将会自动备援。mode=6:平衡负载模式,有自动备援,不必”Switch”支援及设定。七种bond模式说明:

Linux双网卡绑定实现就是使用两块网卡虚拟成为一块网卡

Linux双网卡绑定实现就是使用两块网卡虚拟成为一块网卡,这个聚合起来的设备看起来是一个单独的以太网接口设备,通俗点讲就是两块网卡具有相同的IP 地址而并行链接聚合成一个逻辑链路工作。其实这项技术在Sun和Cisco中早已存在,被称为Trunking和Etherchannel技术,在Linux的2.4.x的内核中也采用这这种技术,被称为bonding。bonding技术的最早应用是在集群——beowulf上,为了提高集群节点间的数据传输而设计的。下面我们讨论一下bonding 的原理,什么是bonding需要从网卡的混杂(promisc)模式说起。我们知道,在正常情况下,网卡只接收目的硬件地址(MAC Address)是自身Mac的以太网帧,对于别的数据帧都滤掉,以减轻驱动程序的负担。但是网卡也支持另外一种被称为混杂promisc的模式,可以接收网络上所有的帧,比如说tcpdump,就是运行在这个模式下。bonding也运行在这个模式下,而且修改了驱动程序中的mac地址,将两块网卡的Mac地址改成相同,可以接收特定mac的数据帧。然后把相应的数据帧传送给bond驱动程序处理。 绑定的前提条件:芯片组型号相同,而且网卡应该具备自己独立的BIOS芯片1.创建虚拟网卡 编辑虚拟网络接口配置文件,指定网卡IP vi /etc/sysconfig/ network-scripts/ ifcfg-bond0 [root@rhas5 root]# cp /etc/sysconfig/network-scripts/ifcfg-eth0 ifcfg-bond0 2.编辑虚拟网卡和物理网卡 #vi ifcfg-bond0 将第一行改成DEVICE=bond0 # cat ifcfg-bond0 DEVICE=bond0 BOOTPROTO=static IPADDR=172.31.0.13 NETMASK=255.255.252.0 BROADCAST=172.31.3.254 ONBOOT=yes USERCTL=no TYPE=Ethernet 这里要注意,不要指定单个网卡的IP 地址、子网掩码或网卡ID。将上述信息指定到虚拟适配器(bonding)中即可。 编辑物理网卡eth0,删除多余的内容,只留下如下内容。包括空格和注释。[root@rhas5 network-scripts]# cat ifcfg-eth0 DEVICE=eth0 ONBOOT=yes BOOTPROTO=static SLAVE=yes MASTER=bond0

windows XP及Linux下双网卡配置方案

Windows XP下双网卡配置方案一、软硬件需求 ●硬件: 一台带有双网卡的PC,其中一个连接internet;另一个接局域网hub。 其中节局域网地址为:192.168.0.1/255.255.255.0 ●软件: 操作系统:windows XP 代理软件:CCProxy 二、设置CCProxy: 1、服务器的安装 运行下载后的Ccproxysetup.exe 安装本软件 (注:现在的最新版本为CCProxy-v6.6,推荐下载网站:霏凡) 安装完成后,桌面有一个CCProxy的绿色图标:双击即可启动CCProxy了(如附图)。绿色的网格坐标将会出现,黄色的曲线表示网络数据流量。 2、客户端设置前的准备工作 1)确认客户端与服务器是连通的,能够互相访问。

2)确定代理服务器地址。代理服务器地址就是安装代理服务器的机器的 网络地址。 这个地址,是指服务器在局域网中的本地IP地址。本地IP地址可以从CCProxy的设置对话框中得到。设置对话框中 的本地IP地址一般情况下可以用"自动检测"得到。如果服务器安装了双 网卡,则需要手工选取:取消"自动检测", 从列表中选取。如果不能确认服务器的IP地址,也可以用服务器的机器 名作为代理服务器地址。 3、局域网机器设置: ※对TCP/IP协议的属性进行设置: 方法:右击“网上邻居”,选择“属性”,双击网卡对应的“TCP/IP协议”,选择“DNS”标签。设置如下:选中“启用DNS”;“主机”中填入服务器名称;并在下面的“DNS服务器搜索顺序”中填入服务器的IP地址,本例为“192.168.0.1”,然后单击[填加];单击[确定]结束DNS设置;再次单击[确定],结束对网络属性的设置。这时需要重新启动计算机。 ※重新启动后,设置IE浏览器代理上网 1)流程: IE浏览器->菜单"工具"->"Internet选项"->"连接"->"局域网设置"->选中"使用代理服务器"->"高级"->"代理服务器设置"。取消"对所有协议均使用相同的代理服务器"。 在"HTTP"中填上代理服务器地址,端口为808; 在"Secure"中填上代理服务器地址,端口为808; 在"FTP"中填上代理服务器地址,端口为808; 在"Gopher"中填上代理服务器地址,端口为808; 在"Socks"中填上代理服务器地址,端口为1080。 2)图示: IE菜单“工具”->“Internet 选项”: “代理设置”选择

linux双网卡做成bond0

双网卡做成b o n d0的方法 说明 所谓bond,就是把多个物理网卡绑定成一个逻辑上的网卡 好处:增加带宽接入,还可以实现主备功能,当其中一个网卡挂掉,不会影响网络连接。并且节约IP。 实施案例讲解 我们的测试服务器 双网卡 E 我们需要将这2个网卡做成一个bond0网卡 1.编辑eth1. vi/etc/sysconfig/network-scripts/ifcfg-eth1 修改为 我们去掉了IP,MAC,掩码网关,bootproto设置为none 2.编辑eth2 同样这样更改eth2,如下图所示 3.创建并且编辑bond0网卡 vi/etc/sysconfig/network-scripts/ifcfg-bond0 增加如下参数 可以看到,和我们平时用的eth1网卡配置差不多,只是少了MAC地址。。。 编辑vi/etc/modprobe.conf文件 添加如下参数 编辑好了之后重启网卡,会发现eth1eth2无IP,依然通了外网 至此,我们的bond0已经创建成功 接下来我们需要去编辑启动文件添加一行 vi/etc/rc.local 添加ifenslavebond0eth1eth2 重启服务器,测试是否能成功 多个bond 如果是创建多个bond的时候,我们修改vi/etc/modprobe.conf配置文件的时候依照下图添加,依次增加 Eth2eth3….等修改方式同上。 如果bond的模式(请查看参数讲解)不同,那么修改为 这种情况遇到较少,我们了解就好 参数讲解 Bond有7种模式,我们常用的是 mode=0:平衡负载模式,有自动备援,但需要”Switch”支援及设定。 mode=1:自动备援模式,其中一条线若断线,其他线路将会自动备援。 mode=6:平衡负载模式,有自动备援,不必”Switch”支援及设定。

Linux双网卡搭建NAT服务器

Eth0的IP 地址,GW和DNS 都是自动获取的。当然,如果是手动分配IP 、GW 和DNS 也是没问题的。我的eth0 配置如下: IP: 192.168.79.129/24 GW: 192.168.79.1 DNS:192.168.79.2 Linux 主机的eth1 指向内网,IP 地址为:10.50.10 .1/24 。内网主机的内网主机的IP 地址就是10.50.10.0/24 段的IP ,eth1 的IP 是所有内网主机的网关。这里,我的内网主机设置如下: IP: 10.50.10.46/24 GW: 10.50.10.1 DNS:192.168.79.2 这里,所有内网主机的网关都设置为eth1 的IP 地址,而DNS 设置为eth1 所在的Linux 系统主机的DNS ,即192.168.79.2 。 (二)启用转发功能 以上配置完成后,Host A应该可以ping通Linux系统主机的eth1的IP,因为他们是通过交换机链接的。但是,Host A应该可以ping不通Linux系统主机的eth0的IP,应为并未开启Linux系统主机的转发功能。 开启Linux的转发功能,执行如下命令: # echo 1 > /proc/sys/net/ipv4/ip_forward 查看系统是否启用了转发功能,可以执行如下命令: # cat /proc/sys/net/ipv4/ip_forward 如果结果为1,代表已启用,0代表未启用。 此时,执行ping 192.168.72.129 以及其网关和DNS都可ping通了。 (三)配置NAT规则 经过第二部分配置后,虽然可以ping相关的IP地址,但是内网主机还是无法上网。问题在于内网主机的IP地址是无法在公网上路由的。因此,需要转换成Linux系统主机可以上网的IP(注:这里我们只说不说是公网IP,是因为Linux系统可以直接上外网的IP同样是内网IP。但是该内网IP(192.168.79.129)已经通过一些机制,实际上同样是NAT的方式,可以访问外网了,因此我们只需将Host A的IP转换成Linux系统eth0接口的IP即可)。 我们配置的NAT NAT 转换: #iptables -t nat -A POSTROUTING -s 10.50.10.0/24 -o eth0 -j MASQUERADE 也可以通过使用 SNAT target 实现: #iptables -t nat -A POSTROUTING -s 10.50.10.0/24 -o eth0 -j SNAT --to-source 192.168.79.129 至于 MASQUERADE 和 SNAT 的区别,可以网上搜索,有相关的解释。 同时,还要在 FORWARD 点出配置规则如下: #iptables -A FORWARD -i eth1 -j ACCEPT 保证所有进入 eth1 的包都被 FORWARD 点 ACCEPT 。 经过以上的配置之后, Host A 就可以正常的访问外网了。

常见各网卡级设置和说明

常见各网卡高级设置和说明 1.双击右下角的两个小电视(上网就一闪闪的那个),也可以右键点网上邻居点属性再双击本地连接 2.点属性 3.点配置 在电源管理中:允许计算机关闭这个设备以节约电源关掉! 在高级里面:不同网卡如下 先说几个比较关键的: 1,Flow Control =流量控制网卡默认设置 网卡自动限制你的网络流量,比如说平时很流畅,打海山,一A怪就掉线,为什么?流量大。。。。 2,Checksum Offload 数据包校验网卡默认设置 网卡的自动校验而导致一旦有一点问题,后续的包便全部不处理而出现假掉线,而服务器忙得话,出错的几率就大 3,大量传送减负网卡默认设置 大量传送减负是用网卡硬件分割TCP数据包,但其实只有关闭它才可以发挥网卡的真正性能,cpu占用率会提升,但不明显。网络处理速度会快一些。 NF网卡高级设置

Checksum Offload 数据包校验建议关闭 Flow Control 流量控制一定要关闭 IEEE802.1P Support IEEE802.1P支持建议关闭 Jumbo Frame Payload Size 默认是1500 这个是千兆网络一个新的设置,在下文详细叙述。 Low Power State Link Speed 网卡节能建议关闭 Network Address MAC的修改默认为不存在一般不必改动 Optimize For CPU/Throughput 为CPU占用优化或为吞吐量进行优化,设置为CPU的话,网卡的速度被限制,但CPU占用会很低,假如改为Throughput的话,网卡的性能才能完全发挥,但CPU的占用也会上升不少。 Segmentation Offload 建议关闭 Speed/Duplex Settings Full Autonegotiation(全自适应,一般不用修改) VLAN Id 默认是1 不用改 VLAN Support VLAN支持一般关闭 Wake on Magic packet 魔术数据包唤醒建议关闭 Wake on pattern 建议关闭 WakeOnLAN From PowerOff 建议关闭 8168/8111c网卡高级设置 在网卡高级选项里 JUMBO FRAME 改成无 802.1Q/1P VLAN Tagging 改成关闭 Flow Control 改成关闭 Jumbo Frame 改成关闭 Offload Checksum 改成关闭 Offload TCP_LargeSemnd 改成关闭

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 restart 3。静态路由添加方法: (1)将添加静态路由的命令加入到rc.local中 /etc/rc.d/rc.local 格式如下(与route命令格式一致): route add -net 219.223.216.0 netmask 255.255.255.0 gw 219.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 eth1 219.223.215.0/24 via 219.223.215.129 加后,需service network restart后生效

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转发。网关都是0.0.0.0,其配置如下所示: 图3:主机路由表 给这两个不属于任何主机的ip地址绑上主机网卡的MAC地址,即设置两条静态arp项。 arp -i eth0 –s 192.168.1.11 00:1B:77:07:78:F6 arp –i wlan0 –s 192.168.1.22 00:1B:24:1C:0B:B4 添加mac地址如下图所示: 图4:主机mac地址表 下面是iptables的地址转换配置: iptables –t nat -F iptables -t nat -A POSTROUTING -s 192.168.1.108 -d 192.168.1.11 -j SNA T --to-source 192.168.1.22 iptables -t nat -A PREROUTING -s 192.168.1.22 -d 192.168.1.11 -j DNAT --to-destination 192.168.1.101 iptables -t nat -A POSTROUTING -s 192.168.1.101 -d 192.168.1.22 -j SNAT --to-source 192.168.1.11 iptables -t nat -A PREROUTING -s 192.168.1.11 -d 192.168.1.22 -j DNA T --to-destination 192.168.1.108 这是iptables的SNAT和DNA T转换,也是本实验的关键所在。 第一行是将从192.168.1.108出去的包的源地址改为192.168.1.22; 第二行是将目的地址为192.1686.1.11的包改为192.168.1.101; 第三行是将从192.168.1.101出去的包的源地址改为192.168.1.11; 第四行是将到192.168.1.11的目的地址的包改为192.168.1.108; Ping –I 192.168.1.108 192.168.1.11 即源地址为192.168.1.108,目的地址为192.168.1.11,发ICMP报文,下面是抓到的图

LINUX下双网卡绑定技术实现负载均衡和失效保护

保持服务器的高可用性是企业级 IT 环境的重要因素。其中最重要的一点是服务器网络连接的高可用性。网卡(NIC)绑定技术有助于保证高可用性特性并提供其它优势以提高网络性能。 我们在这介绍的Linux双网卡绑定实现就是使用两块网卡虚拟成为一块网卡,这个聚合起来的设备看起来是一个单独的以太网接口设备,通俗点讲就是两块网卡具有相同的IP地址而并行链接聚合成一个逻辑链路工作。其实这项技术在Sun和Cisco中早已存在,被称为Trunking和Etherchannel 技术,在Linux的2.4.x的内核中也采用这这种技术,被称为bonding。bonding技术的最早应用是在集群——beowulf上,为了提高集群节点间的数据传输而设计的。下面我们讨论一下bonding 的原理,什么是bonding需要从网卡的混杂(promisc)模式说起。我们知道,在正常情况下,网卡只接收目的硬件地址(MAC Address)是自身Mac的以太网帧,对于别的数据帧都滤掉,以减轻驱动程序的负担。但是网卡也支持另外一种被称为混杂promisc的模式,可以接收网络上所有的帧,比如说tcpdump,就是运行在这个模式下。bonding也运行在这个模式下,而且修改了驱动程序中的mac地址,将两块网卡的Mac地址改成相同,可以接收特定mac的数据帧。然后把相应的数据帧传送给bond驱动程序处理。 说了半天理论,其实配置很简单,一共四个步骤: 实验的操作系统是Redhat Linux Enterprise 3.0 绑定的前提条件:芯片组型号相同,而且网卡应该具备自己独立的BIOS芯片 双网卡邦定的拓朴图(见下图) 1. 1.编辑虚拟网络接口配置文件,指定网卡IP 2.vi /etc/sysconfig/ network-scripts/ ifcfg-bond0 3.[root@rhas-13 root]# cp /etc/sysconfig/network-scripts/ifcfg-eth0 ifcfg-bond0 4. 2 #vi ifcfg-bond0 5.将第一行改成 DEVICE=bond0 6.# cat ifcfg-bond0 7.DEVICE=bond0 8.BOOTPROTO=static 9.IPADDR=172.31.0.13 https://www.wendangku.net/doc/459835203.html,MASK=255.255.252.0 11.BROADCAST=172.31.3.254 12.ONBOOT=yes 13.TYPE=Ethernet 14.这里要主意,不要指定单个网卡的IP 地址、子网掩码或网卡 ID。将上述信息指定到虚拟适配器(bonding)中即可。 15.[root@rhas-13 network-scripts]# cat ifcfg-eth0 16.DEVICE=eth0 17.ONBOOT=yes 18.BOOTPROTO=dhcp 19.[root@rhas-13 network-scripts]# cat ifcfg-eth1 20.DEVICE=eth0 21.ONBOOT=yes 22.BOOTPROTO=dhcp 复制代码 3 # vi /etc/modules.conf “自己实验结果:centos文件为:/etc/modprobe.conf“ 1.编辑 /etc/modules.conf 文件,加入如下一行内容,以使系统在启动时加载bonding模块,对外虚拟网络接口设备为 bond0 2.

linux网卡绑定(多组)和解绑实现步骤

linux网卡绑定(多组)和解绑实现步骤 2013年5月20日 15:14 绑定 1.修改配置文件: a.在/etc/modprobe.conf中加入一行:alias bondN bonding,其中bondN 是绑定后公用网口的名称,依实际情况而定,一般第一个绑定用bond0,第二 个用bond1… ,如果已经有,不用添加,使用后也不用删除该行 b.在所有待绑定网口的配置文件(/etc/sysconfig/network-scripts/)中加入 以下两行: 其中: ifcfg-ehtN中的N是待绑定的网口号,如eth0,eth1… bondN是绑 定后的共用网口名称,可以是bond1,bond2…但是要与ifcfg-ethN和 /etc/modprobe.conf这两个配置文件中的配置项对应起来。 c.添加绑定网口bondN的配置文件,在与ifcfg-ehtN平级的目录下添加 ifcfg-bondN文件,键入以下内容: 2.安装bonding内核模块:modprobe bondN 3.重启网卡service network restart 解绑 1.卸载bonding内核模块:modprobe -r bondN 2.删除ifcfg-bondN配置文件,删除ifcfg-ehtN配置文件中绑定时添加的两行。 3.重启网卡service network restart 注意 1.多组绑定需要将ifcfg-ethN文件中指定不同代理绑定网口,即bond0,1, 2..。 2.ifcfg-bondN中将设备名、IP做响应修改。 3./etc/modprobe.conf文件中添加alias bondN bonding。每隔bond端口用一行。 4.以上均为centos 5.5中的配置,如果在 6.0中,没有/etc/modprobe.conf,需要在 /etc/modprobe.d目录中添加文件bonding.conf,将alias bondN bonding写入该 文件中。 5.如果需要负载均衡,在alias bondN bonding行下写options bondN miimon=100 mode=0 问题 1.bond0在解绑之后虽然用ifconfig看不到了,使用ifconfig bond0 up也不能启用, 但是在X中network配置窗口中任然有bond0这一项。不过这个不影响使用,再下 次绑定时仍按照以上步骤操作即可。

win网卡高级选项优化设置

win 网卡高级选项优化设置 Realtek RTL8169/8110 系列PCI 千兆以太网 NIC (NDIS 6.20) IPv4 校验和卸载禁用Jumbo 帧禁用 TCP 校验和卸载(IPv4)禁用UDP 校验和卸载(IPv4)禁用传输缓 冲区最大值大量发送卸载(IPv4)禁用唤醒数据包禁用唤醒模式匹配 禁用接收缓冲区512 流控制禁用速度和双工自动协商网络地址优先级 和VLAN 中断裁决禁用 QoS 数据包标签建议设置:已禁用 本地管理的地址建议设置:不存在 传输描述符建议设置:256 等待连接建议设置:开 分载传输IP 效验和建议设置:开 自动禁用Gigabit (节能)禁用

分载传输TCP效验和建议设置:关分载接收IP 效验和建议设置:开分载接收TCP效验和建议设置:关唤醒链接设置建议设置:已禁用 唤醒设置建议设置:已禁用 纪录链接状态设置建议设置:已禁用

接收描述符建议设置:256 巨帧建议设置:已禁用 链接速度和双工建议设置:1000 Mbps 自动协商流程控制建议设置:关启用PME 建议设置:控制操作系统 适应性帧间距调整建议设置:已启用中断节流率建议设置:关 经过前期的测试发现,INTEL网卡驱动使用11.2 以后的版本比较好,11.2 以后的版本驱动在传输相同数据,相同传输速率时,对工作站的CPU利用率比较低。 其他各种网卡做无盘的高级设置NF 网卡高级设置 Checksum Offload 数据包校验建议关闭

Flow Control 流量控制一定要关闭 IEEE802.1P Support IEEE802.1P支持建议关闭 Jumbo Frame Payload Size 默认是1500 这个是千兆网络一个新的设置,在下文详细叙述。 Low Power State Link Speed 网卡节能建议关闭 Network Address MAC 的修改默认为不存在一般不必改动 Optimize For CPU/Throughput 为CPU占用优化或为吞吐量进行优化,设置为CPU 的话,网卡的速度被限制,但CPU 占用会很低,假如改为Throughput 的话,网卡的性能才能完全发挥,但CPU的占用也会上升不少。 Segmentation Offload 建议关闭 Speed/Duplex Settings Full Autonegotiation (全自适应,一般不用修改) VLAN Id 默认是1 不用改

详解双网卡绑定

Linux下的双网卡绑定bond0 em1 em2 一、什么是bonding Linux bonding 驱动提供了一个把多个网络接口设备捆绑为单个的网络接口设置来使用,用于网络负载均衡及网络冗余 二、bonding应用方向 1、网络负载均衡 对于bonding的网络负载均衡是我们在文件服务器中常用到的,比如把三块网卡,当做一块来用,解决一个IP地址,流量过大,服务器网络压力过大的问题。对于文件服务器来说,比如NFS或SAMBA文件服务器,没有任何一个管理员会把内部网的文件服务器的IP地址弄很多个来解决网络负载的问题。如果在内网中,文件服务器为了管理和应用上的方便,大多是用同一个IP地址。对于一个百M的本地网络来说,文件服务器在多个用户同时使用的情况下,网络压力是极大的,特别是SAMABA和NFS服务器。为了解决同一个IP地址,突破流量的限制,毕竟网线和网卡对数据的吞吐量是有限制的。如果在有限的资源的情况下,实现网络负载均衡,最好的办法就是bonding 2、网络冗余 对于服务器来说,网络设备的稳定也是比较重要的,特别是网卡。在生产型的系统中,网卡的可靠性就更为重要了。在生产型的系统中,大多通过硬件设备的冗余来提供服务器的可靠性和安全性,比如电源。bonding 也能为网卡提供冗余的支持。把多块网卡绑定到一个IP地址,当一块网卡发生物理性损坏的情况下,另一块网卡自动启用,并提供正常的服务,即:默认情况下只有一块网卡工作,其它网卡做备份 三、bonding实验环境及配置 1、实验环境 系统为:CentOS,使用2块网卡(em1、em2 ==> bond0)来实现bonding技术 2、bonding配置 第一步:先查看一下内核是否已经支持bonding 1)如果内核已经把bonding编译进内核,那么要做的就是加载该模块到当前内核;其次查看ifenslave该工具是否也已经编译 modprobe -l bond* 或者modinfo bonding modprobe bonding lsmod | grep 'bonding' echo 'modprobe bonding &> /dev/null' >> /etc/rc.local(开机自动加载bonding模块到内核) which ifenslave 注意:默认内核安装完后就已经支持bonding模块了,无需要自己手动编译 2)如果bonding还没有编译进内核,那么要做的就是编译该模块到内核 (1)编译bonding tar -jxvf kernel-XXX.tar.gz cd kernel-XXX

Linux下配置双网卡聚合

一、背景 CentOS6.6 Ethernet: em1 em2 em3 em4 bond0 192.168.51.134/24 bond1 192.168.52.135、24 GW 192.168.51.1 GW 192.168.52.1 VLAN 51 52 前提:查看8021q模块有没有挂载,如果没有的话就进行手动挂载 # lsmsg |grep 8021q # modprobe 8021q 二、配置: 1.配置em1、em2配置文件并将这两块网卡绑定为bond0 # cd /etc/sysconfig/network-scripts/ # vim ifcfg-em1 DEVICE=em1 TYPE=Ethernet UUID=bcf7fa28-5807-4126-a7e6-d16bb5ddd32b ONBOOT=yes BOOTPROTO=none #HWADDR=18:66:DA:4C:FC:E6 DEFROUTE=yes #IPV4_FAILURE_FATAL=yes #IPV6INIT=no MASTER=bond0 SLAVE=yes USERCTL=yes PS:这里HWA DDR、UUID一行可以注释掉,因为后面重启network服务的时候可能会提示MA C地址重复,当然如果不提示最好 2.配置em2、em3、em4如上配置参数,其中em3、em4的MASTER=bond1 3.复制或创建ifcfg-bond0、ifcfg-bond1,并修改文件内容如下 # cp ifcfg-em1 ifcfg-bond0 # vim ifcfg-bond0 DEVICE=bond0 BOOTPROTO=none ONBOOT=yes TYPE=Ethernet BONDING_OPTS="mode=2 miimon=100" VLAN=yes

常用操作系统双网卡绑定方法

常用操作系统双网卡绑定方法 目录 一、RHEL 5.7 LINUX 下网卡绑定设置 (1) 二、RHEL6 LINUX 下网卡绑定设置 (3) 三、SUSE 10 下网卡绑定设置 (11) 四、SUSE 11 下网卡绑定设置 (16) 五、Windows 下网卡绑定设置 (22) 一、RHEL 5.7 LINUX 下网卡绑定设置 [root@Linux5 ~]# more /etc/sysconfig/network-scripts/ifcfg-bond0 # Broadcom Corporation NetXtreme II BCM5709S Gigabit Ethernet DEVICE=bond0 BOOTPROTO=static ONBOOT=yes IPADDR=10.96.19.207 NETMASK=255.255.255.0 GATEWAY=10.96.19.1 TYPE=Ethernet [root@Linux5 ~]# more /etc/sysconfig/network-scripts/ifcfg-eth0 # Broadcom Corporation NetXtreme II BCM5709S Gigabit Ethernet DEVICE=eth0 BOOTPROTO=none HWADDR=34:40:B5:BD:24:18 ONBOOT=yes MASTER=bond0 SLAVE=yes TYPE=Ethernet [root@Linux5 ~]# more /etc/sysconfig/network-scripts/ifcfg-eth1 # Broadcom Corporation NetXtreme II BCM5709S Gigabit Ethernet DEVICE=eth1 BOOTPROTO=none HWADDR=34:40:B5:BD:24:1A ONBOOT=yes MASTER=bond0

SUSE Linux双网卡绑定设置详解

suse linux双网卡绑定设置详解 双网卡的绑定可以实现冗余和高可用性,在suse linux 10中和redhat linux 5中设置双网卡绑定是不太一样的,下面详解一下suse linux 下的双网卡绑定: 步骤1:进入到网络配置目录 # cd /etc/sysconfig/network 步骤2:创建ifcfg-bond0配置文件 Vi ifcfg-bond0 输入如下内容保存 BOOTPROTO='static' BROADCAST='' IPADDR='172.27.120.21 #要绑定的ip地址 NETMASK='255.255.255.0 '#网段的掩码 NETWORK='' STARTMODE='onboot' BONDING_MASTER='yes' BONDING_MODULE_OPTS='mode=1 miimon=100 ' # mode=1是主备模式(active-backup) mode=0是平衡模式(balance_rr) BONDING_SLAVE0='eth0' #第一块网卡的mac地址 BONDING_SLAVE1='eth1' #第二块网卡的mac地址 ETHTOOL_OPTIONS='' MTU='' NAME='' REMOTE_IPADDR='' USERCONTROL='no' 步骤3:使用yast进入网卡的配置界面,把原有的两块网卡设置为没有ip,网卡模式改为自动获取地址模式,删除/etc/sysconfig/network下的已经绑定的网卡的配置文件 步骤4:注意默认网关的配置,使用yast管理工具进入路由设置界面,或者通过修改配置文件的方式并运行命令进行配置 配置默认网关。 # vi routes 插入如下内容 default 172.27.120.254 - - # route add default gw 172.27.120.254 步骤5:重启网络服务,使配置生效 # rcnetwork restart 步骤6:验证 (1) 输入ifconfig可以看到bond0已经运行了,bond0、eth1、eth0的MAC地址都是一样 JSBC-SIHUA-DB02:/etc/sysconfig/network # ifconfig bond0 Link encap:Ethernet HWaddr 78:2B:CB:4B:54:D5

linux双网卡NAT共享上网

linux双网卡NAT共享上网 作者:佚名来源:转载发布时间:2013-4-22 20:30:00 linux双网卡NAT共享上网 一、网络拓补结构: 服务器:两网卡的设置: eth0:202.96.168.100 掩码:255.255.255.0 网关:202.96.168.68 #与 https://www.wendangku.net/doc/459835203.html, 相联 eth1:192.168.1.1 掩码:255.255.255.0 #与局域网相联 客户机子网段:192.168.1.0/255 二、服务器设置:(这两种方法任选其一即可) 1用NAT方法 在服务器上执行下面几条命令: echo "1" > /proc/https://www.wendangku.net/doc/459835203.html,/ipv4/ip_forward #打开IP转发,1表示转发;0表示不转发 上面这个命令也可以通过修改/etc/sysctl.conf实现,在文件中加上下面一行: net.ipv4.ip_forward = 1 其余命令是: iptables -F iptables -P INPUT ACCEPT iptables -P FORWARD ACCEPT iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE #打开NAT 2.2、用网桥方法: echo "1" > /proc/https://www.wendangku.net/doc/459835203.html,/ipv4/ip_forward ifconfig eth0 0.0.0.0 up ifconfig eth1 0.0.0.0 up brctl addbr br0 #添加一个网桥 brctl addif br0 eth0 brctl addif br0 eth1 #将eth0 eth1加到网桥中去 ifconfig br0 https://www.wendangku.net/doc/459835203.html,mask 255.255.255.0 broadcast 192.168.1.255 up #给网桥分配IP地址,如果不做NAT,也不需要远程访问网桥的话,可以不设IP地址,但必须启用网桥(ifconfig br0 up) route add default gw 202.96.168.68 #如果网桥不需要访问其他机器的话,可以不添加网关。 三、客户机设置: eth0:192.168.1.10 掩码:255.255.255.0 网关:192.168.1.1

网卡高级属性设置

APM Mode 网路唤醒:关闭/开启 ARP/PING网路唤醒:关闭/开启 关机网络唤醒 降速省电 接收端缓冲区长度:64K bytes /16/32/8 连接速度和双工模式:100 Mbps 全双工/100 Mbps 半双工/ 10 Mbps 全双工/10 Mbps 半双工 连线改变网路唤醒 网路卡位 性能最佳化 网卡高级属性设置 2010-03-17 16:03 (一) Wake On Ping,网络唤醒 Flow Control,流量控制(根据网络情况,降低发包速度) PME,Power Management Event,电源管理,一段时间不工作,网卡可以自动关闭,以节约 电力。家用机一般还是关闭该项,因为有时候这设置会有兼容问题 Priority Packet,优先度,显然你是intel的网卡。英特尔Priority Packet 是一种实用程序,用来设 置过滤器以先处理高优先级网络通信,然后再处理一般通信。使用Priority Packet,可以设置优 先级过滤器、使时间紧迫的通信。而这个就是打开该功能的开关,不过没有intel 的priority packet软件配合,这项打开也没有意义。 (二) 1、link down power saving 连接断开时关闭电源节省,建议启用enable。 2、link speed/duplex mode 连接的速度,现在的网卡一般都是10/100M自适应的,选默认的 auto negotiation 自动选择即可。

3、network performance 网络设置,不用理它。 4、optimal performance 优化设置,建议启用enable。 5、receive buffer size 接收缓存大小,选最大的64k bytes。 6、wakeup on arp/ping wakeup on link change wakeup using Apm mode 后果很严重 这些都是网络唤醒功能,不需要的建议关闭disable。 Link Down Power Saving 低速连接时省电模式 Link Speed/Duplex Mode 连接速度双工模式 Network Address 网络地址 Optimal Performance 优化性能 Receive Buffer Size 接收缓冲大小 WakeUp on ARP/PING 网络唤醒通过ARP/PING WakeUp on Link Change 网络唤醒通过连接改变 WakeUp using APM Mode 网络唤醒通过APM模式 (三) Link Down Power Saving Link Speed/Duplex Mode Network Address Optimal Performance Receive Buffer Size WakeUp on ARP/PING WakeUp on Link Change

相关文档
相关文档 最新文档