Nextcloud grinds to halt after changing network hardware

Nextcloud version: 12.0.0
Server OS: Ubuntu Server 16.04
PHP: Ubuntu default
MySQL: Ubuntu default

Old router: crappy ancient Lynksis
New router: Mikrotik Routerboard RB2011UiAS-2HnD-IN

This is my second time setting up a network with this router (along with Nextcloud), first time for a friend and this time for myself. I don’t believe I did anything different, but whatever happened this time, Nextcloud is very SLOW. Getting to the index is lightning fast but any operation after that is so slow that I could walk away and brew a cup of coffee before it finishes. This is the case locally and externally. It makes me wonder if there are any server caches that need to be cleared or something? I have other home servers running that I can get to quickly and even stream video without an issue.

My server is on its own interface/bridge within the network 172.16.0.0 and my home network being 192.168.0.0. Clearly the networking is the culprit in this setup, but the speeding up of my other services makes me scratch my head here.

PS - these same services are on the same computer using the same ethernet port on Linux Containers. I also went back to Nextcloud’s config.php and changed my old address to my new address

You put all your servers in a special subnet (172.16.0.0)? I would first check basic network setting, ping/traceroute, also the DNS resolver (if it runs into timeouts, there can be serious delays). Nextcloud can be a bit complex setup, if you first want to check the data transfer, perhaps try via ssh first (there is no webserver, webserver-cache, database etc. involved and simplifies debugging).

I put my servers in their own subnet, yes. However Nextcloud is operating within its own NATed network within that. There’s more security I could do, but that’s beside the point. Ping/traceroute works, I don’t think it’s DNS related as accessing the index.php file is near immediate (correct me if I’m wrong).

There appears to be timeouts happening with Nextcloud. I dropped a 55MB file into my sync folder and it would upload about a 10MB chunk, say it was “waiting”, then resume with another 10MB until complete. I can imagine it could be a caching issue, and that’s my first thought. I have opcache enabled and APCu memcache

Got it. Turns out to be some networking error with NAT going to Nextcloud. Originally I had to manually enter some iptables rules, but apparently an update to my server created a conflict with those rules? I use Nextcloud inside a LXD container, so perhaps a recent update I had automatically handled that forwarding for me