紧急求教,网卡驱动

我的计算机上装有两块网卡,同一型号(tp-link 8139)
但每次启动网络配置里只能使用一个网卡,拆下一个都能运行,正常.为什么会这样
该如何设置?

如果手动加载,使用mount -T -o io-net pci=0x1 /lib/dll/devn-rtl.so
可以显示,其他通讯基本正常,但我自己的程序使用的多播模式,通讯就不正常,基本上接收不到数据。

help!!!thanks!!!

不知道具体是哪一步出错。可以把两张卡插上,开机后看看ifconfig -a的输出。netstat -ni和netstat -nr的输出。可以试试 ifconfig en1 delete,看看有没有用。

netstat -ni 以及 sloginfo 的输出,可能可以有所帮助。

以下是命令输出,请xtang 和各位大虾帮忙分析一下

netstat -ni

Name Mtu Network Address Ipkts Ierrs Opkts Oerrs Colls
lo0 33212 380 0 380 0 0
lo0 33212 127 127.0.0.1 380 0 380 0 0
en0 1500 00:0a:eb:21:ea:56 12953 0 8086 0 0
en0 1500 192.168 192.168.0.17 12953 0 8086 0 0
en1 1500 00:0a:eb:f6:5c:68 5262 0 307 0 0
en1 1500 193.168 193.168.0.17 5262 0 307 0 0

netstat -nr

Routing tables

Internet:
Destination Gateway Flags Refs Use Mtu Interface
default 192.168.0.1 UG 0 0 - en0
127.0.0.1 127.0.0.1 UH 0 0 33212 lo0
192.168 link#2 UC 5 0 - en0
192.168.0.1 link#2 UHLc 1 0 - en0
192.168.0.6 00:0a:eb:19:9a:e7 UHLc 0 33 - en0
192.168.0.17 00:0a:eb:21:ea:56 UHLc 0 4 - lo0
192.168.0.18 00:90:27:78:32:5c UHLc 0 75 - en0
192.168.0.111 00:0d:60:7b:72:ac UHLc 4 8171 - en0
193.168 link#3 UC 0 0 - en1

ifconfig -a

lo0: flags=8009<UP,LOOPBACK,MULTICAST> mtu 33212
capabilities=7<IP4CSUM,TCP4CSUM,UDP4CSUM>
enabled=0<>
inet 127.0.0.1 netmask 0xff000000
en0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1500
address: 00:0a:eb:21:ea:56
inet 192.168.0.17 netmask 0xffffff00 broadcast 192.168.0.255
en1: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1500
address: 00:0a:eb:f6:5c:68
inet 193.168.0.17 netmask 0xffffff00 broadcast 193.168.0.255
#sloginfo
Time Sev Major Minor Args
Dec 07 15:00:40 3 17 0 Range check failed (IO) - Dev 24db - Vend 8086 - Class 1018a - Addr 0 - Size 8
Dec 07 15:00:40 3 17 0 Range check failed (IO) - Dev 24db - Vend 8086 - Class 1018a - Addr 0 - Size 4
Dec 07 15:00:40 3 17 0 Range check failed (IO) - Dev 24db - Vend 8086 - Class 1018a - Addr 0 - Size 8
Dec 07 15:00:40 3 17 0 Range check failed (IO) - Dev 24db - Vend 8086 - Class 1018a - Addr 0 - Size 4
Dec 07 15:00:40 3 17 0 Range check failed (MEM) - Dev 24db - Vend 8086 - Class 1018a - Addr 0 - Size 400
Dec 07 15:00:40 2 19 0 eide_identify_devices: Intel 82801EB vid 8086, did 24db, class 1018a rev 2, busno 0, dfunc f9
Dec 07 15:00:40 2 19 0 eide_identify_devices: cmd_addr 1f0, cntl_addr 3f4, irq e, chnl 0, udma 5, mdma 2, sdma 0, pio 4
Dec 07 15:00:40 2 19 0 eide_command: BSY/DRQ set: 7f
Dec 07 15:00:40 2 19 0 eide_identify: IDENTIFY failed: cmd ec, tid 0, status 7f, error 7f
Dec 07 15:00:40 2 19 0 eide_command: BSY/DRQ set: 7f
Dec 07 15:00:40 2 19 0 eide_identify: IDENTIFY failed: cmd a1, tid 0, status 7f, error 7f
Dec 07 15:00:40 2 19 0 eide_parse_identify: IDENTIFY DRIVE CMD cksum failure
Dec 07 15:00:40 2 19 0 eide_display_devices: MSI DVD-ROM tid 1, cable 40, max udma 2, cur udma 4, max mdma 0, cur mdma 2, max sdma -1, cur sdma -1, pio 4, mblk 0
Dec 07 15:00:40 2 19 0 eide_init_devices: MSI DVD-ROM path 0, tid 1, udma 2, mdma 2, sdma -1, pio 4, mblk 0
Dec 07 15:00:40 2 19 0 eide_identify_devices: Intel 82801EB vid 8086, did 24db, class 1018a rev 2, busno 0, dfunc f9
Dec 07 15:00:40 2 19 0 eide_identify_devices: cmd_addr 170, cntl_addr 374, irq f, chnl 1, udma 5, mdma 2, sdma 0, pio 4
Dec 07 15:00:40 2 19 0 eide_display_devices: HDS728080PLAT20 tid 0, cable 40, max udma 2, cur udma 6, max mdma 0, cur mdma 2, max sdma -1, cur sdma -1, pio 4, mblk 16
Dec 07 15:00:40 2 19 0 eide_init_devices: HDS728080PLAT20 path 0, tid 0, udma 2, mdma 2, sdma -1, pio 4, mblk 16
Dec 07 15:00:43 5 6 200 Installing /dev/par port 278
Dec 07 15:00:43 5 14 0 tcpip starting
Dec 07 15:00:43 3 14 0 Using pseudo random generator. See “random” option
Dec 07 15:00:43 2 10 0 devn-rtl: Unable to create instance did: 0x8139 vid: 0x10ec
Dec 07 15:00:45 7 15 0 npm-qnet(L4): qnet_birth(): qnet_init() - calling

Dec 07 15:00:45 7 15 0 npm-qnet(L4): en_ionet_rx_ctrl(): new interface: en0: index 0 cell 1 endpt 0 iface 0 mac addr 00:0A:EB:21:EA:56

Dec 07 15:00:45 7 15 0 npm-qnet(QOS): nd_change_notify(): Node Up: nd 0 EA4185a.scdl

Dec 07 15:00:45 7 15 0 npm-qnet(L4): qnet_birth(): qnet_init() - complete: 0

Dec 07 15:00:45 7 15 0 npm-qnet(L4): en_ionet_rx_ctrl(): driver umount for L4 0, tearing down

Dec 07 15:00:45 7 15 0 npm-qnet(L4): qnet_death(): qnet_shutdown() - calling

Dec 07 15:00:45 7 15 0 npm-qnet(QOS): nd_change_notify(): Node Down: nd 0 EA4185a.scdl

Dec 07 15:00:45 7 15 0 npm-qnet(QOS): qos_shutdown(): starting

Dec 07 15:00:45 5 14 0 tcpip starting
Dec 07 15:00:45 3 14 0 Using pseudo random generator. See “random” option
Dec 07 15:00:46 7 15 0 npm-qnet(L4): l4_shutdown(): starting

Dec 07 15:00:46 7 15 0 npm-qnet(L4): qnet_death(): qnet_shutdown() - complete

Dec 07 15:00:46 1 8 0 phfont_init
Dec 07 15:00:46 1 8 0 phfontXX started OK
Dec 07 15:00:47 5 8 0 Process fontsleuth initialized.
Dec 07 15:00:48 1 8 0 phfont_init
Dec 07 15:00:48 1 8 0 phfontXX started OK
Dec 07 15:00:49 6 8 0 VGA primary : bus 0x1 dev/func 0x0
Dec 07 15:00:49 6 8 0 Found 1 PCI/AGP display devices
Dec 07 15:00:49 6 8 0 pci_init: found PCI device 10de:181
Dec 07 15:00:49 6 8 0 SetDisplayOffset pos: 0 0
Dec 07 15:00:49 6 8 0 SetDisplayOffset pos: 0 0
Dec 07 15:00:49 5 8 0 Attached /dev/io-graphics/vesabios, id = 1
Dec 07 15:00:51 5 9 0 Start: /usr/photon/bin/devi-hirun kbd fd -d/dev/kbd ps2 mousedev

Dec 07 15:00:53 3 14 2000 netmanager error: Could not set interface en1 state: Bad file descriptor

以下是命令输出,请xtang 和各位大虾帮忙分析一下

netstat -ni

Name Mtu Network Address Ipkts Ierrs Opkts Oerrs Colls
lo0 33212 380 0 380 0 0
lo0 33212 127 127.0.0.1 380 0 380 0 0
en0 1500 00:0a:eb:21:ea:56 12953 0 8086 0 0
en0 1500 192.168 192.168.0.17 12953 0 8086 0 0
en1 1500 00:0a:eb:f6:5c:68 5262 0 307 0 0
en1 1500 193.168 193.168.0.17 5262 0 307 0 0

netstat -nr

Routing tables

Internet:
Destination Gateway Flags Refs Use Mtu Interface
default 192.168.0.1 UG 0 0 - en0
127.0.0.1 127.0.0.1 UH 0 0 33212 lo0
192.168 link#2 UC 5 0 - en0
192.168.0.1 link#2 UHLc 1 0 - en0
192.168.0.6 00:0a:eb:19:9a:e7 UHLc 0 33 - en0
192.168.0.17 00:0a:eb:21:ea:56 UHLc 0 4 - lo0
192.168.0.18 00:90:27:78:32:5c UHLc 0 75 - en0
192.168.0.111 00:0d:60:7b:72:ac UHLc 4 8171 - en0
193.168 link#3 UC 0 0 - en1

ifconfig -a

lo0: flags=8009<UP,LOOPBACK,MULTICAST> mtu 33212
capabilities=7<IP4CSUM,TCP4CSUM,UDP4CSUM>
enabled=0<>
inet 127.0.0.1 netmask 0xff000000
en0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1500
address: 00:0a:eb:21:ea:56
inet 192.168.0.17 netmask 0xffffff00 broadcast 192.168.0.255
en1: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1500
address: 00:0a:eb:f6:5c:68
inet 193.168.0.17 netmask 0xffffff00 broadcast 193.168.0.255
#sloginfo
Time Sev Major Minor Args
Dec 07 15:00:40 3 17 0 Range check failed (IO) - Dev 24db - Vend 8086 - Class 1018a - Addr 0 - Size 8
Dec 07 15:00:40 3 17 0 Range check failed (IO) - Dev 24db - Vend 8086 - Class 1018a - Addr 0 - Size 4
Dec 07 15:00:40 3 17 0 Range check failed (IO) - Dev 24db - Vend 8086 - Class 1018a - Addr 0 - Size 8
Dec 07 15:00:40 3 17 0 Range check failed (IO) - Dev 24db - Vend 8086 - Class 1018a - Addr 0 - Size 4
Dec 07 15:00:40 3 17 0 Range check failed (MEM) - Dev 24db - Vend 8086 - Class 1018a - Addr 0 - Size 400
Dec 07 15:00:40 2 19 0 eide_identify_devices: Intel 82801EB vid 8086, did 24db, class 1018a rev 2, busno 0, dfunc f9
Dec 07 15:00:40 2 19 0 eide_identify_devices: cmd_addr 1f0, cntl_addr 3f4, irq e, chnl 0, udma 5, mdma 2, sdma 0, pio 4
Dec 07 15:00:40 2 19 0 eide_command: BSY/DRQ set: 7f
Dec 07 15:00:40 2 19 0 eide_identify: IDENTIFY failed: cmd ec, tid 0, status 7f, error 7f
Dec 07 15:00:40 2 19 0 eide_command: BSY/DRQ set: 7f
Dec 07 15:00:40 2 19 0 eide_identify: IDENTIFY failed: cmd a1, tid 0, status 7f, error 7f
Dec 07 15:00:40 2 19 0 eide_parse_identify: IDENTIFY DRIVE CMD cksum failure
Dec 07 15:00:40 2 19 0 eide_display_devices: MSI DVD-ROM tid 1, cable 40, max udma 2, cur udma 4, max mdma 0, cur mdma 2, max sdma -1, cur sdma -1, pio 4, mblk 0
Dec 07 15:00:40 2 19 0 eide_init_devices: MSI DVD-ROM path 0, tid 1, udma 2, mdma 2, sdma -1, pio 4, mblk 0
Dec 07 15:00:40 2 19 0 eide_identify_devices: Intel 82801EB vid 8086, did 24db, class 1018a rev 2, busno 0, dfunc f9
Dec 07 15:00:40 2 19 0 eide_identify_devices: cmd_addr 170, cntl_addr 374, irq f, chnl 1, udma 5, mdma 2, sdma 0, pio 4
Dec 07 15:00:40 2 19 0 eide_display_devices: HDS728080PLAT20 tid 0, cable 40, max udma 2, cur udma 6, max mdma 0, cur mdma 2, max sdma -1, cur sdma -1, pio 4, mblk 16
Dec 07 15:00:40 2 19 0 eide_init_devices: HDS728080PLAT20 path 0, tid 0, udma 2, mdma 2, sdma -1, pio 4, mblk 16
Dec 07 15:00:43 5 6 200 Installing /dev/par port 278
Dec 07 15:00:43 5 14 0 tcpip starting
Dec 07 15:00:43 3 14 0 Using pseudo random generator. See “random” option
Dec 07 15:00:43 2 10 0 devn-rtl: Unable to create instance did: 0x8139 vid: 0x10ec
Dec 07 15:00:45 7 15 0 npm-qnet(L4): qnet_birth(): qnet_init() - calling

Dec 07 15:00:45 7 15 0 npm-qnet(L4): en_ionet_rx_ctrl(): new interface: en0: index 0 cell 1 endpt 0 iface 0 mac addr 00:0A:EB:21:EA:56

Dec 07 15:00:45 7 15 0 npm-qnet(QOS): nd_change_notify(): Node Up: nd 0 EA4185a.scdl

Dec 07 15:00:45 7 15 0 npm-qnet(L4): qnet_birth(): qnet_init() - complete: 0

Dec 07 15:00:45 7 15 0 npm-qnet(L4): en_ionet_rx_ctrl(): driver umount for L4 0, tearing down

Dec 07 15:00:45 7 15 0 npm-qnet(L4): qnet_death(): qnet_shutdown() - calling

Dec 07 15:00:45 7 15 0 npm-qnet(QOS): nd_change_notify(): Node Down: nd 0 EA4185a.scdl

Dec 07 15:00:45 7 15 0 npm-qnet(QOS): qos_shutdown(): starting

Dec 07 15:00:45 5 14 0 tcpip starting
Dec 07 15:00:45 3 14 0 Using pseudo random generator. See “random” option
Dec 07 15:00:46 7 15 0 npm-qnet(L4): l4_shutdown(): starting

Dec 07 15:00:46 7 15 0 npm-qnet(L4): qnet_death(): qnet_shutdown() - complete

Dec 07 15:00:46 1 8 0 phfont_init
Dec 07 15:00:46 1 8 0 phfontXX started OK
Dec 07 15:00:47 5 8 0 Process fontsleuth initialized.
Dec 07 15:00:48 1 8 0 phfont_init
Dec 07 15:00:48 1 8 0 phfontXX started OK
Dec 07 15:00:49 6 8 0 VGA primary : bus 0x1 dev/func 0x0
Dec 07 15:00:49 6 8 0 Found 1 PCI/AGP display devices
Dec 07 15:00:49 6 8 0 pci_init: found PCI device 10de:181
Dec 07 15:00:49 6 8 0 SetDisplayOffset pos: 0 0
Dec 07 15:00:49 6 8 0 SetDisplayOffset pos: 0 0
Dec 07 15:00:49 5 8 0 Attached /dev/io-graphics/vesabios, id = 1
Dec 07 15:00:51 5 9 0 Start: /usr/photon/bin/devi-hirun kbd fd -d/dev/kbd ps2 mousedev

Dec 07 15:00:53 3 14 2000 netmanager error: Could not set interface en1 state: Bad file descriptor

你这两张卡是同一IP地址,这不行吧。

没有,IP地址不一样,不在同一网段,一个192,一个193

是我没看仔细。 :blush:

看上去没什么问题啊。ping -n 193.168.0.xxx 不能ping通吗?

能ping通,但我的应用系统使用的是UDP组播,我建立了两个socketid号,一个监视8000,一个监视8001,监视8000的ID加入组224.0.0.5,监视8001的ID加入组224.0.0.6,这时候问题就出现了.
当我向224.0.0.5的8000段进行组播时,系统收不到数据,而向224.0.0.6的8000号发送数据时,另一个socket号收到数据,而真正向224.0.0.6的8001发送数据时又收不到数据了.
其他的组播号我也试过了,象225.0.0.*的,235.0.0.*等,我试过多个段的地址,一样,有的号能够收到,有的就收到,不知什么原因.
我现在还有一台设备上主板上有两个网卡,系统能够识别,同样的程序在他上边运行就正常.而那两个芯片也是一样的,就能够识别.

如果我没记错,你的两个IP地址设得可能有问题。因为组播地址是算出来的。有几位是不用的。所以你最好把地址改一下,低位来要相同。如192.168.0.1和193.168.0.2

网上查了一下:
第2层的组播地址(组播MAC地址)可以从IP组播地址中衍生。计算方法是把IP地址的最后23位拷贝到MAC地址的最后23位,然后把这23位前面的那一位置为0。MAC地址的前24位必须为0x01-00-5E。例如:组播IP地址224.0.1.128,16进制表示为0xE0-00-01-10,最低的23位为0x00-01-10,计算得出的MAC地址为:0x01-00-5E-00-01-10。

谢谢nakeyfish的帮助,又长了新知识。
我修改了一下IP地址,只绑定一个组时,224.0.0.5 224.0.0.6都可以,当现在224.0.0.7不行了。而且当绑定两个组时,分别为224.0.0.5 224.0.0.6 就只能绑定224.0.0.6这个组,如果再给成其他组,如果出现不行的,在改回以前能行的也不行了,只能计算机重启,又恢复正常。

好像组播号的绑定有优先级的问题似的,