You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I have updated my IDF branch (master or release) to the latest version and checked that the issue is present there.
I have searched the issue tracker for a similar issue and not found a similar issue.
General issue report
Hi,
I'm looking to make my ethernet netif's mtu match that of wireguard at 1420 to prevent fragmentation, but the default is 1500 and that doesn't seem changeable at all.
Since the rust wrappers in esp-idf-svc are using the esp-netif api to create interfaces, the raw lwip interface is abstracted and we can't access the mtu. And even if we could (it's most likely possible through shenanigans) I'm pretty sure changing the mtu at runtime is gonna make everything explode.
Soooo... How do we create a netif with a custom mtu? Is it even possible?
From what I could see the mtu is hardcoded here,
/** * In this function, the hardware should be initialized. * Invoked by ethernetif_init(). * @param netif lwip network interface which has already been initialized */staticvoidethernet_low_level_init(structnetif*netif)
{
netif->mtu=1500;
...
}
And this function is called by
/** * @brief LWIP's network stack init function for Ethernet * @param netif LWIP's network interface handle * @return ERR_OK on success */err_tethernetif_init(structnetif*netif);
Which should be the init function passed when initializing an ethernet netif.
Is the mtu parameter just not exposed at all? In which case, what would be required to expose it in the api?
The text was updated successfully, but these errors were encountered:
indexds
changed the title
MTU in esp-idf
Modifying Ethernet MTU in esp-netif API
Feb 2, 2025
Answers checklist.
General issue report
Hi,
I'm looking to make my ethernet netif's mtu match that of wireguard at 1420 to prevent fragmentation, but the default is 1500 and that doesn't seem changeable at all.
Since the rust wrappers in
esp-idf-svc
are using the esp-netif api to create interfaces, the raw lwip interface is abstracted and we can't access the mtu. And even if we could (it's most likely possible through shenanigans) I'm pretty sure changing the mtu at runtime is gonna make everything explode.Soooo... How do we create a netif with a custom mtu? Is it even possible?
From what I could see the mtu is hardcoded here,
And this function is called by
Which should be the init function passed when initializing an ethernet netif.
Is the mtu parameter just not exposed at all? In which case, what would be required to expose it in the api?
The text was updated successfully, but these errors were encountered: