show this : Jun 10 01:22:50 Chuchi modprobe: can't locate module lo:0 Jun 10 01:22:50 Chuchi modprobe: can't locate module lo:1 [....] Jun 10 01:23:24 Chuchi modprobe: can't locate module lo:48 Jun 10 01:23:24 Chuchi modprobe: can't locate module lo:49 jun 10 01:23:24 Chuchi network: Bringing up interface lo succeeded and eth0 =
you've got your own kernel compiled, without IP aliasing support, correct? linuxconf doesn't handle this gracefully. You can comment out the portion of ifup-aliases that calls linuxconf and the messages will go away... (or rpm -e linuxconf ;) )
*** Bug 3054 has been marked as a duplicate of this bug. *** "can't locate module <netdev>:xx" kernel warnings are produced when /etc/sysconfig/network-scripts/ifup-post runs ifup-aliases (where <netdev> is typically lo or eth0 and xx is a number from 0 to 49). Suggested fix: change line 20 of ifup-post to if [ "$ISALIAS" = "yes" ] ; then (please check that this is correct though!) ------- Additional Comments From jturner 05/26/99 11:17 ------- This issue has been forwarded to a developer for further review. ------- Additional Comments From adam 05/26/99 20:07 ------- These warnings are being generated from other startup scripts too. I haven't figured out which ones yet, but hopefully if I never do, someone who knows more about initscripts than me will know where else they're coming from. ------- Additional Comments From adam 06/02/99 21:26 ------- I've finally figured out where else these warnings are coming from, and it's whenever linuxconf --hint netdev gets run. I looked at the linuxconf code, and thought about it, and maybe it is actually doing the right thing, in which case presumably the only fix is to add things like alias lo:* off alias eth0:* off to /etc/conf.modules. Or maybe linuxconf should do this itself?
*** Bug 3338 has been marked as a duplicate of this bug. *** I started poking around in the /etc/sysconfig/network- scripts stuff trying to debug some problems I was seeing in aliased network interfaces. Doing this I bumped into some weirdness/inconsistencies in the system setup which I believe relate to linuxconf. (1) Aliased devices get different ipaddr, device-name parings than specified in the /etc/sysconfig/network- scripts files. I have the following setup: [root@hobbes network-scripts]# cat ifcfg-eth0 DEVICE=eth0 IPADDR=192.168.10.1 NETMASK=255.255.0.0 NETWORK=192.168.0.0 BROADCAST=192.168.255.255 ONBOOT=yes [root@hobbes network-scripts]# cat ifcfg-eth0:0 DEVICE=eth0:0 IPADDR=192.168.10.2 [root@hobbes network-scripts]# grep IPADDR ifcfg-eth0:* ifcfg-eth0:0:IPADDR=192.168.10.2 ifcfg-eth0:1:IPADDR=192.168.10.3 ifcfg-eth0:2:IPADDR=192.168.10.4 ifcfg-eth0:3:IPADDR=192.168.10.5 ifcfg-eth0:4:IPADDR=192.168.10.6 ifcfg-eth0:5:IPADDR=192.168.10.7 ifcfg-eth0:6:IPADDR=192.168.10.8 ifcfg-eth0:7:IPADDR=192.168.10.9 ifcfg-eth0:8:IPADDR=192.168.10.10 ifcfg-eth0:9:IPADDR=192.168.10.11 ifcfg-eth0:10:IPADDR=192.168.10.12 ifcfg-eth0:11:IPADDR=192.168.10.13 [root@hobbes network-scripts]# But when the alias devices are enabled they are given _different_ ipaddr, device-name parings than I specified. If you read ifup-aliases, you see that this comes from linuxconf, which is returning messed up data: [root@hobbes network-scripts]# linuxconf --hint ipalias eth0 add eth0:0 192.168.10.2 255.255.255.255 192.168.10.2 add eth0:1 192.168.10.3 255.255.255.255 192.168.10.3 add eth0:2 192.168.10.12 255.255.255.255 192.168.10.12 add eth0:3 192.168.10.13 255.255.255.255 192.168.10.13 add eth0:4 192.168.10.4 255.255.255.255 192.168.10.4 add eth0:5 192.168.10.5 255.255.255.255 192.168.10.5 add eth0:6 192.168.10.6 255.255.255.255 192.168.10.6 add eth0:7 192.168.10.7 255.255.255.255 192.168.10.7 add eth0:8 192.168.10.8 255.255.255.255 192.168.10.8 add eth0:9 192.168.10.9 255.255.255.255 192.168.10.9 add eth0:10 192.168.10.10 255.255.255.255 192.168.10.10 add eth0:11 192.168.10.11 255.255.255.255 192.168.10.11 [root@hobbes network-scripts]# Not having these paring the way I specified messes things up when I need to disable a specific network interface. For example, let's say that I need to disable 192.168.10.12 which I specified to be eth0:10. Naturally, I would type "ifdown eth0:10". But that actually takes down 192.168.10.10, not .12. Evidence: [root@hobbes network-scripts]# ifdown eth0:10 [root@hobbes network-scripts]# ifconfig | grep -B 1 192.168.10.12 eth0:2 Link encap:Ethernet HWaddr 00:40:05:16:91:49 inet addr:192.168.10.12 Bcast:192.168.10.12 Mask:255.255.255.255 [root@hobbes network-scripts]# ifconfig | grep -B 1 192.168.10.10 [root@hobbes network-scripts]# (2) Inconstancy between linuxconf settings and ifconfig- eth0:* settings There are now two ways to enable an aliased network interface whichwill yield different configuration: using ifup-aliases (which grabs config from linuxconf), and using ifup (which grabs config from ifconfig-eth0:* files) Here is an example: [root@hobbes network-scripts]# ifup eth0:0 [root@hobbes network-scripts]# ifconfig eth0:0 eth0:0 Link encap:Ethernet HWaddr 00:40:05:16:91:49 inet addr:192.168.10.2 Bcast:192.168.10.255 Mask:255.255.255.0 UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 Interrupt:11 Base address:0x300 [root@hobbes network-scripts]# ifdown eth0:0 [root@hobbes network-scripts]# ./ifup-aliases eth0 [root@hobbes network-scripts]# ifconfig eth0:0 eth0:0 Link encap:Ethernet HWaddr 00:40:05:16:91:49 inet addr:192.168.10.2 Bcast:192.168.10.2 Mask:255.255.255.255 UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 Interrupt:11 Base address:0x300 [root@hobbes network-scripts]# Note the different netmasks and broadcast addrs. As per point one, it is possible that we could have gotten different ipaddrs in this test... but I chose an aliased interface that I knew would have the same ipaddr in both setup methods. This one REALLY threw me for a loop back in Red Hat 5.1 when I was having weird problems with my alised interfaces and I thought it was the netmask. Conclusion: Linuxconf needs to be fixed to respect the ifconfig-eth0:* settings better, or ifup-aliases should not get its information from linuxconf. Note: I modified ifup-alises to think that linuxconf was not there and use an old method of just calling ifup for each aliased interface... problem was it went from using 0.22 seconds elapsed time with linuxconf gathering configuration to 6.23 seconds elapsed with only 12 aliased interfaces. That will be a problem when I try to give it a few hundred aliased interfaces. Sorry for the length of this, but I thought it would be best to be very specific and give examples. ------- Additional Comments From notting 06/17/99 18:48 ------- There is a potential fix in initscripts-4.22; linuxconf support is removed, and the main part of ifup-aliases is simply the following: current=0 while : ; do if [ ! -f /etc/sysconfig/network-scripts/$device:$current ]; then return fi /etc/sysconfig/network-scripts/ifup $device:$current current=`expr $current + 1` done However, I don't know how this will affect the speed issue.
- don't upgrade to initscripts-4.21, it's broken. ;) - initscripts-4.22 will contain a fix for this (by not using linuxconf), and will be in the next Raw Hide release.
I just grabbed initscripts-4.23-1 from Raw Hide and it was way too slow. (Actually it was broken out-of-box because it was looking for the wrong filenames, but I fixed that.) On my P166 with 64MB RAM, it took 2:05.67elapsed with 98%CPU to startup the aliases on a class C block (eth0:0 through eth0:253). I have a patch that implements an ifup-aliases without simply calling ifup for each alias. The ifup and related shell scripts are really bulky and are just not meant to be called 255 times. On the same problem, my patch took 0:14.91elapsed with 99%CPU of which about 30% was spent in the actual ifconfig calls. My version is also more robust in that it will remove aliased interfaces in order to create others and get the correct end result. Also will update the netmasks and broadcasts of currently running interfaces, if they are wrong. I've also implemented an ifdown-aliases. All of this in shell. I've done basic testing, but nothing super extensive. I've left the print statements in but commented out for you, so you can see how it works internally if you want. A good tip is to change the "eval" calls to "echo" commands to see some of the auto-generated code. I'll scoot the patch out in a bit.
I've just done some more work on the ifup-aliases program. It now supports ranged based clone interface configuration. (It was easy enough to add to what I had.) Here's an example range configuration file: $ cat /etc/sysconfig/network-scripts/ifcfg-eth0-range1 CLONENUM_START=0 IPADDR_START=192.168.30.1 IPADDR_END=192.168.30.254 NETMASK=255.255.255.255 $ The patch is on the net at http://www.davideous.com/misc/initscripts- ifupalias.patch, but I'll be doing the proper e-mail submission in a moment.
New patch coming your way. Has some improvements to make it run faster.. I can now configure 1024 aliased interfaces in 25 sec (of which 16 seconds is the ifconfig calls). Also, includes documentation at the top of the ifup-aliases file on the ifcfg-$DEV-range file format and the speed considerations.