FPBX15-Backup/Restore, WarmSpare elements that I want and don't want

Good afternoon. Setting up a warm spare with the new method, and noticed a couple things I’d like to adjust for.

The two servers, the trunks specifically, I have to use a different Media Address (for each server), so the trunks on Server A have a trunk media address of Server A’s public IP, and the trunks for Server B have a trunk media address of Server B’s public IP.

Unfortunately, when warm spareing a backup, Server B’s trunks now inherit the media address for Server A’s trunks, which of course results in dead air.

Any way to have it skip the trunks completely, or possibly have it realize that a Media Address is likely part of the NAT stuff and not copy it over?

I didn’t see a dedicated Trunks module in the list of what to copy, which is what I would have expected - or maybe even a Trunks sub-section under CORE. From what I can tell, trunks are part of something that I can’t change.

Additionally, how can I tell it to install the same modules as what’s on the main? I’ve removed the items I don’t want on the main server, so I’d expect a warm spare to inherit those traits as well (or if not automatically, based on a setting I tell it to copy over).

Please advise.


IIRC, there’s a “post processing” hook in the backup module that allows you to ‘clean up’ your backup before you pass it to the warm spare. If not, you could look to see if there’s a post-processing processing on the restore that would allow you to run a “sed” script to adjust things like MAC Address settings when you copy to the spare.

Ooo, I wouldn’t know how to do that, but even if, these would be changes to the media address on trunks, which is housed in the database, so I’m thinking that would be a bit more complex.

These are actual options you set when you configure your warm spare setup. You tell it to exclude what you don’t want. You can set all those to YES and it will not move that information with the backup.

Have you done that?


Yes, but it doesn’t say “don’t copy trunks” - that option is “copy the trunks but leave them disabled in case they’re registration trunks so they don’t take over the trunk with the carrier”.

Exclude NAT is enabled - my comment above was that part of NAT should be the trunk’s Media IP, which, when set to “Exclude NAT”, should exclude that field. If I can’t have that, then completely ignoring the trunks from the backup/restore would be the next ideal thing, but there’s nothing that I see that does that.

Are you using PJSIP or Chan_SIP trunks?

These are PJSIP

Are you also excluding the bind details as well?

I disabled anything that was (in theory) unique to a site.
Disable Remote: NO
Exclude NAT: YES
Exclude Bind: YES
Exclude DNS: YES
Apply Configs: YES

But you know, that’s a valid point, the Media IP field really should be tied to BIND, not NAT. For the suggested change/fix to this.

But, I’m still surprised that the trunks aren’t a separate module that can be disabled from backup. I mean, what if my trunks are unique to that alternate site, and all I care about are extensions/queues/voicemail etc…

Does that mean your origination is magically being done by someone else? I get you might have different outbound trunks on the system but not having the same origination/inbound trunks on your backup spare is a bit odd.

Not at all. If it’s an off-site, my inbound trunks may have properties unique to that location (as is the case here with the media IP, but could be other fields), in which case, I’d build the trunks specific to that box, and copy the other config items. In or Out, the trunks themselves have fields that could be considered site-specific, which then makes their entries invalid when force-copied from the active box. Or, maybe I want the trunks active at all times, so the carrier doesn’t keep sending alerts that your trunks are down… I can think of several scenarios where trunk data might want to be left out of a “warm spare” scenario.

Fair enough. Your next step then is to go here: https://issues.freepbx.org and open a Feature Request for this.

Yeah, I figured. Just didn’t know if there was something I was missing…

Nope, the only option is to have them enabled or disabled on the warm spare.

I’m on vacation so can’t confirm at the moment, but I am pretty sure that trunks can be excluded by expanding the core module options in the backup.

The option you’re referring to is still “Disable Trunks on Restore” so it doesn’t exclude, just disables. But yeah, it’s a sub option under Core in the Modules list for the backup.

1 Like


Feature added and published. See module versions in ticket.

This topic was automatically closed 31 days after the last reply. New replies are no longer allowed.