Posts tagged

What happened?

On Sunday 9th September our monitoring noticed that the Gateway site had become unavailable. Analysis provided by monitoring narrowed the problem down to the DNS not resolving correctly; our entire domain had been rendered inaccessible. The root cause of this was a DDoS attack against our DNS providers for the domain, PointHQ, causing their upstream provider to temporarily remove all their servers from the routing pool to mitigate damage.

What was affected?

PointHQ provides DNS services for the and domains, meaning that any services using these domains were potentially unavailable. The most visible of these services are the address shortener, and the University’s Gateway service, although other services were affected.

As DNS caches expired any services using the affected domains were left unable to be resolved by end users, meaning that the services were inaccessible. Since implements a redirect to a subdomain, accessing Gateway using this domain was also affected.

What was done to fix the problem?

PointHQ were working to mitigate the problem throughout its duration, and DNS servers were restored later in the day. Essential records from the domain were also duplicated on the Rackspace Cloud DNS service, with the Rackspace DNS servers being added to the domain record to serve as a backup in the event of PointHQ becoming unavailable again later.

What is being done to stop this happening again?

  • The domain will retain at least one backup DNS server in its record, protecting essential services against a single failure.

As a few people have requested, our magical URL shortening service at now comes with a delicious API. It’s directly compatible with the API, and is so simple that even a monkey could use it (providing the monkey was familiar with the basics of HTTP GET and URL encoding).

Its usage is very simple. All you need to do is call with the GET parameter ‘longurl’ set to a URL encoded version of the URL you want shrinking. For example:

The site will then return (in plaintext) the shortened URL, or if you’ve broken it a HTTP 500 error code.

It’s really that easy. More changes are in the pipeline, and as always I am taking requests.

I thought you might be interested in taking a look at my new URL minifier:

This one is just for the University, operated entirely in-house, and because it’s a Labs project we can make it do what you want. Got something cool you want to see in a URL minifier? Want it to check links on occasion to make sure they’re working? Want to be able to change the destination of a link? Want to see custom namespaces for your links? Let me know.