The 35-Watt Roommate (Part 7): Goodbye Fritz!Box, Hello Ubiquiti

In Part 6 I set up AdGuard Home as a network-wide ad blocker. Now it is time for a bigger change: the Fritz!Box has to go.

Ubiquiti Cloud Gateway Ultra in action

Why Switch at All?

The Fritz!Box 7690 is a capable device. Telephony, Wi-Fi, DECT, smart home, all packed into one box. But that is also the problem. I want a network I actually control. VLANs, firewall rules, a proper dashboard. The Fritz!Box is a Swiss army knife, but what I need is a scalpel.

On top of that, I kept running into performance issues over the past few months. The Wi-Fi would suddenly slow down for no apparent reason. Middle of the day, same number of devices as always. Streaming would stutter, video calls would lag. A reboot fixed it every time, but who wants to restart their router on a regular basis? It felt more and more like the box was simply overwhelmed by everything it had to handle. Smart home devices, DECT phones, VPN, guest network, AdGuard as DNS. At some point the little thing just could not keep up.

I went with the Ubiquiti Cloud Gateway Ultra (UCG Ultra). Small form factor, reasonable price, and the UniFi ecosystem has everything a homelab network needs.

Step 1: Reading the Fritz!Box Config

Before unplugging the old router, you should know what it actually does. The Fritz!Box has an export function under System → Backup → Save. The result is an .export file, basically a massive text dump of every configuration file on the device.

The relevant WAN settings live inside ar7.cfg. Opening that file for the first time feels a bit like doing your taxes. Thousands of lines, cryptic variable names. But the handful of values you actually need are easy to spot once you know what to look for.

One thing to keep in mind: the export file is encrypted if you set a password during export. Passwords and credentials inside the config are additionally encoded. If you need to extract plaintext credentials from the file (e.g. SIP credentials for VoIP), you can use my Fritz!Box Config Decrypt Tool.

Step 2: Understanding the WAN Settings

My ISP is Buchholz Digital (BuDi) with an FTTH connection. The setup is refreshingly simple: no PPPoE, no credentials. The router connects via Ethernet to the ONT, tags VLAN 700, and gets a public IP through DHCP.

Here is the relevant section from the Fritz!Box config:

dslifaces {
        enabled = yes;
        name = "internet";
        dsl_encap = dslencap_ether;
        dslinterfacename = "dsl";
        no_masquerading = no;
        stackmode = stackmode_ipv4only;
        vlancfg {
                vlanencap = vlanencap_fixed_prio;
                tagtype = vlantagtype_customer;
                vlanid = 700;
                vlanprio = 0;
        }
        ppptarget = "internet";
        mtu = 0;
        etherencapcfg {
                use_dhcp = yes;
        }
        stay_always_online = yes;
}

The key values at a glance:

SettingValue
Connection typeDHCP (no PPPoE)
Internet VLAN700
VoIP VLAN650
TR-069 VLAN550
IPv4via DHCP
IPv6Automatic (dual-stack)
MTU1500 (auto)

Three VLANs in total. For the UCG Ultra, only VLAN 700 matters. VLAN 650 handles telephony and VLAN 550 is for remote management by the ISP. The UCG Ultra needs neither.

Step 3: Configuring the UCG Ultra

The UniFi Network Controller makes this surprisingly painless:

  1. Internet/WAN, set connection type to DHCPv4
  2. VLAN ID: 700. This is the important one.
  3. MAC Address Override is available if the ISP expects the Fritz!Box MAC. I did not need it, but good to know it is there. You can find the old MAC in the export file under user.cfg, where the Fritz!Box itself is listed as a device:
usercfg {
        users2 {
                type = internet_user_ip;
                landeviceUID = 8511;
                mac = 34:E1:A9:24:97:3D;
        }
}

The MAC is also printed on the sticker on the bottom of the Fritz!Box or visible in the web interface under Home Network → Network. 4. IPv6 set to “Auto” or “DHCPv6” for dual-stack 5. DNS set to custom servers (in my case 192.168.50.250 for AdGuard and 1.1.1.1 as fallback)

UniFi UCG Ultra WAN setup with VLAN ID and MAC override

Cable from the ONT into the WAN port of the UCG Ultra, configure VLAN 700, done. It worked on the first try. I was almost disappointed there was no drama.

Step 4: Migrating LAN Settings

To keep everything running smoothly on the home network side, I carried over the Fritz!Box settings:

Subnet:

  • Network: 192.168.50.0/24
  • Gateway: 192.168.50.1
  • DHCP range: 192.168.50.20 to 192.168.50.200

Static DHCP leases:

DeviceIPMAC
NAS192.168.50.290:09:D0:35:57:8B
Proxmox192.168.50.2498:FA:9B:2E:20:CB
Docker host192.168.50.46BC:24:11:A5:65:6F

IPv6 ULA prefix: fd15:d91c:273f::/48. I set this manually on the UCG Ultra so that local IPv6 addresses (like AdGuard on fd15:d91c:273f::250) stay stable.

Does the ISP Notice the Switch?

Short answer: yes. Longer answer: it does not matter.

What changes:

The MAC address on the WAN port is different. With a DHCP-based connection like mine, that is not a problem. The DHCP server simply hands out a new lease. If it does cause issues, the UCG Ultra lets you override the MAC.

The DHCP hostname changes. The Fritz!Box sends fritz.box, the UCG Ultra sends something else. Purely cosmetic, nobody cares.

TR-069 goes away. The Fritz!Box was remotely managed by the ISP via TR-069 on VLAN 550. The UCG Ultra does not support TR-069, so the ISP loses remote access to the router. In my case nobody minded. A quick phone call to BuDi was all it took.

What stays the same: VLAN 700 for internet works identically. DHCP-based IP assignment is device-independent. The fiber connection at the ONT remains completely unchanged.

What About VoIP?

The Fritz!Box handled telephony over VLAN 650. The UCG Ultra cannot do SIP. If you still need a landline, there are two options:

  1. Run the Fritz!Box as an IP client behind the UCG Ultra, just for telephony
  2. Use a standalone SIP phone or a SIP adapter

I went with option 1. The Fritz!Box now sits on a LAN port of the UCG Ultra, runs in IP client mode, and only handles DECT and phone calls. To set this up, go to Internet → Account Information → Internet Access in the Fritz!Box UI and switch to “Use existing internet connection (IP client)”. Retirement for the Fritz!Box, but with a small side gig.

What I Learned

Fritz!Box export files are worth their weight in gold. All WAN settings live in ar7.cfg, and once you have fought through the text dump, you can find the relevant values in a few minutes.

For FTTH with BuDi you only need three things: VLAN 700, DHCP, no PPPoE. That is it.

Swapping the router on a DHCP-based connection is surprisingly painless. No call to the ISP needed, no activation, no waiting. Plug it in, configure the VLAN, it just works.

TR-069 goes away, but honestly that feels more like a feature than a bug. Less remote access from the ISP to my network? Fine by me.

And the Fritz!Box can live on as a dedicated telephony device in IP client mode. No need to throw it away.

The 35-watt roommate now has a new neighbor in the network cabinet. Part 8 will be about the UniFi VLAN setup. Because if you finally have a proper router, you might as well do proper network segmentation.