选择显示字体大小

如何在linux下配置多块网卡

也许你跟我一样,想利用你的linux做一个路由器玩玩;也许你公司的网络太大,需要用一个路由器来提高效率,但是又不想投资买一个专业的路由设备。这时linux可就帮上大忙了。那你马上就会遇到问题,如何让你的linux支持两块以上的网卡呢?
linux内核来说一般只能检测到一块网卡,为了我们能检测到两块以上的网卡,我们就需要配置内核模块了,好在现在的内核,一般将驱动程序将作为模块。即,在内核激活时,让模块自动检测所安装的ethe.net,如果我们使用的时pci网卡,这一切动作将由内核自动完成,但是,如果我们使用的是isa网卡,内核不一定能检测到你的网卡哦,这时,我们就要手动来设置网卡了,我们需要指定网卡的io地址,以至于让模块直接到指定的io地址去检测网卡,因此这些信息我们需要放在/etc/conf.modules文件中,如下面几个实例供大家参考:
假设你有两块isa ne2000网卡,一般设置为非pnp。如果你的网卡是跳线型,你就直接移动你网卡上的跳线头即可,如果你的网卡是软跳线(一般为软跳线),你首先应该用你的网卡驱动盘,在dos下(我使用的是a:setup.exe进行网卡的设置)将这两块网卡的io和irq值设定好,而且要检测通过。
比如一块是:io=0x300,irq=10
另一块是:io=0x240,irq=3
而且,这两种设置,都能正常运行。好了现在我们进入linux,且编辑/etc/conf.modules文件,内容如下:
---------------
alias eth0 ne
alias eth1 ne
options ne io=0x240,0x300
---------------
这是什幺意思呢?当ne.o模块(该模块位于/lib/modules/2.2.5-15.net目录中)被内核加载时,该模块知道到那一个io地址去寻找网卡,注意0x的意思为16进制,一般io地址都用16进制来表示。
好了,你的两块网卡已经能配置好了,赶快reboot你的linux,注意你的激活信息,特别是在进程管理程序init激活之前的一行,你就可以看到下面的内容:
-------------
ne.c:v1.0 9/23/94 donald becker
ne*000 ethercard probe at 0x300: 00 ae 25 01 c7 6b
eth0: ne2000 found at 0x300,using irq 10.
ne*000 ethercard probe at 0x240: 00 00 21 5a 00 07
eth1: ne2000 found at 0x240,using irq 3.
-------------
如果你在激活时错过了,你可以输入dmesg more 来看。:-)
一般来说,大部分的isa网卡都可以用逗号将两个io地址分开,让模块自动检测,但是有些网卡就不行,如:3com的ec501.o模块,当该模块被内核加载时只能检测到一块网卡,这时你就应该将该模块加载两次,这样才能将两块网卡都检测到,如下面的配置模块:
--------
alias eth0 3c501
alias eth1 3c501
options eth0 -o 3c501-0 io=0x280 irq=5
options eth1 -o 3c501-1 io=0x300 irq=7
--------
在该例中,-o是指定一个唯一的模块名称,只有这样才能模块在内核中加载两次irq=指定网卡的中断值。但是如果你用的网卡是两块不同的网卡,这时应该怎幺办呢?如下面的例子:
一块网卡是:3c503 io值为:0x350
另一块为: ne2000 io值为:0x280
模块的配置文件内容如下:
----------
alias eth0 ne
alias eth1 3c503
options ne io=0x280
options 3c503 io=0x350
----------
如果你的网卡为pci网卡,那就容易多了,你只需要在alias一行将ethn和指定的驱动模块联系起来即可,因为基于io的pci网卡很容易被检测到。可用的驱动模块都在下面的目录下:/lib/modules/'uname -r'.net中,注意uname -r是指当前你的linux内核的版本号,如2.0.34或2.2.5-15,我的内核为2.2.5-15,这些驱动模块就在/lib/modules/2.2.5-15.net目录下。一旦你配置好了你的conf.modules文件,你可以用下面的命令来检测:
modprobe ethn
dmesg tail
'n'表示网卡的号码,如果你将网卡的驱动模块编译到内核中了,那你就只能检测到一块网卡了,因为,linux内核只能默认的只检测一个网卡。
一般有两种方法让内核在激活时激活第二块、三、四块网卡。
上面已经介绍了一种方法,下面介绍另一种方法。该方法是一种传统的方法,即在内核还没有模块化的时候。一般是在lilo激活内核时,加入一些参数,如:
lilo: linux ether=10,0x300,eth0 ether=3,0x240,eth1
有关lilo激活参数的详细信息,请参考bootprompt-howto。
为了不在每一次激活时都键入太长的参数,我们可以用append=命令在lilo.conf种配置如:
append="ether=10,0x300,eht0 ether=3,0x240,eth1"
如果你是在dos系统下的loadlin.exe来激活你的linux的,就看下面的例子:
loadlin zimage root=/dev/hdb1 ro ether=10,0x300,eht0 ether=3,0x240,eth1
linux下安装2块以上的网卡一般就这两种常用的方法,但是还有一种,这种方法不推荐该方法是直接编辑space.c文件,将0xffe0改为0x0,0xffe0表示不检测设备,改为0后,即自动检测设备。   


 


关键字 本文所属关键字

相关 与本文相关文章

分类 所有文章关键字导航

源码编程相关

Java   Asp   PHP   .Net   XML   C/C++   CGI   VB   Jsp   J2ee   J2se   J2me   EJB   Servlet   Tomcat   Resin   Struts   Weblogic   Eclipse   ANT   GUI   JMS   Web servise   IDEA   Webphere   Hibernate   Spring   Jboss   Applet   Swing   Socket   Javamail   Perl   Ajax   P2P   安全   模式   框架   测试   开源   游戏

SQL数据库相关

My-SQL   Ms-SQL   Access   DB2   Oracle   Sybase   SQLserver   索引   存储过程   加密   数据库   分页   视图  

手机无线相关

3G   Wap   CDMA   GRPS   GSM   IVR   彩信   短信   无线   增值业务

网页设计制作相关

HTML   CSS   网页配色   网页特效   Javascript   VBscript   Dreamweaver   Frontpage   JS   Web   网站设计

网站建设推广相关

建站经验   网站优化   网站排名   推广   Alexa

操作系统/服务器相关

Windows XP   Windows 2000   Windows 2003   Windows Me   Windows 9.x   Linux   UNIX   注册表   操作系统   服务器   应用服务器

图形图像多媒体相关

Photoshop   Fireworks   Flash   Coreldraw   Illustrator   Freehand   Photoimpact   多媒体   图形图像

标准 网站致力的规范

Valid CSS!

无不良内容,无不良广告,无恶意代码

Valid XHTML 1.0 Transitional

creativecommons