Netgate Discussion Forum
    • Categories
    • Recent
    • Tags
    • Popular
    • Users
    • Search
    • Register
    • Login

    Jumbo frame problem with ESXi 5.5 and vmxnet3 driver

    Scheduled Pinned Locked Moved Virtualization
    26 Posts 5 Posters 10.6k Views
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • johnpozJ Offline
      johnpoz LAYER 8 Global Moderator
      last edited by

      "When I check with the command route get IPADDRESS for a host on the DMZ configured for 9000 MTU, it shows 1500 MTU"

      I would say that is the problem..

      "so tagged networks are passed to PFsense as untagged interfaces. (PFsense is not tagging)"

      So pfsense has not vlan interfaces - just what it thinks are just normal interfaces? So I just created a vlan and put in on 192.168.4.0/24 and if i do a route get to an IP on that network it shows 9000 as the mtu

      [2.1.4-RELEASE][root@pfsense]/root(16): route get 192.168.4.42
        route to: 192.168.4.42
      destination: 192.168.4.0
            mask: 255.255.255.0
        interface: vmx3f3_vlan10
            flags: <up,done>recvpipe  sendpipe  ssthresh  rtt,msec    mtu        weight    expire
            0        0        0        0      9000        1        0</up,done>

      An intelligent man is sometimes forced to be drunk to spend time with his fools
      If you get confused: Listen to the Music Play
      Please don't Chat/PM me for help, unless mod related
      SG-4860 25.07 | Lab VMs 2.8, 25.07

      1 Reply Last reply Reply Quote 0
      • I Offline
        ivanhoek
        last edited by

        Yes sir, Pfsense thinks these are normal interfaces. All the VLAN tags terminate in ESXi and are exposed to PFsense as additional interfaces with no tag.

        Would that be a problem?

        I did it this way to make it more flexible, as I can add other VM's to the same networks for other purposes such as sniffing traffic. (I have a tcpdump VM that I send mirrored traffic to monitor)

        1 Reply Last reply Reply Quote 0
        • johnpozJ Offline
          johnpoz LAYER 8 Global Moderator
          last edited by

          I can add any vm I want to any physical network I want via simple giving it an interface int he vswitch that is tied to that physical network.

          My pfsense thinks these are normal interfaces, if your get route command is showing mtu of 1500, that is going to be a problem.  When I set the mtu in the gui of the pfsense interface - this is when it changed the routing info.  If I just edited the mtu via ifconfig - the interface showed the correct mtu, but the get route command still showed only 1500.  Once I edited the interface in the gui - then the route command showed the 9000 mtu and worked fine.

          An intelligent man is sometimes forced to be drunk to spend time with his fools
          If you get confused: Listen to the Music Play
          Please don't Chat/PM me for help, unless mod related
          SG-4860 25.07 | Lab VMs 2.8, 25.07

          1 Reply Last reply Reply Quote 0
          • I Offline
            ivanhoek
            last edited by

            Interesting, I've only made changes via the GUI. Never made changes in the CLI.

            I do see that route get shows the 1500 MTU and agree that is the reason for my problem.

            Not sure how to resolve that though.

            Do you have any ideas?

            1 Reply Last reply Reply Quote 0
            • johnpozJ Offline
              johnpoz LAYER 8 Global Moderator
              last edited by

              try resetting it in the gui, say back to 1500 and then to 9000 again.

              An intelligent man is sometimes forced to be drunk to spend time with his fools
              If you get confused: Listen to the Music Play
              Please don't Chat/PM me for help, unless mod related
              SG-4860 25.07 | Lab VMs 2.8, 25.07

              1 Reply Last reply Reply Quote 0
              • I Offline
                ivanhoek
                last edited by

                Well, it definitely doesn't work for me. I don't have the JUMBO_MTU under ifconfig, even though I do show the 9000 MTU.

                em1: flags=8943 <up,broadcast,running,promisc,simplex,multicast>metric 0 mtu 9000
                options=9b <rxcsum,txcsum,vlan_mtu,vlan_hwtagging,vlan_hwcsum>ether redacted
                inet redacted netmask 0xffffff00 broadcast redacted
                inet6 redacted prefixlen 64
                inet6 fe80::1:1%em1 prefixlen 64 scopeid 0x2
                nd6 options=1 <performnud>media: Ethernet autoselect (1000baseT <full-duplex>)
                status: active

                When I do route get for a host, I see 1500 MTU.

                route get redacted
                  route to: redacted
                destination: redacted
                      mask: 255.255.255.0
                  interface: em1
                      flags: <up,done>recvpipe  sendpipe  ssthresh  rtt,msec    mtu        weight    expire
                      0        0        0        0      1500        1        0

                I've even rebooted..

                Should I be using the vmx drivers? Does this not work with EM?

                Regards,</up,done></full-duplex></performnud></rxcsum,txcsum,vlan_mtu,vlan_hwtagging,vlan_hwcsum></up,broadcast,running,promisc,simplex,multicast>

                1 Reply Last reply Reply Quote 0
                • johnpozJ Offline
                  johnpoz LAYER 8 Global Moderator
                  last edited by

                  well that might be an issue..  did you install the open vmware tools, ie the package or the actual tools from vmware?

                  I am running the actual tools from vmware for the driver of vmxnet3

                  An intelligent man is sometimes forced to be drunk to spend time with his fools
                  If you get confused: Listen to the Music Play
                  Please don't Chat/PM me for help, unless mod related
                  SG-4860 25.07 | Lab VMs 2.8, 25.07

                  1 Reply Last reply Reply Quote 0
                  • I Offline
                    ivanhoek
                    last edited by

                    Yes, I had openVMtools from the Pfsense package repository.

                    I've just reworked my setup and I'm now running native Vmtools from VMware as well, and using vmxnet3. Same exact results:

                    vmx3f2: flags=8943 <up,broadcast,running,promisc,simplex,multicast>metric 0 mtu 9000
                            options=403bb <rxcsum,txcsum,vlan_mtu,vlan_hwtagging,jumbo_mtu,vlan_hwcsum,tso4,tso6,vlan_hwtso>ether redacted
                            inet redacted netmask 0xffffff00 broadcast redacted
                            inet6 redacted prefixlen 64
                            inet6 fe80::1:1%vmx3f2 prefixlen 64 scopeid 0x3
                            nd6 options=1 <performnud>media: Ethernet 10Gbase-T
                            status: active

                    [2.1.4-RELEASE][root@pfsense]/root(10): route get redacted
                      route to: redacted
                    destination: redacted
                          mask: 255.255.255.0
                      interface: vmx3f2
                          flags: <up,done>recvpipe  sendpipe  ssthresh  rtt,msec    mtu        weight    expire
                          0        0        0        0      1500        1        0

                    The host (a VM on the same host on another NIC) I'm issuing route get against is configured for MTU of 9000 and can use that MTU when communicating with my NAS.</up,done></performnud></rxcsum,txcsum,vlan_mtu,vlan_hwtagging,jumbo_mtu,vlan_hwcsum,tso4,tso6,vlan_hwtso></up,broadcast,running,promisc,simplex,multicast>

                    1 Reply Last reply Reply Quote 0
                    • C Offline
                      cmb
                      last edited by

                      FreeBSD 8.3 has an issue where changing the MTU doesn't update the MTU of any of the affected routes until you either manually change it, or reboot the system.

                      1 Reply Last reply Reply Quote 0
                      • I Offline
                        ivanhoek
                        last edited by

                        Okay,

                        That's good to know. I have rebooted though, I even rebooted the entire VM host to be sure with no change..

                        How do I manually change the MTU for a route? Will that change stick through reboots?

                        1 Reply Last reply Reply Quote 0
                        • I Offline
                          ivanhoek
                          last edited by

                          Well, new quirk.. If I try to set lower values on the GUI, the actually take properly.

                          So if I set the MTU to be 2000, it works.
                          If I set it to be 8000, it works.
                          If I set it to be 8999, it works.

                          However, if I set it to be 9000, it won't take and the previous value is preserved.

                          1 Reply Last reply Reply Quote 0
                          • I Offline
                            ivanhoek
                            last edited by

                            Well, nevermind that.. if I reboot then the MTU for the route goes back to 1500, yet the interface is set to 8000 (for example).

                            I give up. There's clearly something wrong, but I can't figure out what or how to fix it permanently.

                            I'll try again on a future release.

                            1 Reply Last reply Reply Quote 0
                            • johnpozJ Offline
                              johnpoz LAYER 8 Global Moderator
                              last edited by

                              before you were not even using vmx interface you were on em

                              interface: em1

                              So that would explain why no jumbo_mtu listed for the interface.

                              I have not had to reboot anything to get this working.  You running 32 or 64 bit pfsense?

                              An intelligent man is sometimes forced to be drunk to spend time with his fools
                              If you get confused: Listen to the Music Play
                              Please don't Chat/PM me for help, unless mod related
                              SG-4860 25.07 | Lab VMs 2.8, 25.07

                              1 Reply Last reply Reply Quote 0
                              • I Offline
                                ivanhoek
                                last edited by

                                It's 64 bit Pfsense. What could explain the behavior I saw where only the 9000 value for MTU won't take? Any other value works.. at least until I reboot, and then it doesn't.

                                In all cases the MTU is set on the interface, but the routes are not flagged with the appropriate MTU when it's set to 9000 or after rebooting if set to another value.

                                1 Reply Last reply Reply Quote 0
                                • C Offline
                                  cmb
                                  last edited by

                                  I think there are multiple issues at play here. FreeBSD 8.3 has issues in not updating the MTU on routes in jumbo frame scenarios at times, potentially both for the link routes and any associated static routes. Scripting a "route change x.x.x.x/x -mtu 9000" at boot time for all required routes is a suitable workaround where you encounter that and the NIC driver properly handles jumbo frames. vmxnet on 8.3 just doesn't work with jumbo frames from what I've seen. Similar for Broadcom NICs, though those are very reliable and well-performing NICs, in 8.3 they don't work with jumbo frames (an oddity of the hardware that wasn't properly accommodated in the driver at that time, it's since been fixed). These issues have all already been confirmed fixed in FreeBSD 10 and hence 2.2.

                                  1 Reply Last reply Reply Quote 0
                                  • johnpozJ Offline
                                    johnpoz LAYER 8 Global Moderator
                                    last edited by

                                    "vmxnet on 8.3 just doesn't work with jumbo frames"

                                    Looks to be working to me - what driver did you test with?  I don't really see a need for jumbo in my home network.  It would just complicate the connections and not all devices support them.  I could always segment out even more and put my non jumbo on their own segment, etc.  Seems kind of pointless for what I am doing.

                                    As you can see from thread I was able to ping at the full mtu - but be happy to do some other testing to validate its working.

                                    An intelligent man is sometimes forced to be drunk to spend time with his fools
                                    If you get confused: Listen to the Music Play
                                    Please don't Chat/PM me for help, unless mod related
                                    SG-4860 25.07 | Lab VMs 2.8, 25.07

                                    1 Reply Last reply Reply Quote 0
                                    • First post
                                      Last post
                                    Copyright 2025 Rubicon Communications LLC (Netgate). All rights reserved.