分享
 
 
 

Linux下网卡设置常见问题(5)

王朝system·作者佚名  2008-05-19
窄屏简体版  字體: |||超大  

Alpha/AXP的PCI板上的Linux以太网卡

对于v2.0,只有3c509、depca、de4x5、pcnet32和所有8390驱动程序(wd、smc-ultra、ne、3c503等等)是编写成“结构无关”的,所以它们可以运行在基于DEC的Alpha CPU系统上。其它一些从Donald的WWW主页上下载的更新过的PCI驱动程序也可以工作,因为它们也是按照结构无关的思想编写的。

注意,使驱动程序与结构无关所需要进行的改动并不很复杂。只需要如下进行:

--把所有与jiffies有关的值都乘以HZ/100,得到Alpha使用的不同的HZ值。(即timeout=2;变成timeout=2*HZ/100;)

--把所有I/O内存(从640k到1MB)的指针引用替换为相应的readb() writeb() readl() writel()调用,如下例所示。

--------------------------------------------------------------------------------

- int *mem_base = (int *)dev-mem_start;

- mem_base[0] = 0xba5eba5e;

+ unsigned long mem_base = dev-mem_start;

+ writel(0xba5eba5e, mem_base);

--------------------------------------------------------------------------------

--把所有使用I/O内存作为源或目的地址的memcpy()调用替换为相应的memcpy_fromio()或者memcpy_toio()调用。

以结构无关的方式处理内存访问的细节在近期的内核所附的文件linux/Documentation/IO-mapping.txt中进行了说明。

SUN/Sparc硬件上的Linux以太网卡

要得到最新的Sparc信息,可以访问以下URL:

Linux Sparc

注意,有些Sparc的以太网硬件从主机获得其MAC地址,因此可能会有多个接口具有相同的MAC地址。如果想在同一个网络上使用多个接口,可以使用ifconfig的hw选项以分配唯一的MAC地址。

把PCI驱动程序移植到Sparc平台上与上面提到的AXP平台相似。可能的差异出在endian上,因为Sparc是big endian,而AXP和ix86是little endian。

其它硬件上的Linux以太网卡

还有一些其它硬件平台可以运行Linux,比如Atari/Amiga(m68k)。就象Sparc一样,最好是访问每个Linux支持的平台主页,以了解当前都支持哪些硬件。(欢迎提供这样的站点连接――把它们发给我!)

不使用Hub连接10/100BaseT

可以不使用Hub连接基于10/100BaseT(RJ45)的系统吗?

如果不使用额外的设备或机械装置,可以很容易地连接两台这样的机器,但不可能再多。参阅双绞线――解释了如何做到这一点。而且你不可能简单地交叉几根线或其它什么就弄出一个Hub,不复制Hub也无法正确完成冲突信号。

SIOCSIFxxx: No such device

在启动时出现了一大堆“SIOCSIFxxx: No such device”信息,后面还有一条“SIOCADDRT: Network is unreachable”,怎么回事?

你的以太网设备在启动/插入模块时没有被检测到,当ifconfig和route运行时,它们没有可用的设备。使用dmesg | more来浏览启动信息,看看有没有检测以太网卡的信息。

SIOCSFFLAGS: Try again

在运行“ifconfig”时出现“SIOCSFFLAGS: Try again”――怎么回事?

某些其它的设备使用了以太网卡想用的IRQ,所以以太网卡无法使用该IRQ。你不必重新启动来解决这个问题,因为某些设备只是在需要时才获取IRQ,在完成后就释放了。例如某些声卡、串口、软盘驱动器等。你可以键入cat /proc/interrupts来看看哪些中断正在被使用。绝大多数Linux以太网卡驱动程序只有在用“ifconfig”打开时才获取IRQ。如果你能让其它设备“放开”所需的IRQ中断线,那么你就可以用ifconfig来“再试一下”了。

使用“ifconfig”得到的连接为UNSPEC,而硬件地址是00:00:00:00:00:00

在不带参数运行ifconfig时,报告说连接为UNSPEC(而不是10Mbs以太网),而且硬件地址都是零。

这是因为运行的“ifconfig”程序版本比内核的版本高。在与老版本的内核一起运行时,新版本的ifconfig无法报告这些特性。你可以升级内核,或者“降级”ifconfig,或者干脆不理会这个错误。内核知道硬件地址,所以即使ifconfig无法读出它也没有关系。

如果使用的ifconfig程序比使用的内核旧很多的话,也会出现一些奇怪的信息。

大量的RX和TX错误

在不带参数运行ifconfig时,报告大量的接收和发送数据包错误。但看起来工作正常――怎么回事?

再看一遍。报告是说RX packets big number 停顿 errors 0 停顿 dropped 0 停顿 overrun 0。所以你看到的那个大数字是机器接收和发送的数据包总数。如果还觉得不可思议,键入cat /proc/net/dev试试。

/dev/下以太网卡的入口

/dev/eth0象是个到/dev/xxx的连接。这样对吗?

与你听过的正好相反,/dev/*下的文件没被使用。你可以删除掉任何/dev/wd0, /dev/ne0以及类似的入口。

Linux与“trailers”

在“ifconfig”网卡时,需要禁止trailers吗?

不能禁止trailers,而且也没必要。“trailers”是避免在网络层复制数据的工具。其想法是使用一个大小为“H”的固定大小的头,把可变大小的头信息放在包的尾部,并把所有包定位在页开始之前的“H”字节。这只是个好想法,在实际中工作得并不好。如果有人建议使用“-trailers”,那不过是找个替罪羊罢了。这对解决问题没有任何意义,但如果问题真的自行解决了,那么他就可以吹嘘自己的神奇本领了。

访问原始以太网设备

在Linux下怎样不通过TCP/IP之类的东西访问原始的以太网设备?

--------------------------------------------------------------------------------

int s=socket(AF_INET,SOCK_PACKET,htons(ETH_P_ALL));

--------------------------------------------------------------------------------

这样就可以得到一个接收所有协议类型的socket。对它执行recvfrom()调用,它就会用sa_family里的设备类型和sa_data数组里的设备名来填充sockaddr。我不知道是谁最早在Linux里使用SOCK_PACKET,但它确实是个非常好的东西。你也可以通过sendto()调用发送原始数据包。当然,在这样做时你必须拥有root的权限。

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
2023年上半年GDP全球前十五强
 百态   2023-10-24
美众议院议长启动对拜登的弹劾调查
 百态   2023-09-13
上海、济南、武汉等多地出现不明坠落物
 探索   2023-09-06
印度或要将国名改为“巴拉特”
 百态   2023-09-06
男子为女友送行,买票不登机被捕
 百态   2023-08-20
手机地震预警功能怎么开?
 干货   2023-08-06
女子4年卖2套房花700多万做美容:不但没变美脸,面部还出现变形
 百态   2023-08-04
住户一楼被水淹 还冲来8头猪
 百态   2023-07-31
女子体内爬出大量瓜子状活虫
 百态   2023-07-25
地球连续35年收到神秘规律性信号,网友:不要回答!
 探索   2023-07-21
全球镓价格本周大涨27%
 探索   2023-07-09
钱都流向了那些不缺钱的人,苦都留给了能吃苦的人
 探索   2023-07-02
倩女手游刀客魅者强控制(强混乱强眩晕强睡眠)和对应控制抗性的关系
 百态   2020-08-20
美国5月9日最新疫情:美国确诊人数突破131万
 百态   2020-05-09
荷兰政府宣布将集体辞职
 干货   2020-04-30
倩女幽魂手游师徒任务情义春秋猜成语答案逍遥观:鹏程万里
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案神机营:射石饮羽
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案昆仑山:拔刀相助
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案天工阁:鬼斧神工
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案丝路古道:单枪匹马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:与虎谋皮
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:李代桃僵
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:指鹿为马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:小鸟依人
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:千金买邻
 干货   2019-11-12
 
推荐阅读
 
 
 
>>返回首頁<<
 
靜靜地坐在廢墟上,四周的荒凉一望無際,忽然覺得,淒涼也很美
© 2005- 王朝網路 版權所有