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

    Setting 100baseTX full-duplex persistently on LAGG members

    Scheduled Pinned Locked Moved General pfSense Questions
    4 Posts 3 Posters 1.1k 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.
    • A Offline
      ads76
      last edited by

      Hi everyone

      You may have seen that I noted in https://forum.pfsense.org/index.php?topic=89085.0 that I have some LAGG interfaces and the upstream colo provider requires we set them at 100baseTX full-duplex. There's no GUI facility to do this on a LAGG and no GUI facility to do this on the LAGG members since they don't have their own config page.

      I can do it on the command line manually with

      ifconfig igb0 media 100baseTX mediaopt full-duplex
      ifconfig bce0 media 100baseTX mediaopt full-duplex

      but that doesn't survive a reboot.

      I attempted to do it by creating /etc/rc.conf.local containing:

      #!/bin/sh
      ifconfig_igb0="media 100baseTX mediaopt full-duplex"
      ifconfig_bce0="media 100baseTX mediaopt full-duplex"

      But that doesn't seem to set it, when run manually or at boot time.

      I also removed each NIC from the LAGG, create a new interface with that NIC, set it at 100baseTX full-duplex, removed the interface and re-added the NIC to the LAGG, that appeared to work but again didn't survive a reboot. I also noticed that I couldn't do it on a NIC that isn't currently connected to the network (one of the NICs in the LAGG is disconnected).

      Without being full-duplex, throughput is noticeably slow and CARP VIPs on the LAGGs are unstable due to packet errors and collisions.

      I also notice that whatever the status of the interface speed and duplex, the LAGG reports itself as "media: Ethernet autoselect"

      Can anybody advise on how to set this so that is persists after a reboot?

      1 Reply Last reply Reply Quote 0
      • H Offline
        heper
        last edited by

        https://doc.pfsense.org/index.php/Executing_commands_at_boot_time

        enjoy :)

        1 Reply Last reply Reply Quote 0
        • A Offline
          ads76
          last edited by

          Thanks for that. I backed up the config for all areas, edited the file in Notepad++ and added:

          <shellcmd>ifconfig igb0 media 100baseTX mediaopt full-duplex</shellcmd>
          <shellcmd>ifconfig bce0 media 100baseTX mediaopt full-duplex</shellcmd>
          

          Immediately above:

          I didn't touch anything else. Restored the config, the firewall rebooted and wouldn't get past the bootloader, throwing the error:

          boot t/config: -S9600 -DNo t/config

          It took me about 90 mins to figure this out, but it seems like the restore process added:

          -S9600 -D

          to /boot.config

          It occurred to me that /boot/loader.conf wasn't getting passed so I passed it manually and the firewall came up.

          Any case, when it came up, I noticed the serial console was now enabled in the GUI. I disabled it and /boot.config was empty again. Config restore bug? I didn't touch it myself…

          Firewall reboots fine now and my interface came up in 100baseTX full-duplex mode, so thanks for your help. I include the above in case others encounter the same issue.

          1 Reply Last reply Reply Quote 0
          • M Offline
            mikeisfly
            last edited by

            Download a package called shellcmd. Add your command in there and it will Survive a reboot.

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