有个问题请教大家.
1.系统环境,系统是三星芯片6410 + 双网卡(一块是DM9000,一块是SMSC9500),Kernel是2.6.31,Ubuntu9.10
2.我先把/etc/udev/rules.d/70-persistent-net.rules 文件贴出来
# USB device 0x0424:0x9500 (usb)
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:80:0f:95:06:4
2", ATTR{dev_id}=="0x0", ATTR{type}=="1", KERNEL=="eth*", NAME="eth0"
# net device ()
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:09:c0:ff:ec:4
8", ATTR{dev_id}=="0x0", ATTR{type}=="1", KERNEL=="eth*", NAME="eth1"
3.我所做的测试,由于我有双网卡,当我在Kernel中两块网卡都选上时,感觉系统起来一切正常.
Kernel打印:
dm9000 Ethernet Driver, V1.31
eth0: dm9000e at c087e000,c0882002 IRQ 41 MAC: 00:09:c0:ff:ec:48 (chip)
....
eth1: register 'smsc9500' at usb-s5pv210-1.2, smsc9500 USB 2.0 Ethernet, 00:80:0f:95:06:42
最后用ifconfig查看
内容如下:
eth0 Link encap:Ethernet HWaddr 00:09:c0:ff:ec:48
inet addr:109.120.23.32 Bcast:109.120.23.255 Mask:255.255.255.0
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:109 errors:0 dropped:0 overruns:0 frame:0
TX packets:31 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:18942 (18.9 KB) TX bytes:4700 (4.7 KB)
Interrupt:41 Base address:0xe000
eth1 Link encap:Ethernet HWaddr 00:80:0f:95:06:42
UP BROADCAST MULTICAST MTU:1500 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:0 (0.0 B) TX bytes:0 (0.0 B)
lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
UP LOOPBACK RUNNING MTU:16436 Metric:1
RX packets:2 errors:0 dropped:0 overruns:0 frame:0
TX packets:2 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:100 (100.0 B) TX bytes:100 (100.0 B)
第一个疑问:
为什么在70-persistent-net.rules 文件中,eth0 对应的MAC地址是 00:80:0f:95:06:42
,而这里却是eth1对应的MAC地址是00:80:0f:95:06:42???
(不过我猜测,之所以出现这样的现象是,估计系统是按网卡的加载顺序来定的,并没有去匹配rules文件.)
4.如果Kernel只选中DM9000,
系统起来后,Kernel打印
dm9000 Ethernet Driver, V1.31
eth0: dm9000e at c087e000,c0882002 IRQ 41 MAC: 00:09:c0:ff:ec:48 (chip)
用ifconfig查看
eth0 Link encap:Ethernet HWaddr 00:09:c0:ff:ec:48
inet addr:109.120.23.32 Bcast:109.120.23.255 Mask:255.255.255.0
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:301 errors:0 dropped:0 overruns:0 frame:0
TX packets:35 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:49373 (49.3 KB) TX bytes:5398 (5.3 KB)
Interrupt:41 Base address:0xe000
lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
UP LOOPBACK RUNNING MTU:16436 Metric:1
RX packets:2 errors:0 dropped:0 overruns:0 frame:0
TX packets:2 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:100 (100.0 B) TX bytes:100 (100.0 B)
5.如果Kernel只选中SMSC9500,
系统起来后,Kernel打印
eth0: register 'smsc9500' at usb-s5pv210-1.2, smsc9500 USB 2.0 Ethernet, 00:80:0f:95:06:42
用ifconfig查看
lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
UP LOOPBACK RUNNING MTU:16436 Metric:1
RX packets:2 errors:0 dropped:0 overruns:0 frame:0
TX packets:2 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:100 (100.0 B) TX bytes:100 (100.0 B)
用ifconfig -a查看
eth2 Link encap:Ethernet HWaddr 00:80:0f:95:06:42
BROADCAST MULTICAST MTU:1500 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:0 (0.0 B) TX bytes:0 (0.0 B)
lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
UP LOOPBACK RUNNING MTU:16436 Metric:1
RX packets:2 errors:0 dropped:0 overruns:0 frame:0
TX packets:2 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:100 (100.0 B) TX bytes:100 (100.0 B)
我的第二个问题: 为什么这里用ifconfig看不到东西,用ifconfig -a为什么会出现eth2呢
为什么不是eth0???
希望能得到大家的解释.
谢谢
xbwang020 于 2010-05-17 08:41:24发表:
是两个网卡..
hongyu315 于 2010-05-10 18:04:23发表:
你的是2个网卡吗?
xbwang020 于 2010-05-06 19:55:53发表:
怎么没人回复啊....求救中....
xbwang020 于 2010-05-05 10:34:16发表:
第二个问题 我听说是由于Userspace的配置文件造成的.
由于SMSC9500是USB 网卡,系统起来后,会遍历某个文件...
如果已经存在eth0和eth1,就会创建eth2....
但是是哪个文件呢.?? 谁能说下.
hyibmsoft 于 2010-04-30 16:56:48发表:
怀疑楼上的 实际好像不是的
hyibmsoft 于 2010-04-30 16:56:46发表:
怀疑楼上的 实际好像不是的
hyibmsoft 于 2010-04-30 16:56:44发表:
怀疑楼上的 实际好像不是的
hantu 于 2010-04-30 14:08:28发表:
很简单,哪一个网卡是eth0,哪一个是eth1,并不由你的/etc/udev/rules.d/70-persistent-net.rules配置文件来决定,系统在启动过程中先检测到的网卡就是eth0,其次是eth1。