Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Intel igb/em Interfaces Broken on 2.6/22.01+ #67

Open
ChronicledMonocle opened this issue Feb 14, 2022 · 166 comments
Open

Intel igb/em Interfaces Broken on 2.6/22.01+ #67

ChronicledMonocle opened this issue Feb 14, 2022 · 166 comments

Comments

@ChronicledMonocle
Copy link

The dhcp lease for connections is not handed through to the ngeth0 interface properly. There isn't any real "errors" in the logs.

If you try to run the script manually after boot you get "ngctl: send msg: File exists"

Logs from pfatt.log:

2022-02-14 14:36:56 :: [pfatt.sh] :: pfSense + AT&T U-verse Residential Gateway for true bridge mode
2022-02-14 14:36:56 :: [pfatt.sh] :: Configuration:
2022-02-14 14:36:56 :: [pfatt.sh] :: ONT_IF: igb0
2022-02-14 14:36:56 :: [pfatt.sh] :: RG_IF: igb1
2022-02-14 14:36:56 :: [pfatt.sh] :: RG_ETHER_ADDR: [MY MAC HERE]
2022-02-14 14:36:56 :: [pfatt.sh] :: attaching interfaces to ng_ether... OK!
2022-02-14 14:36:56 :: [pfatt.sh] :: building netgraph nodes...
2022-02-14 14:36:56 :: [pfatt.sh] :: creating ng_one2many... 2022-02-14 14:37:00 :: [pfatt.sh] :: pfSense + AT&T U-verse Residential Gateway for true bridge mode

I am not running wpa_supplicant mode.

@Grassyloki
Copy link

Can confirm its not working after an upgrade. Following the troubleshooting instructions shows that the modules have loaded. PFatt logs dont show anything.

@bigjohns97
Copy link

Can confirm it is broken for me as well, running supplicant

@neydah700
Copy link

neydah700 commented Feb 15, 2022

Same issue. Not grabbing DHCP.

Edit: I am using the WPA supplicant method.

@ChronicledMonocle
Copy link
Author

Want to confirm that reverting to 2.5.2 or 21.05.2 immediately restores internet for me after setting everything back up.

@neydah700
Copy link

Want to confirm that reverting to 2.5.2 or 21.05.2 immediately restores internet for me after setting everything back up.

Yes, It was an absolute pain in the a**, but restoring to 21.05.2 immediately fixed it for me. IPv6 wouldn't grab for an hour or so but finally started working.

@neydah700
Copy link

Also, I posted on the Netgate Forums. If anyone else wants to add anything over there here is the link. https://forum.netgate.com/topic/169882/22-01-2-6-0-upgrade-broke-dhcp-on-wan-interface-with-custom-startup-script

@SGC1990
Copy link

SGC1990 commented Feb 16, 2022

I am having the same problem and now my WireGuard and other tools don't work and can't get them to work.

@grevelle
Copy link

grevelle commented Feb 17, 2022

Yep - supplicant not working for me either. The last time a new version of pfsense broke pfatt Matt Johnson submitted this issue to pfsense redmine. Should we do that here? Here is the issue that originated the whole thing.

@bigg1969
Copy link

It also broke mine after update. Per the docs, I ran "tcpdump -ei ONT_IF" and "tcpdump -ei RG_IF", which should filter and capture link layer information (2), on my interfaces and captured 0 packets from RG_IP and only the bridged DHCP traffic on the ONT_IF interface.

I reset netgraph, which removes the hooks, rebooted the gateway and modem with tcpdump running and captured 0 packets from the interfaces. Before removing the netgraph hooks, the only traffic I seen on any of the three interfaces, was the DHCP request on the ngeth0 virtual interaface, and the bridged ONT_IF interface. So the DHCP requests are still getting to the correct interface.

The fact that tcpdump doesn't see any traffic makes me think its being filtered, like promisc mode isn't allowing EAPOL 802.1X traffic to be capture, and there fore is not bridged. No authentication mean no DHCP response. IMO

I've moved to inline behind the gateway until this can be figured out. I would be willing to test once a day.

@neydah700
Copy link

neydah700 commented Feb 17, 2022

Okay, had some success today based on info I gathered from all the various discussions online. I think it is something to do with the em(4) driver. Do all of you having issues have Intel NIC's? I put together a test pfSense server from a bunch of spare parts and it worked right away on the latest release. After digging, I couldn't get any Intel NIC to work. Using what I had around (a few crappy USB dongles worked and old PC's with integrated NICs) I had success with everything not Intel GbE. When I re-upgraded my main pfSense box I was able to move my WAN link to an SFP slot (with RJ45 Module) with some success. I say "some" because all my SFP/RJ45 modules are 10GB and they do not negotiate well with the ONT.

Something interesting for me, if_em.ko is present in /boot/kernel on 2.6.0 but wasn't in my previous version of pfSense. My knowledge is limited but I am not sure where the driver was located in the previous version? Anyone smarter than me know?

Some Useful Links:
FreeBSD 12.3 Release Notes (em(4) driver notes) - https://www.freebsd.org/releases/12.3R/relnotes/
Reddit Discussion - https://www.reddit.com/r/PFSENSE/comments/ssgsha/psa_260_breaks_att_bypass/?sort=new
Netgate Forum Discussion - https://forum.netgate.com/topic/99190/att-uverse-rg-bypass-0-2-btc/396?_=1644931323812
OPNSense GIT Issue - #65

@SGC1990
Copy link

SGC1990 commented Feb 17, 2022

I think this is going somewhere because I've tried multiple different boxes but they're all Intel Nics, when I get off work I will try a couple USB dongle's to see if it gets traffic that way.

@neydah700
Copy link

I think this is going somewhere because I've tried multiple different boxes but they're all Intel Nics, when I get off work I will try a couple USB dongle's to see if it gets traffic that way.

The USBs work for me but are slow. Download is like 100m, upload is better at around 400m. I have a 1G SFP that should get here tomorrow. Really hoping that talks better with the ONT then the 10G did.

@SGC1990
Copy link

SGC1990 commented Feb 17, 2022

For USBs to work at 1 gig speeds you have to have 3.1 USB port or better. For FreeBSD, I am using a box equivalent to the netgate 1541 Same everything but a lot more powerful. Let me know how it goes with the other Nics.

@neydah700
Copy link

For USBs to work at 1 gig speeds you have to have 3.1 USB port or better. I am using a box equivalent to the netgate 1541 Same everything but a lot more powerful. Let me know how it goes with the other Nics.

Will do! If it helps I'm using the XG-1537 so USB3.0

@SGC1990
Copy link

SGC1990 commented Feb 17, 2022

Is the usb dongles 3.0, when I was using usb in past it worked great I was able to get full 1gb speeds out of my usb ports. If the usb is 3.0 then I don't know why I am getting full 1gb speeds. But I did downgrade back to 2.5.2 now WireGuard don't work on 2.5.2.

@neydah700
Copy link

Is the usb dongles 3.0

Yep!

@MrCaturdayNight
Copy link

Okay, had some success today based on info I gathered from all the various discussions online. I think it is something to do with the em(4) driver.

Nothing useful to add here but I can confirm I'm using an Intel NIC with the em driver. Neither tethered or supplicant working for me on 22.1 but supplicant is working on 21.7.8

em0: <Intel(R) 82583V> port 0xe000-0xe01f mem 0xdf500000-0xdf51ffff,0xdf520000-0xdf523fff irq 16 at device 0.0 on pci1
em1: <Intel(R) 82583V> port 0xd000-0xd01f mem 0xdf400000-0xdf41ffff,0xdf420000-0xdf423fff irq 17 at device 0.0 on pci2
em2: <Intel(R) 82583V> port 0xc000-0xc01f mem 0xdf300000-0xdf31ffff,0xdf320000-0xdf323fff irq 18 at device 0.0 on pci3
em3: <Intel(R) 82583V> port 0xb000-0xb01f mem 0xdf200000-0xdf21ffff,0xdf220000-0xdf223fff irq 19 at device 0.0 on pci4
em4: <Intel(R) 82583V> port 0xa000-0xa01f mem 0xdf100000-0xdf11ffff,0xdf120000-0xdf123fff irq 16 at device 0.0 on pci5
em5: <Intel(R) 82583V> port 0x9000-0x901f mem 0xdf000000-0xdf01ffff,0xdf020000-0xdf023fff irq 17 at device 0.0 on pci6

I'm on a Protectli FW6D

@bigjohns97
Copy link

I am using an Intel NIC but with the IGB driver.

@SGC1990
Copy link

SGC1990 commented Feb 17, 2022

I am using an Intel NIC but with the IGB driver.

And is it working or not because my system is using igb drivers too and mine is not working

@neydah700
Copy link

neydah700 commented Feb 17, 2022

My knowledge on FreeBSD is limited but I believe igb uses the em(4) driver. All the common Intel cards fall under it (I350, 82575, etc.)

https://www.freebsd.org/releases/12.3R/hardware/

@bigjohns97
Copy link

I am using an Intel NIC but with the IGB driver.

And is it working or not because my system is using igb drivers too and mine is not working

Not working

@neydah700
Copy link

If you look at the if_igb.ko driver in /boot/kernel it just is a shortcut to if_em.ko. I think at one point the two intel drivers merged. https://www.intel.com/content/www/us/en/download/15187/intel-network-adapter-gigabit-base-driver-for-freebsd.html?wapkw=i350%20freebsd

@neydah700
Copy link

Okay, I got everything up and working on my regular Intel NIC. I’m not the biggest expert here so bear with me.

Through troubleshooting I was able to get every non-Intel NIC to authenticate and pull DHCP. After more testing all igb(4) driver-based cards failed. In the /boot/kernel folder I noticed if_igb.ko is simply a shortcut to the em(4) driver (if_em.ko). I am guessing FreeBSD is using this combined driver from intel? https://www.intel.com/content/www/us/en/download/15187/intel-network-adapter-gigabit-base-driver-for-freebsd.html

Alternatively, I found this driver that appears to be for igb(4) separately, and it seems newer. https://www.intel.com/content/www/us/en/download/14610/intel-network-adapter-driver-for-82575-6-and-82580-based-gigabit-network-connections-under-freebsd.html?wapkw=i350%20freebsd

I downloaded a FreeBSD-12.3 VM, its related source code (amd64), and complied the separate igb(4) driver.

I loaded my newly compiled if_igb.ko into the /boot/modules folder with chmod 555 permissions. Next, I added the following two lines to my /boot/loader.conf file to supersede the included driver.

if_igb_load="YES"
if_igb_name="/boot/modules/if_igb.ko"

Rebooted and everything came up just fine!

Feel free to use my compiled if_igb.ko if you don’t want to build your own.
https://github.com/neydah700/pfsense_intel/blob/main/if_igb.ko

Also, for reference here is my pfatt script if anyone needs a reference.
https://github.com/neydah700/pfsense_intel/blob/main/pfatt_intel.sh

A few notes:

  1. When I clean installed 2.6.0 (and 22.01 on my pfSense+ Box) absolutely nothing I did allowed my pfatt script to runs successfully from the /cf/conf directory. I ended up moving it to /root/pfatt and everything worked. This seemed to only be an issue once I moved to a ZFS file system but who knows.
  2. I have an angry family since our internet has been up and down for a few days now.

@lnxsrt
Copy link

lnxsrt commented Feb 17, 2022

Interesting that the intel igb driver works. I searched for bugs on the FreeBSD buglist and found this...

https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=260068

Looks like it might be related? Issues with vlan tagging. Was introduced in 13.0 and 12.3... recently fixed in the stable branches, so the timing lines up.

@jasonsansone
Copy link

Some comments and feedback in testing so far:

  1. It seems safe to install and test this on 2.5.2. I have downloaded the kernel module and am testing prior to any updates. I haven't managed to break 2.5.2... yet.

  2. It would be better to create /boot/loader.conf.local instead of /boot/loader.conf. Loader.conf may be overwritten by pfsense updates.

  3. What is your output on 2.6.0 with the if_igb.ko module for "kldstat -v"? I can't confirm it is loading and in use on 2.5.2. I am reluctant to upgrade until I can validate it is loading.

@neydah700
Copy link

Interesting that the intel igb driver works. I searched for bugs on the FreeBSD buglist and found this...

https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=260068

Looks like it might be related? Issues with vlan tagging. Was introduced in 13.0 and 12.3... recently fixed in the stable branches, so the timing lines up.

Could explain why we are passing 802.1x not pulling DHCP on VLAN 0. I'll add it to my redmine issue on pfSense. If anyone else has success can they go on and comment. Hopefully we get some traction! https://redmine.pfsense.org/issues/12821?next_issue_id=12820

@SGC1990
Copy link

SGC1990 commented Feb 17, 2022

I am testing now reimaging since wiregraud is broke in my install right now.

@SGC1990
Copy link

SGC1990 commented Feb 17, 2022

i am testing now reimaging since wiregraud is broke in my install right now.

Interesting that the intel igb driver works. I searched for bugs on the FreeBSD buglist and found this...
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=260068
Looks like it might be related? Issues with vlan tagging. Was introduced in 13.0 and 12.3... recently fixed in the stable branches, so the timing lines up.

Could explain why we are passing 802.1x not pulling DHCP on VLAN 0. I'll add it to my redmine issue on pfSense. If anyone else has success can they go on and comment. Hopefully we get some traction! https://redmine.pfsense.org/issues/12821?next_issue_id=12820

will do internet going out for a bit to update and bring system online.

@neydah700
Copy link

Some comments and feedback in testing so far:

  1. It seems safe to install and test this on 2.5.2. I have downloaded the kernel module and am testing prior to any updates. I haven't managed to break 2.5.2... yet.
  2. It would be better to create /boot/loader.conf.local instead of /boot/loader.conf. Loader.conf may be overwritten by pfsense updates.
  3. What is your output on 2.6.0 with the if_igb.ko module for "kldstat -v"? I can't confirm it is loading and in use on 2.5.2. I am reluctant to upgrade until I can validate it is loading.

Good point on the .local, will adjust that.

For my kldstat does just this portion work for ya or do you want the whole output?

3 1 0xffffffff83cfb000 35e08 if_igb.ko (/boot/modules/if_igb.ko)
Contains modules:
Id Name
2 pci/igb

@lnxsrt
Copy link

lnxsrt commented Mar 25, 2022

Been digging into this a lot and there's quite a bit to digest.

1. There is a lot of churn on the freebsd intel driver related to hardware vlan tagging. Enough churn that its hard to piece together if this is even a bug/regression in the driver like [pfSense 2.6 and pfSense Plus 22.01 Broken #67 (comment)](https://github.com/MonkWho/pfatt/issues/67#issuecomment-1043443331) implies or if it was only ever working because of bugs.

2. All the changes and the noted fix of disabling hwvlan handling point to the intel nics filtering VLAN traffic by default. That actually seems like a sane default for a non-router nic so again, maybe not a bug and we should be disabling the hw filtering.

3. this affects all configurations with the ont connection on an intel nic. the WPA discussions seem like noise. As documented in the README, this project works by tagging outgoing non-EAP traffic with VLAN0 so that filtering breaks all traffic for any setup.

4. -vlanhwtso doesn't make sense since its unrelated to VLAN tagging. In my testing it was not needed. I'm guessing everyone has powerful enough computers a little bit of packet offloading on the nic isn't a big deal but its nice to have so I would remove that from the changes.

5. Anyone know why there isn't a pull to make that change to the repo?

I've been too busy to formally submit any bugs. The FreeBSD upstream fixes are all over the place, I'm with you, hard to follow.

I re-enabled vlanhwtso and my setup still works fine. Confirming your experience.

For reference, I have the vlanhwtag vlanhwfilter enabled on my LAN em0 Intel interface with multiple VLANS in OPNSense and it works fine. I do think it is an igb related FreeBSD driver bug that these HW vlan offloading options don't work.

Additionally it looks like the 22.1.4 codebase for the e1000 driver (igb and em in Freebsd) remains unchanged with a Dec 22, 2021 modified date. So, these disabling options are still needed for the time being.

https://github.com/opnsense/src/tree/22.1.4/sys/dev/e1000

@ChronicledMonocle
Copy link
Author

Tested on pfSense Plus 22.05 and getting the following:

Fatal error: Uncaught Error: Call to undefined function pfSense_ngctl_attach() in Command line code:1
Stack trace:
#0 {main}
thrown in Command line code on line 1

I also tried running the PHP code directly without the variables and it threw the same errors to console.

I'll attach this to the redmine as well.

@ChronicledMonocle
Copy link
Author

The pfSense_ngctl_attach() and pfSense_ngctl_detach() php modules are being removed in pfSense Plus 22.05 and pfSense CE 2.7, which is why this command is failing on the latest builds. These commands are apparently no longer needed as all interfaces will always be a part of netgraph in the newer release, so these lines should be able to be commented out. I'll test with these lines removed in the next few days. If it works without them, I'll create a fork and/or open an issue with the project to correct it.

neclimdul added a commit to neclimdul/pfatt that referenced this issue May 2, 2022
Support newer versions of pfSense without pfSense_ngctl_attach.

Relates to MonkWho#67
@neclimdul
Copy link
Contributor

A bit different than the Intel issue being discussed previously but that one's actually easy to fix. Added a pull that supports old and newer versions of pfSense while people update.

Currently running opnsense so I haven't tested it past confirming it parses correctly but its pretty straight forward. If you want to give it a shot it'd be appreciated.

@ChronicledMonocle
Copy link
Author

A bit different than the Intel issue being discussed previously but that one's actually easy to fix. Added a pull that supports old and newer versions of pfSense while people update.

Currently running opnsense so I haven't tested it past confirming it parses correctly but its pretty straight forward. If you want to give it a shot it'd be appreciated.

Thank you for the patch neclimdul! I've tested with the patched script. My testing can be found here:

https://redmine.pfsense.org/issues/12821#note-14

Seems that on internal builds of pfSense Plus 22.05 there is still an issue with DHCP over VLAN0 on the included Intel driver. I've raised the flag on this internally so hopefully there will be a fix soon. Even if it isn't, though, things should keep humming along for non-Intel NICs or with the custom driver, which I'll compile a new one of and post here from my build environment.

@ChronicledMonocle
Copy link
Author

FYI to anyone not watching the redmine or who stumbles on this bug report, the issue ONLY affects igb/em interfaces. Intel ix or igc are not affected and likely Realtek, Broadcom, or any other NIC should be fine as well. For igb/em interfaces, just compile a driver from the Intel provided driver above and load in the driver with the loader.conf.local override.

@johnavich
Copy link

@ChronicledMonocle would you then suggest those of us with Realtek, Broadcom etc chippers create a different bug report then?

@ChronicledMonocle
Copy link
Author

@ChronicledMonocle would you then suggest those of us with Realtek, Broadcom etc chippers create a different bug report then?

What kind of NIC do you have and what issue are you running into? I'm running this script on a box with ix and igc interfaces without issues and unaltered just fine.

@johnavich
Copy link

I have a realtek add-on board:
image

my experience was much the same as described in this post, the DHCP packet simply wouldn't pass onto the ONT after the initial negotiation.

@jasonsansone
Copy link

22.05 has been released. Has anyone been able to test the final release version yet?

@ChronicledMonocle
Copy link
Author

22.05 has been released. Has anyone been able to test the final release version yet?

I have. Still broken for igb/em interfaces. Works fine on other types of interfaces I've tested.

@ChronicledMonocle ChronicledMonocle changed the title pfSense 2.6 and pfSense Plus 22.01 Broken Broken on 2.6+ and 22.01+ of pfSense Jun 27, 2022
@ChronicledMonocle ChronicledMonocle changed the title Broken on 2.6+ and 22.01+ of pfSense Intel igb/em Interfaces Broken on 2.6/22.01+ Jun 27, 2022
@jasonsansone
Copy link

The base hasn’t changed from FreeBSD 12.3, so does the existing driver solution for 22.01 work? In short, can you safely direct update if you are on 22.01 to 22.05?

@ChronicledMonocle
Copy link
Author

The base hasn’t changed from FreeBSD 12.3, so does the existing driver solution for 22.01 work? In short, can you safely direct update if you are on 22.01 to 22.05?

If the major kernel version hasn't changed, should be fine.

@jasonsansone
Copy link

The base hasn’t changed from FreeBSD 12.3, so does the existing driver solution for 22.01 work? In short, can you safely direct update if you are on 22.01 to 22.05?

If the major kernel version hasn't changed, should be fine.

Rolled the dice and updated. So far so good.

@SGC1990
Copy link

SGC1990 commented Jun 28, 2022

Working fine with 22.05 no problems with both types

@neydah700
Copy link

For those already using the customer driver, when you upgrade the custom driver stays in place. The root issue is not solved yet but has been marked in Redmine for the "next" release. https://redmine.pfsense.org/issues/12821?next_issue_id=12820

If you do a clean install to 22.05 the issue will probably come back.

@computergeek1507
Copy link

I installed opnsense 22.07 and this issue still persists with the Intel interfaces. I changed the config to a Realtek interface and then the script worked.

@SamBudeh
Copy link

SamBudeh commented Aug 1, 2022

Okay, I got everything up and working on my regular Intel NIC. I’m not the biggest expert here so bear with me.

Through troubleshooting I was able to get every non-Intel NIC to authenticate and pull DHCP. After more testing all igb(4) driver-based cards failed. In the /boot/kernel folder I noticed if_igb.ko is simply a shortcut to the em(4) driver (if_em.ko). I am guessing FreeBSD is using this combined driver from intel? https://www.intel.com/content/www/us/en/download/15187/intel-network-adapter-gigabit-base-driver-for-freebsd.html

Alternatively, I found this driver that appears to be for igb(4) separately, and it seems newer. https://www.intel.com/content/www/us/en/download/14610/intel-network-adapter-driver-for-82575-6-and-82580-based-gigabit-network-connections-under-freebsd.html?wapkw=i350%20freebsd

I downloaded a FreeBSD-12.3 VM, its related source code (amd64), and complied the separate igb(4) driver.

I loaded my newly compiled if_igb.ko into the /boot/modules folder with chmod 555 permissions. Next, I added the following two lines to my /boot/loader.conf file to supersede the included driver.

if_igb_load="YES" if_igb_name="/boot/modules/if_igb.ko"

Rebooted and everything came up just fine!

Feel free to use my compiled if_igb.ko if you don’t want to build your own. https://github.com/neydah700/pfsense_intel/blob/main/if_igb.ko

Also, for reference here is my pfatt script if anyone needs a reference. https://github.com/neydah700/pfsense_intel/blob/main/pfatt_intel.sh

A few notes:

  1. When I clean installed 2.6.0 (and 22.01 on my pfSense+ Box) absolutely nothing I did allowed my pfatt script to runs successfully from the /cf/conf directory. I ended up moving it to /root/pfatt and everything worked. This seemed to only be an issue once I moved to a ZFS file system but who knows.
  2. I have an angry family since our internet has been up and down for a few days now.

@neydah700 you saved the day my friend! 2.6 was my first attempt with pfSense. I was about to give up. The above did the trick. I'm up and running and my ATT 1Gb has never been faster. Thank you!

@neydah700
Copy link

We might finally be able to close this issue out. https://redmine.pfsense.org/issues/12821?next_issue_id=12820

@anthonywww
Copy link

Having issues with ix

Recently updated and all hell broke loose.

Not using dumped certs, wpa_supplicant, pfSense Plus, etc. just trying to use the original tethered method.

I did a backup and clean reinstall + restore, however, now earlyshellcmd is not included, so script can't auto exec on startup, tried symlinking /usr/local/etc/rc.d/pfatt -> /root/pfatt.sh - it runs but still having issues below:

After applying PR #73 the issue appears to be at /usr/sbin/ngctl mkpeer o2m: etf many1 downstream in the script.

uname -a

FreeBSD pfsense 14.0-CURRENT FreeBSD 14.0-CURRENT amd64 1400094 #1 RELENG_2_7_2-n255948-8d2b56da39c: Wed Dec  6 20:45:47 UTC 2023     root@freebsd:/var/jenkins/workspace/pfSense-CE-snapshots-2_7_2-main/obj/amd64/StdASW5b/var/jenkins/workspace/pfSense-CE-snapshots-2_7_2-main/sources/FreeBSD-src-RELENG_2_7_2/amd64.amd64/sys/pfSense amd64

Error:

ngctl: send msg: No such file or directory

Log:

2024-02-27 19:39:12 :: [pfatt.sh] :: pfSense + AT&T U-verse Residential Gateway for true bridge mode
2024-02-27 19:39:12 :: [pfatt.sh] :: Configuration:
2024-02-27 19:39:12 :: [pfatt.sh] ::        ONT_IF: ix0
2024-02-27 19:39:12 :: [pfatt.sh] ::         RG_IF: ix3
2024-02-27 19:39:12 :: [pfatt.sh] :: RG_ETHER_ADDR: <redacted>
2024-02-27 19:39:12 :: [pfatt.sh] :: attaching interfaces to ng_ether... OK!
2024-02-27 19:39:12 :: [pfatt.sh] :: building netgraph nodes...
2024-02-27 19:39:12 :: [pfatt.sh] ::   creating ng_one2many... OK!
2024-02-27 19:39:12 :: [pfatt.sh] ::   creating vlan node and interface... OK!
2024-02-27 19:39:12 :: [pfatt.sh] ::   defining etf for ix0 (ONT)...

sysctl dev.ix.0

dev.ix.0.fw_version: eTrack 0x800003e2 PHY FW V286
dev.ix.0.enable_aim: 0
dev.ix.0.advertise_speed: 7
dev.ix.0.fc: 3
dev.ix.0.mac_stats.tx_frames_1024_1522: 0
dev.ix.0.mac_stats.tx_frames_512_1023: 0
dev.ix.0.mac_stats.tx_frames_256_511: 203
dev.ix.0.mac_stats.tx_frames_128_255: 0
dev.ix.0.mac_stats.tx_frames_65_127: 5
dev.ix.0.mac_stats.tx_frames_64: 6
dev.ix.0.mac_stats.management_pkts_txd: 0
dev.ix.0.mac_stats.mcast_pkts_txd: 5
dev.ix.0.mac_stats.bcast_pkts_txd: 209
dev.ix.0.mac_stats.good_pkts_txd: 214
dev.ix.0.mac_stats.total_pkts_txd: 214
dev.ix.0.mac_stats.good_octets_txd: 71960
dev.ix.0.mac_stats.checksum_errs: 0
dev.ix.0.mac_stats.management_pkts_drpd: 0
dev.ix.0.mac_stats.management_pkts_rcvd: 0
dev.ix.0.mac_stats.recv_jabberd: 0
dev.ix.0.mac_stats.recv_oversized: 0
dev.ix.0.mac_stats.recv_fragmented: 0
dev.ix.0.mac_stats.recv_undersized: 0
dev.ix.0.mac_stats.rx_frames_1024_1522: 0
dev.ix.0.mac_stats.rx_frames_512_1023: 0
dev.ix.0.mac_stats.rx_frames_256_511: 0
dev.ix.0.mac_stats.rx_frames_128_255: 0
dev.ix.0.mac_stats.rx_frames_65_127: 0
dev.ix.0.mac_stats.rx_frames_64: 0
dev.ix.0.mac_stats.bcast_pkts_rcvd: 0
dev.ix.0.mac_stats.mcast_pkts_rcvd: 0
dev.ix.0.mac_stats.good_pkts_rcvd: 0
dev.ix.0.mac_stats.total_pkts_rcvd: 77
dev.ix.0.mac_stats.good_octets_rcvd: 0
dev.ix.0.mac_stats.total_octets_rcvd: 5544
dev.ix.0.mac_stats.xoff_recvd: 0
dev.ix.0.mac_stats.xoff_txd: 0
dev.ix.0.mac_stats.xon_recvd: 0
dev.ix.0.mac_stats.xon_txd: 0
dev.ix.0.mac_stats.rx_missed_packets: 0
dev.ix.0.mac_stats.rec_len_errs: 0
dev.ix.0.mac_stats.remote_faults: 0
dev.ix.0.mac_stats.local_faults: 10
dev.ix.0.mac_stats.short_discards: 0
dev.ix.0.mac_stats.byte_errs: 0
dev.ix.0.mac_stats.ill_errs: 0
dev.ix.0.mac_stats.crc_errs: 0
dev.ix.0.mac_stats.rx_errs: 0
dev.ix.0.queue3.rx_discarded: 0
dev.ix.0.queue3.rx_copies: 0
dev.ix.0.queue3.rx_bytes: 0
dev.ix.0.queue3.rx_packets: 0
dev.ix.0.queue3.rxd_tail: 128
dev.ix.0.queue3.rxd_head: 0
dev.ix.0.queue3.irqs: 0
dev.ix.0.queue3.interrupt_rate: 31250
dev.ix.0.queue3.tx_packets: 0
dev.ix.0.queue3.tso_tx: 0
dev.ix.0.queue3.txd_tail: 0
dev.ix.0.queue3.txd_head: 0
dev.ix.0.queue2.rx_discarded: 0
dev.ix.0.queue2.rx_copies: 0
dev.ix.0.queue2.rx_bytes: 0
dev.ix.0.queue2.rx_packets: 0
dev.ix.0.queue2.rxd_tail: 128
dev.ix.0.queue2.rxd_head: 0
dev.ix.0.queue2.irqs: 0
dev.ix.0.queue2.interrupt_rate: 31250
dev.ix.0.queue2.tx_packets: 0
dev.ix.0.queue2.tso_tx: 0
dev.ix.0.queue2.txd_tail: 0
dev.ix.0.queue2.txd_head: 0
dev.ix.0.queue1.rx_discarded: 0
dev.ix.0.queue1.rx_copies: 0
dev.ix.0.queue1.rx_bytes: 0
dev.ix.0.queue1.rx_packets: 0
dev.ix.0.queue1.rxd_tail: 128
dev.ix.0.queue1.rxd_head: 0
dev.ix.0.queue1.irqs: 0
dev.ix.0.queue1.interrupt_rate: 31250
dev.ix.0.queue1.tx_packets: 0
dev.ix.0.queue1.tso_tx: 0
dev.ix.0.queue1.txd_tail: 0
dev.ix.0.queue1.txd_head: 0
dev.ix.0.queue0.rx_discarded: 0
dev.ix.0.queue0.rx_copies: 0
dev.ix.0.queue0.rx_bytes: 0
dev.ix.0.queue0.rx_packets: 0
dev.ix.0.queue0.rxd_tail: 128
dev.ix.0.queue0.rxd_head: 0
dev.ix.0.queue0.irqs: 210
dev.ix.0.queue0.interrupt_rate: 31250
dev.ix.0.queue0.tx_packets: 214
dev.ix.0.queue0.tso_tx: 0
dev.ix.0.queue0.txd_tail: 432
dev.ix.0.queue0.txd_head: 432
dev.ix.0.link_irq: 1
dev.ix.0.watchdog_events: 0
dev.ix.0.dropped: 0
dev.ix.0.iflib.rxq3.rxq_fl0.buf_size: 2048
dev.ix.0.iflib.rxq3.rxq_fl0.credits: 128
dev.ix.0.iflib.rxq3.rxq_fl0.cidx: 0
dev.ix.0.iflib.rxq3.rxq_fl0.pidx: 128
dev.ix.0.iflib.rxq3.cpu: 6
dev.ix.0.iflib.rxq2.rxq_fl0.buf_size: 2048
dev.ix.0.iflib.rxq2.rxq_fl0.credits: 128
dev.ix.0.iflib.rxq2.rxq_fl0.cidx: 0
dev.ix.0.iflib.rxq2.rxq_fl0.pidx: 128
dev.ix.0.iflib.rxq2.cpu: 4
dev.ix.0.iflib.rxq1.rxq_fl0.buf_size: 2048
dev.ix.0.iflib.rxq1.rxq_fl0.credits: 128
dev.ix.0.iflib.rxq1.rxq_fl0.cidx: 0
dev.ix.0.iflib.rxq1.rxq_fl0.pidx: 128
dev.ix.0.iflib.rxq1.cpu: 2
dev.ix.0.iflib.rxq0.rxq_fl0.buf_size: 2048
dev.ix.0.iflib.rxq0.rxq_fl0.credits: 128
dev.ix.0.iflib.rxq0.rxq_fl0.cidx: 0
dev.ix.0.iflib.rxq0.rxq_fl0.pidx: 128
dev.ix.0.iflib.rxq0.cpu: 0
dev.ix.0.iflib.txq3.r_abdications: 0
dev.ix.0.iflib.txq3.r_restarts: 0
dev.ix.0.iflib.txq3.r_stalls: 0
dev.ix.0.iflib.txq3.r_starts: 0
dev.ix.0.iflib.txq3.r_drops: 0
dev.ix.0.iflib.txq3.r_enqueues: 0
dev.ix.0.iflib.txq3.ring_state: pidx_head: 0000 pidx_tail: 0000 cidx: 0000 state: IDLE
dev.ix.0.iflib.txq3.txq_cleaned: 0
dev.ix.0.iflib.txq3.txq_processed: 0
dev.ix.0.iflib.txq3.txq_in_use: 0
dev.ix.0.iflib.txq3.txq_cidx_processed: 0
dev.ix.0.iflib.txq3.txq_cidx: 0
dev.ix.0.iflib.txq3.txq_pidx: 0
dev.ix.0.iflib.txq3.no_tx_dma_setup: 0
dev.ix.0.iflib.txq3.txd_encap_efbig: 0
dev.ix.0.iflib.txq3.tx_map_failed: 0
dev.ix.0.iflib.txq3.no_desc_avail: 0
dev.ix.0.iflib.txq3.mbuf_defrag_failed: 0
dev.ix.0.iflib.txq3.m_pullups: 0
dev.ix.0.iflib.txq3.mbuf_defrag: 0
dev.ix.0.iflib.txq3.cpu: 6
dev.ix.0.iflib.txq2.r_abdications: 0
dev.ix.0.iflib.txq2.r_restarts: 0
dev.ix.0.iflib.txq2.r_stalls: 0
dev.ix.0.iflib.txq2.r_starts: 0
dev.ix.0.iflib.txq2.r_drops: 0
dev.ix.0.iflib.txq2.r_enqueues: 0
dev.ix.0.iflib.txq2.ring_state: pidx_head: 0000 pidx_tail: 0000 cidx: 0000 state: IDLE
dev.ix.0.iflib.txq2.txq_cleaned: 0
dev.ix.0.iflib.txq2.txq_processed: 0
dev.ix.0.iflib.txq2.txq_in_use: 0
dev.ix.0.iflib.txq2.txq_cidx_processed: 0
dev.ix.0.iflib.txq2.txq_cidx: 0
dev.ix.0.iflib.txq2.txq_pidx: 0
dev.ix.0.iflib.txq2.no_tx_dma_setup: 0
dev.ix.0.iflib.txq2.txd_encap_efbig: 0
dev.ix.0.iflib.txq2.tx_map_failed: 0
dev.ix.0.iflib.txq2.no_desc_avail: 0
dev.ix.0.iflib.txq2.mbuf_defrag_failed: 0
dev.ix.0.iflib.txq2.m_pullups: 0
dev.ix.0.iflib.txq2.mbuf_defrag: 0
dev.ix.0.iflib.txq2.cpu: 4
dev.ix.0.iflib.txq1.r_abdications: 0
dev.ix.0.iflib.txq1.r_restarts: 0
dev.ix.0.iflib.txq1.r_stalls: 0
dev.ix.0.iflib.txq1.r_starts: 0
dev.ix.0.iflib.txq1.r_drops: 0
dev.ix.0.iflib.txq1.r_enqueues: 0
dev.ix.0.iflib.txq1.ring_state: pidx_head: 0000 pidx_tail: 0000 cidx: 0000 state: IDLE
dev.ix.0.iflib.txq1.txq_cleaned: 0
dev.ix.0.iflib.txq1.txq_processed: 0
dev.ix.0.iflib.txq1.txq_in_use: 0
dev.ix.0.iflib.txq1.txq_cidx_processed: 0
dev.ix.0.iflib.txq1.txq_cidx: 0
dev.ix.0.iflib.txq1.txq_pidx: 0
dev.ix.0.iflib.txq1.no_tx_dma_setup: 0
dev.ix.0.iflib.txq1.txd_encap_efbig: 0
dev.ix.0.iflib.txq1.tx_map_failed: 0
dev.ix.0.iflib.txq1.no_desc_avail: 0
dev.ix.0.iflib.txq1.mbuf_defrag_failed: 0
dev.ix.0.iflib.txq1.m_pullups: 0
dev.ix.0.iflib.txq1.mbuf_defrag: 0
dev.ix.0.iflib.txq1.cpu: 2
dev.ix.0.iflib.txq0.r_abdications: 0
dev.ix.0.iflib.txq0.r_restarts: 0
dev.ix.0.iflib.txq0.r_stalls: 0
dev.ix.0.iflib.txq0.r_starts: 214
dev.ix.0.iflib.txq0.r_drops: 0
dev.ix.0.iflib.txq0.r_enqueues: 214
dev.ix.0.iflib.txq0.ring_state: pidx_head: 0214 pidx_tail: 0214 cidx: 0214 state: IDLE
dev.ix.0.iflib.txq0.txq_cleaned: 398
dev.ix.0.iflib.txq0.txq_processed: 430
dev.ix.0.iflib.txq0.txq_in_use: 34
dev.ix.0.iflib.txq0.txq_cidx_processed: 430
dev.ix.0.iflib.txq0.txq_cidx: 398
dev.ix.0.iflib.txq0.txq_pidx: 432
dev.ix.0.iflib.txq0.no_tx_dma_setup: 0
dev.ix.0.iflib.txq0.txd_encap_efbig: 0
dev.ix.0.iflib.txq0.tx_map_failed: 0
dev.ix.0.iflib.txq0.no_desc_avail: 0
dev.ix.0.iflib.txq0.mbuf_defrag_failed: 0
dev.ix.0.iflib.txq0.m_pullups: 0
dev.ix.0.iflib.txq0.mbuf_defrag: 0
dev.ix.0.iflib.txq0.cpu: 0
dev.ix.0.iflib.override_nrxds: 0
dev.ix.0.iflib.override_ntxds: 0
dev.ix.0.iflib.use_logical_cores: 0
dev.ix.0.iflib.separate_txrx: 0
dev.ix.0.iflib.core_offset: 0
dev.ix.0.iflib.tx_abdicate: 0
dev.ix.0.iflib.rx_budget: 0
dev.ix.0.iflib.disable_msix: 0
dev.ix.0.iflib.override_qs_enable: 0
dev.ix.0.iflib.override_nrxqs: 0
dev.ix.0.iflib.override_ntxqs: 0
dev.ix.0.iflib.driver_version: 4.0.1-k
dev.ix.0.%parent: pci4
dev.ix.0.%pnpinfo: vendor=0x8086 device=0x1528 subvendor=0x15d9 subdevice=0x1528 class=0x020000
dev.ix.0.%location: slot=0 function=0 dbsf=pci0:4:0:0
dev.ix.0.%driver: ix
dev.ix.0.%desc: Intel(R) X540-AT2

@owenthewizard
Copy link
Contributor

@anthonywww there's no reason to use the tethered method anymore, nor supplicant with netgraph/switch. pfSense includes the necessary patches in wpa_supplicant and dhclient already. All you need are the certificates.

@anthonywww
Copy link

bump #67 (comment)

@neydah700
Copy link

bump #67 (comment)

If you still want to use the tethered method and not any of the other workarounds you don't need, and probably shouldn't use, netgraph anymore. There is functionality built into pfsense now.

https://docs.netgate.com/pfsense/en/latest/recipes/authbridge.html

@anthonywww
Copy link

bump #67 (comment)

If you still want to use the tethered method and not any of the other workarounds you don't need, and probably shouldn't use, netgraph anymore. There is functionality built into pfsense now.

https://docs.netgate.com/pfsense/en/latest/recipes/authbridge.html

Ah yes, I've seen that article, though it doesn't appear to work for the CE (non-Plus) version of PfSense unfortunately. Is there a guide for the CE version?

image

@tehdango
Copy link

tehdango commented Mar 10, 2024

If there is a guide I never found it. I decided to use the supplicant method since pfsense now supports it in all versions.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests