> If the if-pre-up.d script is changed to use "ifup" I think the following > configuration in /etc/network/interfaces would make sense :
Well, first I seem to remember that using ifup used to cause problems, but besides that, it would mean that you have to define all the interfaces explicity and as inet manual and that doesn't make sense at all to me. Besides, I've seen people doing things like the one you propose (adding configs for the bridge ports) and that was causing problems, not solving anything. > The proposed configuration is opened to suggestions as maybe that would > make more sense to support a mtu directive in the bridge configuration > stanza (which would tentatively set the mtu of all devices part of the > bridge). Well. you've opened some interesting discussion here, let's see if we can get this to a point we all agree on. There is a long standing bug we have and that still exists because I don't know how we should deal with all these MTU things... the bug is #292088 http://bugs.debian.org/292088 and is asking for more doc on MTU stuff, I'm CCing the old bug to let possible followers find about this discussion but I'd rather have all discussion on the new bug as the old one was calling for doc and doc will result of the implementation we need to agree on here, regarding the kernel problems commented on #292088 they seem to be fixed on current kernels, at least for the tests I run on my systems. I won't be merging both bugs as the old is about doc and this one is about implementing new functionality. I believe that what is coherent here is that both the bridge interface and the underlaying interfaces (bridge ports) have the same MTU. So one could write something that checks to see if there is a MTU set for the bridge interface and sets this for all the bridge ports, no problem here as it is the user who is requesting this and he should know what MTU the interfaces support (we are not doing this yet, but I think we should add this for the next version if we agree on this). There is only one thing I'm not sure about this case, and it is what to do if you have a 1500 port and a 9000 port, should we check if the MTU of the port is higher than the one we are setting for the bridge and in that case leave the port with the big MTU? I believe that in most cases this will be because the MTU of the port that has a big MTU is set to the default one, not because the user had set it, so I think that setting it to the bridge one is the wanted thing on this case, and the user could still set a higher MTU for this port if he wants with a post-up ifconfig command (Note: document this as an example if we agree to set this). Thus I'd say, set the MTU of all the ports to the bridge one on this case (user specifies the MTU for the bridge). Ok, the next thing to solve would be the case where the user doesn't specify a MTU, we could be tempted to do several things here: We could explore all the ports and choose the bigger MTU among them to set it to all the ports, but this could force higher than supported MTUs on some interfaces, thus this option seems like trouble. We could set them all (including the bridge) to the smaller supported MTU. I see no problems with this one. If I had to go with one of these two I'd choose the later, I believe it is the safest option. Please note that we would have the option of setting a big MTU on the bridge and this would propagate down to all the ports, so if you want a bigger MTU that would be the way to go. However there is another option, if you are not specifying a MTU it could be because you want the kernel to decide here, and I've been doing some tests on this, the bridge will dynamically adapt to set its MTU to be equal to that of the smaller of it's ports, so if you have a giga with a 9000 MTU and attach a typical DSL interface with a 1492 MTU the bridge is going to set to a MTU of 1492, farthermore, it won't allow manually setting an MTU higher than what it's ports allow, so it is playing safe here, of course. But if you only have giga interfaces that are all set to 9000 the resulting bridge will go with a MTU of 9000. So... what should we do if the user doesn't specify a MTU? I'd say... don't do a thing, the less you mess with things the less trouble you'll get (less interactions with user scripts, bridge kernel driver and NICs kernel drivers). I still haven't taken a look at how to implement this, I want to agree on the good solution and then take a look at the implementation, but I don't think there should be any problem in implementing what I have exposed as my sugestions on how to do this, which is to set the MTU of the ports to that of the bridge when the user specifies this value. One last thing for the future... if we implement the hotplug addition of interfaces like we want per #626152, still waiting on #568479 of ifupdown, we'll net to try to set the MTU of the hotpluged interfaces we try to attach, to what? the current bridge MTU? or the MTU specified on the interfaces file? :-???? Regards... -- Manty/BestiaTester -> http://manty.net -- To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org