Monthly Archives: December 2017

CrossCountry trains: a badly communicated shambles

So I’m catching the train south from Macclesfield to Oxford – something I’ve done plenty of times over the past eleven years. I don’t usually go for the last direct train of the day, but on this occasion, I did. 1949 out of Macclesfield, 2215 into Oxford. It’s direct, which is important when you’re lugging a large suitcase and some Christmas presents.

Things did not start well at Macclesfield, with the train arriving fully 45 minutes late and listed as going to Birmingham New Street. Unfortunately I have an 8AM Tesco delivery arriving at North HQ tomorrow, so giving up and trying again in the morning wasn’t something I wanted to do. So I dig into the National Rail app and discover I can still make it to Oxford by walking from Birmingham New Street to Moor Street, taking a local stopping train to Banbury, waiting for half an hour, and taking a local stopping train to Oxford – arriving at 0015. Properly tedious, but I do need to get home tonight, so I dig out a mince pie and prepare for the worst.

Sure enough, we get to Birmingham, the train terminates and they tell us all to get off. But on getting off, the signs on the platform make it look like the front half of our train is continuing to Reading (like it should have done all along). So I get on, sit in an empty first class carriage, and watch the signs on the platform switch from “expected now” to “delayed” and then the train moves off…

Panic. Am I about to end up in a depot somewhere in the Midlands, trapped on a train all night?

Moments later, the driver confirms we’re off to Reading as expected, and will make Oxford a mere 45 minutes behind schedule (time to re-arrange my taxi for the second time, sigh).

Why they couldn’t have communicated the train’s ultimate destination properly from the start, I have no idea. I was half minded to wait on the platform, in which case I could still be there, fuming that the train I wanted had gone without me because it wasn’t labelled properly.

Nought out of ten for communication, seven out of ten for still managing to get the train through the same night, and one compensation request coming up…

Update: I filed my compensation request from the train, using its own WiFi. Southern (who I bought the tickets via) do have a nice online process including uploading photos of the tickets, but why do I have to take any action? Given we have a national database of what trains were or were not on time, the statutory compensation ought to be refunded via the same means I bought the tickets through, automatically and without me having to do anything. I feel a letter to my MP coming on.

Giving things up for January

2018 should be an interesting year – I turn 30 (just two more years until a really significant round number). To kick it off, I’m giving up a few things for January…


Nothing surprising or controversial about this. I’ve done “dry January” for a few years now, and I find it helps me lose a bit of weight, save a few quid, and best of all, it reduces my alcohol consumption over the rest of the year by lowering my tolerance through the month off.


From 13 January in the UK (and the rest of the EU), the law will prevent merchants from charging extra for payment by card. I nearly exclusively use debit or credit cards these days anyway (Monzo is great), so now seems like a good time to try and run on them 100% and see how it goes. I find it much easier to budget if I have a full list of what I spent where, and obviously a card and a decent app allow that to be assembled automatically rather than from receipts. As recently as six months ago, there would have been a few blockers to my attempting this – but now that the buses and all the parking meters in Oxford take cards, it should be straightforward.


While digging through my Amazon history to pull some receipts for an expenses claim at work, I was mildly horrified to see how much I’d spent personally with Amazon in 2017. I won’t go into details, but taking a month off supporting one of the giants of capitalism should be good for my soul (and wallet).

I’ll report back in February on how all this went…

SSH rate limiting vs check_by_ssh – oops

Now that I’ve once again got reliable notifications from my monitoring system, being woken up by them at 6.30AM on my first day off for the Christmas break needed fixing. My Nagios has sent out lots of “spurious” alerts for some time, and my hope was that getting woken up by them would motivate me to fix it. I’m pleased to say that it has!

In addition to checking various machines respond to ping, my system also logs into them using check_by_ssh and checks various things by running commands locally. Sometimes the entire block of SSH-based checks for a server would flip over to CRITICAL with “connection timed out”, even though the machine remained up and running. There was no evidence of a high load average to explain the timeouts, and a bit of checking with netcat revealed that connections to port 22 on the machine in question really did time out from the monitoring machine (but not from anywhere else).

At this point, I had a lightbulb moment and remembered that our firewalls automatically block SSH connections from any IP address which attempts more than 10 in a 60 second period. This crude rate limiting is one of many lines of defence against brute-force attacks, but of course, some hosts have more than 10 checks run over SSH. And the way Nagios runs means that quite often, it hits the rate limit, then continues to do so as it re-tries the checks one after another. The backoff it performs doesn’t help, because it backs off the retry interval in lock-step for all 10 checks.

Having added an exemption to the firewall rate limiting for our monitoring server’s IPs, all is now well in Nagios, and hopefully the only rude awakenings from the alerts will now be genuine outages.

(And it only took me five years to find time to get to the bottom of this intermittent problem!)

Pushover (Android push notifications)

I’ve been looking for a new means of getting alerts from my Nagios (server monitoring) for some time. Previously, I used SMS notifications from Nagios, but at upwards of 5p per credit, given the way a flakey link can result in 10 or 20 notifications in a short space of time, this was starting to get quite expensive. It also doesn’t fit very well with the fact that SMS can cost more to receive abroad and, generally, I spend more time in places with a reliable WiFi connection that with a good mobile signal – especially when visiting family at Christmas.

What would seem appropriate here, then, is some kind of push notification service working over data rather than SMS. Notify My Android doesn’t seem as well regarded these days, but Pushover looks really good. I particularly like that you’re provided with an e-mail address which you can just plug in to things like Nagios to have e-mails turn up as push notifications, without having to script their API.

I’m 24 hours into their 7 day trial, and so far so good. Their app is nicely featured including mute/unmute of sound and vibrate notifications, and quiet hours.

Porting a mobile number to AAISP

Just look at my custom network name

St Columba’s has had the same 07 mobile number for a long time, and consequently it’s printed on various signage and readily available online. Traditionally, it’s been assigned to a pay as you go SIM card in a creaky old Nokia phone carried by our facilities manager. However, this approach has its limitations: when they’re on holiday, they have to physically pass the handset to someone else to handle the calls, and it leaves the phone number (arguably an important asset in itself) attached to a pay as you go SIM which might have an employee’s name on it rather than the church’s.

Issuing a new smartphone seemed like the opportune moment to sort this out. I did some digging into business mobile contracts – having the number on one of those would sort the ownership – but none of them seemed to feature call divert which could be configured without having possession of the phone. So I turned to a service I’ve written about here before. In addition to being able to buy 07 numbers on VOIP, AAISP will let you port in existing numbers using a PAC code. Coupled with a Sip2Sim SIM card in the phone, this neatly de-couples the number from where the calls get sent to and gives us the divert via a web page and all the other bells and whistles.

The ordering process was nice and simple and fully automated – I punched the PAC into the order form at A&A, and the number moved over within a couple of working days (it got briefly stuck in the middle, but A&A fixed it out of hours when I asked on IRC – try getting that level of service from a big company). Billing is all via direct debit, and no messing around with paper invoices, which suits us fine.

As the icing on the cake, I calculate that for the volume of calls and data usage of this particular device, it will work out cheaper than any of the mainstream corporate mobile deals I saw. I’ll report back on that.