Setting MTU on Bridged interfaces does not set MTU on members interfaces

Hi all,

I posted this in the Network secstion a few weeks ago and no one seemed to know that was up.

I think it's a bug/overlooked use case, but when you have interfaces bridged in the UCI config, the MTU setting does not get applied to the member interfaces (physical or VLAN).

config interface 'lan'
        option proto 'static'
        option netmask '255.255.255.0'
        option ip6assign '60'
        option ipaddr '192.168.1.1'
        option type 'bridge'
        option mtu '9000'
        option ifname 'eth1 eth4.10'

When I boot using this config I have connectivity issues with devices using Jumbo frames. ifconfig confirms that MTUs on the members interfaces are still at default 1500.

eth1      Link encap:Ethernet  HWaddr 0C:C4:7A:AB:39:3D
          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)
          Memory:df440000-df45ffff

eth4      Link encap:Ethernet  HWaddr 3C:FD:FE:BB:01:50
          inet6 addr: fe80::3efd:feff:febb:150/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500 Metric:1
          RX packets:50176 errors:0 dropped:1 overruns:0 frame:0
          TX packets:37468 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:15692679 (14.9 MiB)  TX bytes:29263711 (27.9 MiB)

eth4.10   Link encap:Ethernet  HWaddr 3C:FD:FE:BB:01:50
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:36728 errors:0 dropped:0 overruns:0 frame:0
          TX packets:20850 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:9314410 (8.8 MiB)  TX bytes:26473088 (25.2 MiB)

I have to manually use the ifconfig tool to set the MTU (i.e. ifconfig eth4.10 mtu 9000) to get the network back up and running correctly.

Obviously these commands could be scritped, however it was my understanding the UCI network config should be doing this .

Any thoughts?

I could be out to lunch here, but since the bridge is separate from its members, why is configuring all elements individually a big problem?

You mean add each interface in the network config as no-protocol interfaces in addition to the bridge?

I’ll see if that works.

I didn’t mean to come across as being lazy! My thought process is that you can’t have a higher MTU on a bridge if the member physical interfaces don’t also set that MTU, so it would seem logical that the MTU setting would ‘cascade’ in this case.

Ah, yes that sounds nice, also it would be a nice way to report back the largest common MTU supported by all bridge members. No idea wheter UCI is supposed to offer that.