Request: reordering of interfaces
-
This might be a 2.x request, but I think it's worth saying.
I would really like the option to quickly reorder pfsense's interfaces, at least in the dashboard widget. My problem is that I have 15 or so interfaces, and at least 8 of them (modem interfaces) are of no interest to me most of the time, and especially when viewing the traffic graph widget on the dashboard. Unfortunately, even collapsed, these modem interface graph headers take a lot of vertical space, such that I can't view even just the WAN and one of the lower OPTx ifaces simultaneously; scrolling is involved, meaning a person can't just sit and stake out.
So I took it upon myself to manually reorder interfaces in the config file to try to fix the problem. I was ultimately successful, but here's a quick summary/comedy of how that went.
1. Download the interfaces config file. Manually edit it, rearranging interface order to get high priority interfaces to appear at the bottom (OPTn-1) and higher at the top (OPT1,2, etc).
2. Upload interface config file. We're all effed up because I left a tag at the bottom of the file and every interface after the unclosed tag has dissappeared. I also notice the relocated interfaces have lost their vlan association and reassigned themselves to the parent interfaces. Fortunately I'm on the LAN and I didn't mess with that one.
3. Download the vlan config. Fix the interfaces config file. Fix the vlan config file.
4. Upload the vlan config file. Lose my IP connection to the LAN interface (I forget why that happened now. probably messed something up).
5. Try to assign IP info to LAN on console. No dice. Reset all interfaces and manually create LAN vlan and IP info. Still no access. Reboot. Web access restored.
6. Fix vlan config file and upload it and interface config file again. All looks good until I realize the firewall rules stuck to the underlying OPT ifaces, which have now been reassigned to my working interfaces, so those are all messed up.
7. Download firewall rules config. Find/replace OPTx names in a text editor. replace-all on "opt1" doesn't work because it catches all the opt10, opt11, opt1x occurrences too, so I revert and instead do a replace on ">optx<". Save and upload. Better, but the find/replace function didn't catch all the "optxnet" and "optxaddress" rule targets.
8. Correct target network and addresses manually in UI for all affected rules.
9. Hosts on some ifaces still don't have internet. Why? Because MON rules are messed up for similar reasons. Clean those up. Everything appears to be working now (I hope, it's been 21 hours and no complaints).
Admittedly, part of the problem is that I was attempting this at 4 am, but fat fingers will always pose risks, especially when so many steps are involved.
I don't know how many people the interface ordering will be an issue for, but you can count my vote.
And it will be a recurring issue for me. Eventually I will add more local interfaces, and these will again appear below my vestigial modem interface graphs on the dashboard widget.
At present the only fixes for this are to go through all the steps outlined above, or delete all the unimportant interfaces, recreate the new additions, then recreate the trailing interfaces. Either way it's tedious and error-prone.
Here are some proposed solutions for facilitating the reordering of interfaces in the UI, the implementation of which are well outside my expertise.
1. Create some utility that manually recreates my above steps. Seems convoluted, but maybe it could work well.
2. Change the way firewall rules (active interface, source/target subnet/host) are assigned, anchoring them to the user-assigned interface name instead of the system-assigned OPTx name. Then a reordering of interfaces in the config file will be inconsequential.
3. Create a function that permits the manual selection of which interface graphs appear in the dashboard widget. Instead of, or as an alternative option to, collapsing graphs in the widget, have a config popup that allows disabling interfaces from the widget altogether.
On a related side-note, the interface ordering is not consistent between menus in the pfsense UI. For example on Status:Interfaces, they appear in interface order (WAN, LAN, OPT1, OPT2…), but in the Interfaces:Assign js menu they are in alphabetical order. Some improved consistency there would improve flow somewhat.
-
One more side effect of the shuffle: my RRD history is messed up.
And one additional inconsistency in interface ordering, at present: RRD graph interface dropdown menu is neither alphabetical nor by interface order. It appears to be an ordering unto itself.
-
Most interface lists that aren't specifically sorted by the code can have their order changed by changing the order of the sections under the <interfaces>in the xml file. For example, opt1 does not need to come before opt2 in that list. There are some places that aren't reading anything from the config to determine the order and this won't affect those, however.
This:
<interfaces><lan></lan>
<wan></wan></interfaces>
is just as valid as this default order:
<interfaces><wan></wan>
<lan></lan></interfaces></interfaces> -
Hi, just to say that I would very much like to have this feature as well!