Imgur geo-blocked the UK, so I geo-unblocked my network

2 months ago (blog.tymscar.com)

> Second, even if I installed a VPN on my main machine, what about my phone? My laptop? My desktop? Every device would need the VPN running, and I’d have to remember to connect it before browsing. It’s messy.

This is what routers are for. My router (a cheap fanless box with several network ports running linux) is the only thing on my network that knows there's a VPN. I can selectively route whatever I want through it, including having a separate SSID/VLAN from which everything is routed through the VPN. It's wireguard based so there's no "installing a VPN", just an interface/network configured in systemd-networkd (once, on the router).

Edit: Routing by domain name could be tricky, though. I haven't had a need for that, and a proxy with local DNS override (as in the article) might needed if it came to that. I'd still do it on the router, though.

  • You can just use FoxyProxy instead of a separate browser instance. This firefox addon will use a proxy based on URL patterns.

  • > This is what routers are for.

    Useless in modern days though. IP addresses with anything backed by any cloud/CDN can vanish whenever they want, you'll always need to keep track of the upstream DNS responses.

    That's extra fun if you do site-to-site-VPNs with a major customer. Won't name names, but they do have a habit of going through IP renumbering sprees every year or two and it's a true pain to keep the routing table, Zerotrust provider config and firewall rulesets in sync.

  • > a cheap fanless box with several network ports running linux

    Do you remember the name of the product?

    • I like protectli boxes. x86, low power, coreboot options, lots of network interfaces. The apus everyone recommends (myself included) are no longer available :(

      1 reply →

    • Two devices I use - both running Debian, and both being open-source hardware to some degree or other:

      PC Engines APU2, AMD x86_64, 4-core, 4GiB, 3x Gigabit Ethernet, 3 x mini PCIe, SIM slot, USB 3, Serial, SATA ports. Mine has dual band WiFi in one mPCIe, SSD in another.

      Turris Mox, Marvel aarch64. This can expand via plug and go via a range of extension modules. I've got one with 25 Gigabit (3 x 8-port modules) Ethernet, 1 x SFP, 5 x USB3, Wifi, Serial.

      10 replies →

    • Not the poster you're responding to, but...

      I'm running OPNSense on a GMKtec G9 (a N150-based NUC with dual 2.5Gbps NICs), and a cheap managed switch. All-in, you can get it today for well under $300. Even that is rather overpowered for running my house.

      The toughest component to pin down was a mesh wifi system that supports tagging VLAN segments. That's almost exclusively enterprise territory, so it's hard to find something affordable.

      2 replies →

  • You can do it like this, or (easier IMO if your router doesn't support it) you can just setup a raspberry pi as a VPN router then set you dhcp server on your router to hand out the RPIs address. You can then switch on to the normal connection at any point you need by just changing your default gateway back to .1

    2GB Pi5 maxes out the 1Gb port.

  • my solution to this is to have centralised VPN splitter (x-ray/singbox) sitting on RPi, with tailscale attached to it. This makes it available from anywhere if the device is on TS network. With added benefit of rule based geo splitting to various zones.

I was hoping, from the title ("Geo-Unblocked") that this would be about arranging an IP address block that wasn't associated with the UK, rather than just selectively running some traffic through a VPN.

"Is this overkill for viewing the occasional Imgur image? Probably."

From the last couple of weeks of researching some stuff, it makes perfect sense - I keep stumbling across blogs and documentation that uses Imgur, and it's really quite annoying that I can't see the screenshot or image that is being referenced. It hasn't /quite/ hit the point to put something in place, but this is super helpful for the final straw - when it comes!

  • It's been eye-opening how far-reaching Imgur really is - for example, some of the images on the Core Devices (the new Pebble folks) website are actually on Imgur.

    This simple block is relatively trivial to bypass - but if they disappear tomorrow, a lot of things break.

    • > but if they disappear tomorrow, a lot of things break.

      Tale as old as time, long-running forums are graveyards of dead Photobucket, Tinypic and Imageshack embeds. Imgur has lasted longer than most but the cycle will probably repeat eventually, especially since they were acquired by faceless corpos a few years ago.

      7 replies →

    • makes me thankful for imgur deleting anonymous uploads a year or 2 ago

      that made multiple forums I've been on rush to download everything to their servers

  • Overkill right now, probably, but the Government seems hell-bent on locking down access to more and more things that we see as completely normal, so I'd say that it's forward planning.

    • When that happens, most VPN providers will face similar destiny.

      Which means that we'll all have to run our own VPNs, possibly masquerading as HTTPS traffic, if that remains viable against government interference (eg. they might ask to re-encrypt all traffic by ISP-level certs, and block any traffic unreadable by them).

      Internet as we know it is fading away.

  • it will certainly not stop at Imgur

    also, if foreign servers notice no real loss of traffic because people just circumvent draconian censorship measures from authoritarian regimes, then they can more safely ignore them without real repercussions

    the EU seems to be following soon, so it's important that people have readily available tools so the power dynamics change and it doesn't become economically unfeasible to refuse censorship pressures

  • I've found it a bit harder than I thought to bypass but veepn free with the location set to Singapore kind of works, if slowly.

Imgur is one of the more annoying UK geoblocks because they persist it with cookies, so if you want to view something you can’t just switch to VPN for a second without also changing browser sessions.

Reddit is worse… you can’t even view someone’s profile if they’ve ever submitted a post labeled NSFW.

  • Why would they do that? (Not a rhetorical question, just curious). It would suffice to block UK IPs for compliance, if visitors use a VPN to circumvent that Imgur would get more traffic and more ad revenue. No reason to put extra work into blocking those users.

    • Gives them proof they did their best to "protect minors" even if they circumvented the GeoIP rule: someone trying and realising it still does not work might get X percentage to not bother further thinking there was something smarter at play and not just GeoIP (which there is).

    • Could be for performance? Basically cache the group lookup result into a signed cookie that can be checked at the edge rather than needing to do a geoip lookup for every request.

  • In other words, we're entering a dark age for the internet.

    • Maybe, maybe not. It'll be signficiantly harder for the EU to target decentralised services with no organisation behind them. It'll be far easier for them to put every major tech site which accepts VPN traffic into the box of organisations they can still fine. I'm not entirely sure the wider population will really care all that much once the dust settles. The internet works in China, and people are happy with it, and while we can agree that is probably what you'd call th dark age, you'll need significantly public opposition to do anything about it. I think we'll sadly see most major tech sites adopt whatever age verification tool the EU builds. They did with all the various form of payment system though this was obviously helped along with the API provided by companies like visa.

      Honestly you could probably even use the 0 cost back charge that visa has, which is used by some finance services to verify that you are who you say you are through the visa connection to your national digital identity.

      2 replies →

This can be done on UniFi using policy based routing too trivially if anyone wants to repeat this.

Instructions using the unifi mobile app as it’s what I have to hand:

1) download wireguard conf file from vpn provider. On mobile app settings -> vpn client -> add new -> wireguard. Upload the file and save it

2) settings -> policy engine -> policy based routes. New. Select what to route -> specific traffic. Source = all devices. destination = domain name. Here add any domains you like. Interface = add the vpn you added in step 1

  • The only downside is this doesn’t work if you have IPv6 enabled as UniFi Network still allows those to bypass the VPN.

    I ended up making a long list of firewall rules to block specific sites IPv6 ranges, which worked until I hit cloudflare backed sites.

    I’m really hoping UniFi start supporting IPv6 WireGuard soon.

    • Wow, this is unbelievable. I thought UniFi was a premier networking product. Certainly its price would suggest so. Not supporting IPv6 in 2025 is unacceptable.

      1 reply →

I've done similar. But I just used PBR (policy based routing) on my OpenWRT router. Took about 15 minutes to set it up. You can pick which domains go through VPN. Works great.

I feel like I'd rather solve this with a proxy PAC file. I recently started using this on airplane Wi-Fi where they'd block VPNs, but strangely not SSH. Dynamic forwarding with a good PAC to "direct" connect the onboard entertainment and flight tracking hosts/URLs works great!

they block VPNs too, if yours is working it's just a matter of time until they get to it. Avoid using imgur entirely. What I find insidious is that unlike reddit and some other sites, they won't tell you it's blocked, they'll give you this:

{"data":{"error":"Imgur is temporarily over capacity. Please try again later."},"success":false,"status":403}

  • Even if they give you this error if you load and image directly, it will often still work if hotlinked in a web page.

  • That’s what I get if I go to their page, but when curling the image directly it works fine

> even if I installed a VPN on my main machine, what about my phone? My laptop? My desktop? Every device would need the VPN running, and I’d have to remember to connect it before browsing. It’s messy.

Is there a way to install a VPN such that requests to/from certain domains (e.g. imgur.com) are routed via the VPN and the rest of your traffic is via non-VPN?

This would solve the problem of constantly having to dis/re connect VPN, and do it in an automatic fashion (i.e. without the manual steps of first recognising there's an unavailable asset on the page, opening VPN app, switching it on etc).

Such a configuration would also be very useful in other situations, e.g:

- using social media in countries that require age-verification

- using apps that geoblock (e.g. spotify blocks my subscription every few days because it detects a change in country, but what it's really detecting is simply whether or not my VPN happens to be on/off)

- accessing sites which are blocked (e.g. Thailand blocks common UK news sites which have said unflattering things about Thai royalty).

  • That'd be "split tunnel/VPN" by domain name, and usually it's limited to HTTP/S requests (because the hostname comes with the petition header), but some vendors (like ZScaler) do tricks to apply it to different protocols.

    For example, the equivalent in Tailscale would be an "App Connector":

    https://tailscale.com/kb/1342/app-connectors-setup#add-a-cus...

    • This is all new to me, but seems odd (startup idea?) why there isn't a SaaS letting me accomplish this on iPhone in a few minutes. (a few youtube searches for 'how to split VPN' are hopelessly theoretical as opposed to practical)

      E.g. I'd definitely pay $10/month for an app that lets me input domains and which country to re-route traffic through.

      E.g. a handful of social media apps via US (my country has age verification), a handful of news sites via UK (some countries I travel to block them entirely), spotify via a single country (I don't care which one, so long as it's constant).

      I currently use ProtonVPN iPhone and macOS apps but AFAIK it routes all traffic through a single country which requires opening the app and manually changing it each time you want traffic routed via a different country.

      Extremely keen to hear any solutions people have used on their own devices.

      4 replies →

> First, I just upgraded to 2.5 Gbps internet and I don’t want to route all my traffic through a VPN and take the speed hit. I have this bandwidth for a reason

You don't have to. You create a container which runs openvpn to connect to your vpn provider, and also hosts an ssh daemon. The ssh daemon receives incoming SOCKS5 connections from a firefox portable browser, which has been configured to use the proxy (your Docker openvpn-container) for browsing and DNS resolution, and pipes it through the VPN tunnel.

So you have that one browser just to surf imgur. if that's your thing. And you could also use Firefox on Android (maybe also iOS) with those proxy settings (a secondary Firefox browser, like the beta version).

So you get very high control about what you are using the VPN for, you don't just pipe your entire OS's network traffic through the VPN.

  • This would have the exact problem mentioned immediately after the paragraph you quoted. Every computer, phone, etc. would need specific setup. The author is clear about their goal:

    > I wanted something cleaner: a solution that works for every device on my network, automatically, without any client-side configuration.

  • This is a great idea except for me (and for the author I suspect) I regularly come across attachment of Imgur hosted images on sites (like a post on a DIY forum but not all of them) so it wouldn't solve my issue unless I were to use your browser in the container all the time (I suspect the author also doesn't just 'surf imgur' but randomly comes across images hosted on imgur linked to from other locations).

  • That doesn't seem very practical. The issue is that imgur links are everywhere and you wouldn't want to switch browsers whenever you encounter one. Not to mention it requires per device setup. Author's solution is much better than what you describe.

  • Nope, security/privacy is always a trade off. It's much much safer just to route all your traffic through a VPN. I get ~200-500 Mbps with Mullvad, that seems good enough. Sucks if you upgraded to 2.5 Gbps before checking, but oh well

  • > So you have that one browser just to surf imgur.

    Doesn't solve the real problem, being fails of imgur embedded it many others you surf.

a-ha, if you happen to have a Unifi router then a simpler setup would be to do policy based routing by hostnames through a vpn client maintained in the router config

> Second, even if I installed a VPN on my main machine, what about my phone? My laptop? My desktop?

Also, Imgur blocks many VPN IPs. I use Mullvad and I have not yet found a single Mullvad IP that can access Imgur.

This took me a good 4 hours uninterupted to setup as I had not a single item in the stack setup yet (PiHole, Traefik, etc.) but do have Docker running on my NAS, but the end result is satisfying.

To anyone that wants to follow this article, it's more general guidance than an actual tutorial, there's a lot of holes to figure out.

It also doesn't work when directly accessing imgur, even if you add rules for the domain and the other subdomains they use, which is annoying.

  • Hey. I’m glad you got it working. I didn’t intend it to be a step-by-step tutorial, more like a “hey, this is how I solved it”, with some details like the configs in case you want to follow along. And yes, the website itself still does not work, no matter what URLs you try to fix; it’s just the images, which, for me, are good enough.

Nice work.

I've thought about doing something similar as well! It drives me nuts this ban, everywhere I look I see these blocked images. I thought about making a chrome extension that proxies.

Could this be built into open source routers? If you wanted to get fancy you could even select the best VPN for the particular service.

  • You can run the shadowsocks client on some routers and pass selected traffic via your external shadowsocks server.

    I haven't needed to do this since I move to the US, but IIRC the rules were based on IP subnets.

    The approach in TFA is more sophisticated and fine-grained.

  • gl.inet routers running OpenWRT do this easily in the newer firmware versions the last few months.

Next-gen VPN: content-aware routing. Just as NAT keeps track of who is talking to what, VPNs will one day actively detect that traffic is hitting blocks and re-route that through exits not subject to blocks. Bypassing local restrictions on an ad-hoc basis will become seemless.

So imgur is still alive?

From Italy (no VPN) I've been getting «{"data":{"error":"Imgur is temporarily over capacity. Please try again later."},"success":false,"status":403}» for any imgur url for maybe an year

That's a lot of steps for something that would be a simple route rule or mangle + mark routing on mikrotik.

The route rule would route out a VPN instead of the main route.

If the domain name resolves to many IPs you can keep an address list up to date using a simple script.

  • With proper configuration Mikrotik can do preety much everything network related. Awesome product and os.

  • > That's a lot of steps for something that would be a simple route rule or mangle + mark routing on mikrotik.

    I'm sorry but suggesting buying and setting up hardware as an easier and more accessible alternative to a purely software-based solution that will take at most a couple of hours to install is simply ridiculous.

    • > is simply ridiculous

      Way to exaggerate to make a point much?

      A mikrotik router can be purchased as low as $24.95 and it will not only provide you with an enterprise grade router, it will also provide you with the functionality I mentioned above.

      The point of my comment was that it can be done at the router level, instead of requiring the user to run and maintain Pi-hole, Traefik, Gluetun, Nginx, and the server required to run these apps/containers.

Did this with policy based routing in my opnsense (pfsense) router a couple of weeks ago. egress via a specific tailscale exit node for a list of domains including Imgur.

Also browsing Minecraft mods/shaders was my motivation ha.

There is currently no alternative to geo-blocking the UK if you don't want to get threatening legal letters from Ofcom that order you to break the laws of your country.

Possibly a great way to circumvent stuff like Netflix/Spotify/whoever's "same household" requirements? A RasPi or cheapo Mini pc configured with this and PiHole that I can set up in my "remote family's house to funnel their Netflix/Spotify traffic through my internet connection/IP address?

For some reason T-Mobile in the Bay Area can get randomly geoIPed to the UK so imgur just randomly breaks on my phone. Marvelous

If your VPN provider offers a socks5 instance you can do this entire thing with a socat oneliner + the dns hijack of course.

This is quite easy with OpenWRT.

Install the Wireguard packages, create a connection to your VPN of choice in a nearby country (I chose Sweden). Then I used the "vpn-policy-routing" package to route Imgur IPs (199.232.196.193 199.232.192.193) through the VPN.

Works for websites that keep nagging you for age verification too.

But seriously, it's been more emotional than I'd expected to get my cat memes back.

  • Yeah, doing it with OpenWRT and PBR is definately much simpler than this approach. However by using hard-coded IP addresses you are at risk of breakage if they change in the future.

    Also fastly-hosted services are a bit awkard to configure IP ranges to cover whole blocks as they seem to not use normal CIDR-blocks for different customers.

    But you use PBR's ntfset functionality to have your dns server automatically update a set whenever an DNS entry is resolved, then set the policy rules based on the set.

  • Didn't even know it was possible. But thanks to this comment - got the same setup via my Unifi router too. Thanks!

It works great till you leave your house.

Unless you vpn back to your house, but then again, now you are using double vpn!

What's annoying about this block is that Imgur detects Telegram's server for image previews as coming from the UK but they are in the Netherlands so when someone sends an imgur link through Telegram with the little preview attached you now only get the "not available" image as prevew...

This is the correct way to make exceptions for hostnames, not policy based routing on a router that merely translates hostnames to IPs, IPs which could be shared by 1000s of services and thus a much wider whitelist than you wanted. Nice

Interesting. I have nextdns.io and VPN proxy and a unifi router. Is this possible for me?

So you are just a simple GB citizen and some external site blocked access by country affiliation?! Is there any practical reason for blocking access to that site by geotargeting?

I've not managed to succesfully use a VPN to get around the geoblock. It seems that most of VPN exit nodes are also blocked (but in a different way)

I wonder how did you overcome https. As I understand the request that goes to rerouted Imgur proxy will have different cert.

  • AIUI, nginx doesn't terminate the SSL/TLS connection - it is just passed through as is. `ssl_preread on` extracts the server name from the Server Name Indication (SNI) send as part of the TLS handshake, which is unencrypted.

    I just set up a similar system (Debian LXC permanently connected to a VPN, nginx proxying imgur.com and all its subdomains with the rest being dropped), and it works quite well. Setting DNS records for imgur.com and {api,i,s}.imgur.com seems to be sufficient to get the site and inline images working (not 100% if all are needed - I haven't fully tested it yet).

  • Presumably TLS still only happens at the browser and at the Imgur origin server. Everything in between just routes the request without being able to read any of the encrypted stuff. This is no different than using your browser while your computer is connected to the web via a VPN, except that in this case only a small subset of requests go through the VPN.

This is such a deep rabbit hole! Other alternatives include CDN and residential proxies, no VPN required

Another thing that you can do when you have the IP address range is just run a traditional split-tunnel. A simple way to do that is to run Wireguard on a cheap VPS, then have only traffic to those fixed IPs go to that tunnel. The nice thing about this is that tiny WiFi routers (e.g. hAP AX S) these days support Wireguard at pretty decent speeds. Then anyone on your network gets this, and if you want it while you roam you can just run the Wireguard VPN on your phone as well with the same rules.

> Back when Reddit embedded everything on Imgur, maybe fifteen years ago, it was genuinely useful.

This is true, and I learned to hate every bit of this fact. It taught me to despise hotlinking with passion.

All of those links are now down the train, and you have to pray that someone not only backed up the specific image you're looking for, but that they did so in a discoverable way.

  • I guess at the end of the day it was a tradeoff we had to take for the lack of a better alternative back then

    • That is true. I think (I don't use Reddit anymore) even today, not all subs allow for attaching images to comments. I don't remember if posts ever had this same limitation, but it wouldn't surprise me.

Imgur doesn't even let me sign into my almost 10 year old account from many countries while traveling. Never seen this kind of wack shit anywhere else. The fuck's their problem?

Imagine having to install a vpn to browse the internet in a first world country.

[flagged]

  • Oh, I guarantee you that this has not been touched by any AI. I used to use emdashes all the time, then people thought those were AI telltale signs, so I stopped. I loved making lists. Same thing.

    Now I’m not allowed to say “key detail”??

    • Just write correctly in your preferred style, and ignore the anti‑AI hate. You’re allowed to say whatever you want, and you’re allowed to use AI as a tool while writing — there’s nothing wrong with it.

      Angry AI-phobic keyboard warriors on the internet don't decide what's right or wrong, or what you're allowed to do.

      (Is this very comment AI-generated? Make your guess. Good luck!)

    • Yeah that's annoying. Maybe you could add a disclaimer on your blog saying you do not use AI to write and then just write however you like the most? I think it would help both yourself and those who want to avoid AI content.

      1 reply →

    • I was also a major fan of the em-dash, but my HN comments were too honest, harmless and helpful and now all major LLMs are RLed to sound like I do when I am supposed to be working.

> ⌘+F, "vote", Not found

Seems the author forgot one step.

  • The law was drafted by the government of one party, enacted by the government of the other party.

    • That isn't quite true, because the law was enacted on October 26, 2023, which was still the same party that drafted it.

      Of course, it is true that it is being supported by the current government, however the only way a future government could have avoided the law coming into force would be to repeal it with a new act of parliament (because it was already enacted).

Great work! Perhaps not the appropriate OSI layer, but would be cool if this could pull the imgur blob from the wayback machine if unavailable on imgur proper. You'd still need this networking setup, as archive.org is blocked as well in the UK per ground truth from others on HN.

  • > as archive.org is blocked as well in the UK per ground truth from others on HN

    I am in the UK.

    archive.org is not blocked — not the Library or the Wayback Machine.

    ETA: I just checked re: the comment toomuchtodo linked to, and it actually is blocked by default on my mobile phone as adult content, because I've never bothered to disable the adult content lock on that device. I get redirected to a page operated by my mobile network where I can undo the lock by giving them info; I might do that one day, might not.

    For non-UK users: UK mobile phone providers all block adult content by default at the account level as a simple parental control measure, and have done for some time, largely because PAYG data is really rather cheap here.

    Interesting but not particularly bothersome. Apparently this decision is about eleven years old.

    • It seems to differ by provider. When I was with Three it was an irritating process of having to either call up or visit a shop in person and say "I want to look at the naughty pages, please". Another provider (I can't remember which) had a method where you had to supply a credit card number.

      I'm with "1p Mobile" now who are a virtual network on EE, and their adult content block is just a toggle in your online account, with no faffing around required - you can just hit the toggle. I presume the idea is that you don't give little Timmy the password to his own account portal, but I don't know what's to stop him getting his own SIM by himself.

      With Three, I found the adult content block caused other problems with SSH connections dropping, various random stuff getting blocked and so on, which all went away as soon as I had it disabled, so it's worth doing even for non porn fans.

      1 reply →