Bug #3703
closedMTU not applied on reboot
Added by Steve Russell over 10 years ago. Updated almost 8 years ago.
0%
Description
Set MTU on LAN to 9000. Save. Apply. 'Ping -f -l 8972 pfsense' from windows box. Timed out.
Save LAN settings again. Apply. Ping works perfectly.
Reboot pfSense. Ping fails. Save LAN settings again. Apply. Ping works perfectly.
UI Retains MTU setting correctly, it just is not applied successfully first time, and must be re-applied on reboot.
This is on 2.1.3 amd64, and also at least one version of 2.2 I tried in May...
Updated by Renato Botelho over 10 years ago
Are you sure the MTU is not being set? Could you paste the output of ifconfig? I tried it both on 2.1.3 and 2.2 and it worked as expected
Updated by Jim Pingle over 10 years ago
Also be sure to specify any additional configurations you have on the interfaces such as lagg, vlans, bridges, gif/gre, etc. Some may be visible in ifconfig, but it may not show everything as expected.
Updated by Steve Russell over 10 years ago
This is the ifconfig output after first save/apply:
$ ifconfig
em0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 9000
options=42098<VLAN_MTU,VLAN_HWTAGGING,VLAN_HWCSUM,WOL_MAGIC,VLAN_HWTSO>
ether 00:15:17:20:c4:d0
inet6 fe80::215:17ff:fe20:c4d0%em0 prefixlen 64 scopeid 0x1
inet 10.69.56.2 netmask 0xffffff00 broadcast 10.69.56.255
nd6 options=1<PERFORMNUD>
media: Ethernet autoselect (1000baseT <full-duplex>)
status: active
em1: flags=8c02<BROADCAST,OACTIVE,SIMPLEX,MULTICAST> metric 0 mtu 1500
options=4019b<RXCSUM,TXCSUM,VLAN_MTU,VLAN_HWTAGGING,VLAN_HWCSUM,TSO4,VLAN_HWTSO>
ether 00:15:17:20:c4:d1
media: Ethernet autoselect
status: no carrier
em2: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500
options=42098<VLAN_MTU,VLAN_HWTAGGING,VLAN_HWCSUM,WOL_MAGIC,VLAN_HWTSO>
ether 00:21:70:0a:6d:0f
inet 24.154.4.22 netmask 0xffffff00 broadcast 24.154.4.255
inet6 fe80::221:70ff:fe0a:6d0f%em2 prefixlen 64 scopeid 0x3
nd6 options=1<PERFORMNUD>
media: Ethernet autoselect (1000baseT <full-duplex>)
status: active
enc0: flags=0<> metric 0 mtu 1536
pfsync0: flags=0<> metric 0 mtu 1460
syncpeer: 224.0.0.240 maxupd: 128 syncok: 1
lo0: flags=8049<UP,LOOPBACK,RUNNING,MULTICAST> metric 0 mtu 16384
options=3<RXCSUM,TXCSUM>
inet 127.0.0.1 netmask 0xff000000
inet6 ::1 prefixlen 128
inet6 fe80::1%lo0 prefixlen 64 scopeid 0x6
nd6 options=3<PERFORMNUD,ACCEPT_RTADV>
pflog0: flags=100<PROMISC> metric 0 mtu 33144
It looks to be correct, at least the mtu. Output after second save/apply is identical. I have nothing interesting configured on the interface. I do currently have all offloading disabled.
I have verified again, with the first ifconfig output showing mtu 9000, I cannot ping -f -l 8972 to it.
Thanks!
Updated by Jim Pingle over 10 years ago
Please also include "netstat rnW" - watch the mtu column there.
Updated by Steve Russell over 10 years ago
Netstat -rnW output after first save/apply, while ifconfig says mtu 9000
$ netstat -rnW
Routing tables
Internet:
Destination Gateway Flags Refs Use Mtu Netif Expire
default 24.154.4.1 UGS 0 1103296 1500 em2
10.69.56.0/24 link#1 U 0 299 1500 em0
10.69.56.2 link#1 UHS 0 0 16384 lo0
24.154.4.0/24 link#3 U 0 78135 1500 em2
24.154.4.22 link#3 UHS 0 0 16384 lo0
127.0.0.1 link#6 UH 0 0 16384 lo0
Internet6:
Destination Gateway Flags Refs Use Mtu Netif Expire
::1 ::1 UH 0 0 16384 lo0
fe80::%em0/64 link#1 U 0 0 1500 em0
fe80::215:17ff:fe20:c4d0%em0 link#1 UHS 0 0 16384 lo0
fe80::%em2/64 link#3 U 0 0 1500 em2
fe80::221:70ff:fe0a:6d0f%em2 link#3 UHS 0 0 16384 lo0
fe80::%lo0/64 link#6 U 0 0 16384 lo0
fe80::1%lo0 link#6 UHS 0 0 16384 lo0
ff01::%em0/32 fe80::215:17ff:fe20:c4d0%em0 U 0 0 1500 em0
ff01::%em2/32 fe80::221:70ff:fe0a:6d0f%em2 U 0 0 1500 em2
ff01::%lo0/32 ::1 U 0 0 16384 lo0
ff02::%em0/32 fe80::215:17ff:fe20:c4d0%em0 U 0 0 1500 em0
ff02::%em2/32 fe80::221:70ff:fe0a:6d0f%em2 U 0 0 1500 em2
ff02::%lo0/32 ::1 U 0 0 16384 lo0
Updated by Steve Russell over 10 years ago
fwiw, in UI going from mtu 9000 to mtu 'blank', after multiple save/apply, ifconfig, netstat, and ping all still show mtu 9000.
Only takes one save/apply to change from mtu 9000 to mtu 1500.
Updated by Chris Buechler over 10 years ago
- Status changed from New to Resolved
- Target version set to 2.2
- Affected Version set to 2.1.x
the root issue is the link route MTUs in FreeBSD 8.3 aren't correctly updated. That works in 10.x, and hence 2.2 (I've done a lot of testing in this area in the last month or so). A manual 'route change' to adjust the MTU is necessary in 2.1x versions. Such as: "route change 10.69.56.0/24 -mtu 9000"
Updated by koo kim almost 8 years ago
Is it Resolved ?
2.3.2-RELEASE-p1 (amd64)
built on Fri Sep 30 14:36:56 CDT 2016
FreeBSD 10.3-RELEASE-p9
I have to save the interface setting on each reboot to applied the right MTU