System time:  Thu/02/19 : 04:49:16


Random attack!
<--- I totally want one of those.

And equally random, I can relate - On babies

Yet, more random - I came across this book recently... I skimmed through it to see what it's like and one paragraph in particular left me somewhat dumbfounded...

I watched the man as he did the drawings, watched him as he regarded the models, drew a bit, erased and drew again, for about twenty minutes. During this time, he became restless and seemed tense and frustrated. Later he told me that he hated his drawings and that he hated drawing, period.
If we were to attach a label to this disability in the way that educators have attached the label dyslexia to reading problems, we might call the problem dyspictoria or dysartistica or some such term. But no one has done so because drawing is not a vital skill for survival in our culture, whereas speech and reading are.

I'm not entirely sure why, but I never thought about it before, but for some reason this struck me as quite profound. Possibly as I share a similar dislike for drawing. Not for any particular reason other than "It's too difficult... and my drawings suck...". All that aside, I am so far finding it to be quite an interesting book overall.

Keeping with the completely random theme of topics, I do believe Beatport is more dangerous than iTunes Genius.
Partly, because it's a lot faster than the iTunes store, and it's chock-full-o-exclusives.
Oh, you can listen to a lot more than a 30 second clip of a song also.
Did I mention it's fast? Like, really fast? Like, buffers an entire song in ~10 seconds fast? And won't cause your computer to shriek in pain as it tries to load pages?
And that's on my pokey 3... well, 2ish mbit ADSL.

Here's another song.

Boogie Bumper

It's now officially known to me: It's not possible to terminate a pseudowire on a router subinterface. That is, at least - on a 7204VXR running advip 124-20.
<edit>Actually, it is, as I explain here.</edit>
Should someone be unfortunate enough to try this, you will encounter the following Optional Messages while watching 'debug vpdn l2x errors'. Best of all, they'll occur in a seemingly random order:

L2TP tnl 0219F:0000A30C: "No config found for remote peer R2, local/remote address,"
L2TP tnl 020F6:0000A3CE: "No application/session timer expired"
L2TP 00005:020F7:0000631C: "No disconnect reason given"
L2TP 00005:020F7:0000631D: "Payload type mismatch"

You may also find your tunnel is sitting in an Est-No-User or No-Sessions-Left state.
If you see this going on, swing that xconnect over to a physical interface and BAM! Instant tunnel, quicker than you can say undebug all.
Of note, you CAN also terminate them on a vlan interface, and in turn terminate that vlan onto an access switchport. On an NM-16ESW or something for example.

Obviously, I didn't get quite as far in my testing as I had hoped having just isolated the cause for those not-so-helpful errors just now.

Also, today fscking sucked.

Huh. My kitty seems to have decided that it's petting time. I'd best do something about it.

<edit>Holy typo's batman. Fixed.</edit>


Got my little hard-drive rigged up to roll. I'm pleased with the results, even if a little incident between me and grub wasted an hour or so because I didn't read the man page sooner.
It seems grub has grown a boot-pile of more features since I last tried using it for any purpose.
The ability to ls a drive,partition is immensely awesome when trying to determine which one your other OS's are on according to it's equally awesome UUID support.
Suddenly adding/removing drives, or moving the drive to a different machine won't blow up what's where requiring a constant need to drop to it's command-line.
Anyway, that's enough rambling.

Completely random amusing link of the month:
Colors! I'm tempted to get this for my DS, as the thought of having something small and portable to scribble on strikes me as a strangely attractive prospect, and I just can't justify an iPhone for said convenience.
Having come to this realization, I see that the official site no-longer provides their app for the DS, though some kind chap over here provides a place to snag it from.

This article about Microsoft Exchange's little (little?) foibles is a really great read.
I can somewhat relate to a lot of these little issues as my workplace recently made the change to Exchange for corporate messaging and scheduling.
I say recently, but it's been about 8 months or so now I guess, and though it pains me to admit it - the shared calendar and scheduling Exchange can offer is pretty awesome.
E-Mail however... that's a different matter entirely. To say it was appalling would be an understatement me thinks.

No music today.

<edit>New title image. I love that face for some reason... it amuses me so.</edit>


On the grounds that I'll never remember these steps in a hojillion fricking years; sendmail steps to emulate qmails control/smtproutes:

root@memnarch:~ # cd /usr/share/sendmail
root@memnarch:/usr/share/sendmail # cp cf/ cf/
root@memnarch:/usr/share/sendmail # vi cf/
root@memnarch:/usr/share/sendmail # diff -u cf/ cf/
--- cf/     Mon Mar  7 00:41:52 2011
+++ cf/  Mon Mar  7 00:41:20 2011
@@ -23,6 +23,7 @@
FEATURE(nouucp, `reject')dnl
+FEATURE(`mailertable', `hash -o /etc/mail/mailertable')dnl
DAEMON_OPTIONS(`Family=inet, address=, Name=MTA')dnl
root@memnarch:/usr/share/sendmail # m4 m4/cf.m4 cf/ >
root@memnarch:/usr/share/sendmail # mv /etc/mail/
root@memnarch:/usr/share/sendmail # echo ' smtp:' >> /etc/mail/mailertable
root@memnarch:/usr/share/sendmail # cd /etc/mail
root@memnarch:/etc/mail # makemap hash /etc/mail/mailertable < /etc/mail/mailertable
root@memnarch:/etc/mail # ps -waux | grep sendmail
root     29992  0.0  0.4  1264  2064 ??  Ss    12:38AM    0:00.03 sendmail: accepting connections (sendmail)
root      2393  0.0  0.1   448   748 p0  S+    12:47AM    0:00.01 grep sendmail
root@memnarch:/etc/mail # kill -HUP 29992
root@memnarch:/etc/mail # syslogc all | grep sm-mta | tail -1 | cut -d : -f1-4,9
Mar  7 00:47:08 memnarch sm-mta[13113]: p27901EZ024239:00, mailer=smtp, pri=30685, relay= [], dsn=2.0.0, stat=Sent (ok 1299488402 qp 22729)


Don't Cry

Holy good gravy. I was never expecting this to turn up in the iTunes store... but I'm not disappointed.

So I picked up a 500GB USB hard drive for various mobile data purposes. Anything not important, or not already on my IronKey will go on it.
I also have the intent to be able to boot into OpenBSD, or some flavor of Linux from it, use it to transfer source code, tarballs, Virtual Machines, etc al. to and from various devices for work and personal purposes also.
Now, the stage is set. This presented a bit of a problem owing to the platforms I deal with, some by choice, others on a because-I-have-to basis.

BSD, Linux, OS X, Windows, support FAT32, except it sucks
Linux, OS X, and Windows support exFAT, but not BSD
Linux, OS X (to some degree) and Windows support NTFS, <bias>except it sucks</bias>, and BSD doesn't
BSD, Linux, and OS X support FFS, but not Windows
Linux, OS X and Windows (the last two, only partly) support ext2/3/4, but not BSD
Linux (sortof), OS X, and Windows (sortof) support HFS Plus, but not BSD
I could go on... but long story short, there's no perfect fit.

Sooo... I wound up with:

  • 200GB ext2 partition
  • 100GB FFS partition
  • 200GB FAT32 partition

That way I have at least some space for everyone to play nice to some degree, and still do what I intend.
I'm curious to know if anyone out there has any better ideas here.


This sums up my current mental-state quite well.

So much for that early night.

Little Bit Of Feel Good

Happy Valentines Day.
...Granted I'm a day late, but meh... I'm exempt from the ritual anyway.

Bunch of dead youtube links wuz here

That is all.

Best Of Me

NAT's a funny thing, as it turns out.
For the first time in a long time, I actually enjoyed doing something at work...
One of our ongoing projects from last year gave me the opportunity to route a subnet to a customer whom was migrating from another service provider.
Having convinced the Senior IT staff of said customer that routing them their subnet was a good plan, I began setting it up in short order.
So, the end result was they get an extra IP address, and are running a routing protocol to advertise their shiny new subnet into our network.
But now there's a private IP range between said customer, and our Aggregation Routers over which public internets needs to be available.
It never occurred to me previously that because NAT just modifies the IP headers and creates a state, you can do something funny like NAT to an IP address that doesn't exist!
"Seriously... will this actually work?"

  • Translate packets to the non-existent IP, create a state
  • Send translated packets towards the internet
  • Replies are happily forwarded to the router advertising ownership of it's subnet.
  • State table is referenced, NAT reversal happens, and life goes on.

Meanwhile, never-mind the fact that the IP address doesn't actually exist anywhere, except in the form of a promise that it might be somewhere in the subnet being advertised.
I found this whole experience preposterous, and yet strangely droll both at once.

Also, this is made of epic win. GNS3, in a Ubuntu Virtual Machine, ready to rock!

Hmm... I really, *really* need to do something about all these youtube videos...

Nitro Narcosis

So, it seems all this time I thought I setup spamd for greylisting, but was actually blacklist-only.
Words cannot emphasize how stupid I felt having discovered this.
Suffice to say, I have since remedied the situation.

[root@zozu pf]# syslogc daemon | grep spamd | tail -5
Feb  9 21:53:17 zozu spamd[11939]: connected (1/1), lists: uofa
Feb  9 21:53:17 zozu spamd[11939]: connected (2/2), lists: uofa
Feb  9 21:55:13 zozu spamd[11939]: connected (3/3), lists: uofa
Feb  9 21:59:56 zozu spamd[11939]: disconnected after 399 seconds. lists: uofa
Feb  9 21:59:57 zozu spamd[11939]: disconnected after 400 seconds. lists: uofa
[root@zozu pf]#


Got to spend a couple days in Prince George this week for work related purposes. Naturally, being there the day after a snowfall, the streets were absolutely peachy.
Note: Though I'm aware that article is actually a year old, that doesn't excuse the fact that snow removal from Downtown, Central, and Northern Prince George is an absolute farce.
Oh-well... should be mostly cleaned up with any luck at all before my venture back up this coming Friday.

To switch gears rather randomly, It would seem my poor Blackberry Curve 2 seems to be becoming progressively more and more defective. It's recently begin the dreaded random reboots.
Only a couple of times a week, but it can only go downhill from here. I wouldn't otherwise mind, except it takes well over two minutes to start up.
I've given up on fixing not having a send option when composing or replying to e-mails.
Should anyone else have this problem, a 100% effective work-around, is to forward the message you wish to reply to. Or you could buy a Torch I guess.

Not much else to report of late. Slipped on some ice last weekend. I was lucky/unlucky enough to catch myself with me left elbow.
According to ye-olde doctors - somethings torn in the shoulder, but not serious owing to the lack of swelling. Hurts like an absolute bugger though if I pick up anything with much weight to it. One week of no-lifty-heavy-objects at least.

Everybody Dance!


So, it seems Beardyman managed to have done a album. Wonder how long before it turns up on iTunes. Probably some time come to think of it, since you can but pre-order it from, and it's not due 'till late March.

I also came across this rather well done short documentary by Brother of Beardyman. Aside from being well done, it's really quite interesting - or at least, I believe so. Watch it, it's only short.

Also, randomly found this amusing bug at work recently.

R1#conf t
Enter configuration commands, one per line.  End with CNTL/Z.
R1(config)#int g2/0.50 ?

R1(config)#int g2/0.50 (^W^W^W^W)
R1(config)#do sh int desc
Interface                      Status         Protocol Description
...lots of interfaces...
Gi2/0.50                       up             up
...lots more interfaces...
R1(config)#what the f
% Invalid input detected at '^' marker.
R1(config)#int g2/0.51 ?
R1(config)#int g2/0.51 (^W^W^W^W)
R1(config)#do sh int desc
Interface                      Status         Protocol Description
...lots of interfaces...
Gi2/0.50                       up             up
Gi2/0.51                       up             up
...lots more interfaces...

To the un-initiated, it seems that Cisco IOS creates the sub-interface for you when you hit '?' instead of enter to execute the command.
'?' is supposed to give context sensitive help, which to be fair, it does by saying Carriage Return (<cr>) is the only possible option, but still.
I found this highly amusing.

4 Million Ways

Am currently resisting the urge to install Sacrifice. A buddy of mine laughed when I said it was probably my favourite game of all time, dethroning the previous favourite of Anacreon.
I believe the conversation went something along the lines of... "I thought your favourite games only had text graphics!".
Come to think of it, George Moromisoto released Anacron 2.0 on his website a couple years back.
His other game Transcendence is also pretty epic actually. Think Nethack meets Star Control. A free play type world where you pilot a little ship, shoot pirates, raid wrecks and asteroids for better guns / armor, etc.
That said - Ignoring the fact that Anacreon, Nethack, and Dwarf Fortress all have ASCII graphics, Not all the games in my top 5 favourites are text/ASCII graphics only...
...Just most of them.

Hmm... spent 15 minutes with my tablet tonight. Grabbed Pixelmator last night to see what all the hubbub was about, and I have to say it is quite a good graphics editor.
Compared to my experience with Photochop, the tools seem to cater to my tablet extremely well. Now, if only I could get some skills to produce something that looks decent.
Oh-well. Side note, that sketch is slightly related to some crazy D&D idea I have in my head.

Huboon Stomp

Have you ever had to deal with something so insanely stupid, that you just know it's going to ruin your week?
Then as time goes on, you realize that your previously-thought-to-be-over-apathetic assumptions were actually fairly conservative?
Thanks Alvarion, thanks a #$%*^)$ bunch. January 24th, and I'm already considering the year ruined.

It occurred to me today, that there has to be a better way of doing port ranges on non-asa, or non-pix type routers.

R2# sh run | incl ip nat
ip nat inside source static tcp 5001 interface FastEthernet 0/0 5001
ip nat inside source static tcp 5002 interface FastEthernet 0/0 5002
ip nat inside source static tcp 5003 interface FastEthernet 0/0 5003
ip nat inside source static tcp 5004 interface FastEthernet 0/0 5004

And, here's what I came up with after a bit of screwing around:

R2(config)#do sh run | incl ip nat
ip nat pool 172-16-0-21 netmask type rotary
ip nat inside source list 1 interface FastEthernet0/0 overload
ip nat inside destination list 100 pool 172-16-0-21
R2(config)#do sh run | incl access-list
access-list 1 permit
access-list 100 remark Test NAT port range for retarted machine
access-list 100 permit tcp any any range 5000 5010
R2(config)#do sh ip nat trans
Pro Inside global      Inside local       Outside local      Outside global

So ssh'ing to a BSD qemu host on with sshd listening on a few dozen ports, and whammo - seems to work just fine, and that config looks so much nicer.
I don't see why UDP wouldn't work either, and you could presumably just add more fine-grained stuff to the ACL instead of a hojillion separate ip nat translation inside source static tcp <host> <port> interface <foobar> statements.
AND, you get to put remarks in an ACL. Joy of Joys!

In doing this, I also learned that enabling NAT on a 3725 in GNS is a bad plan when your router only has 128 megs of Ram. Though the fireworks display is impressive, it's not pleasant at the same time.


House Of Fun

Lightning trip to Prince George and back today.
In my mind, it seems that waiting for snow and ice to melt off the highway, or hoping it will go away by driving over it with snow-plows with their blades up are not the most effective approaches.
Though in most cases, I did prefer the 6 and a half-some centimetres of snow over the 20km of polished ice sheet-come-washboard.
Naturally, there were retards everywhere, paying no heed to the travel advisory. I suppose I should be one to talk... I was out there among them, though I refrained from passing someone on a 2-lane bridge, in a construction zone, in said road conditions.
I've also learned that the Tilden National bumper-sticker is not actually an advertisement for some rent-a-car service. Oh, heavens no.
It's actually a warning to others that implies:

"Holy crap! Lookout! The occupants of this vehicle are morons! They will pull out in front of you and proceed to do 30km in a 100km zone in the middle of both lanes!"

Oh-well. I'm not annoyed. And I certainly wasn't hoping the person that passed me on that bridge would crash horribly through the barrier between him and the Fraser River below.

So, for some reason I haven't quite worked I'm re-taking Math 10, 11, and probably after, 12. It's strangely comforting to spend a few hours doing maths. I figure it must have something to do with the fact that the numbers don't lie. A flawless logic that can't be argued with.
I must say, It has taught me that my mind has immense difficulty comprehending the frigging mertic system of all things. It seems I think in Kilometers, meters, inches, and feet, and there's no real in-between.

I managed to track down some revision of my assorted programs of old. On one of the many old hard-drives I jammed into a box, in a box, under some boxes long ago.
Funny, I seem to recall the programs were larger than 200-ish lines, though they may have been before I got frustrated with passing a couple-hundred variables and pointers between functions, and re-wrote everything from scratch using a data:class.
Heheh.... rioting ascii peasants. Awesome.
Rambling aside, this find sent me on the search for a somewhat decent C/C++ IDE. It seems the one I used to use from bloodshed doesn't have a port for OSX, so naturally - that was out.
For some reason, I nabbed Coda, which is actually not in any way shape or form, an IDE for C or C++.
It seems to be nothing short of amazing for web authoring though. It's the first thing I've seen with all the nifty element inspection, timeline, profiling, resource information, et al; that you get with google chrome, except - you can edit it, turn on/off chunks of CSS to view differences in real-time pre-edit... the list does go on.
I fixed up the main page templates, and Image Gallery in very short order while taking it for a test drive.
All a fixed width now, and there's 3 columns for the images on the gallery now - which are also more evenly centred.
I must say, I am suitably impressed... though strangely, I still prefer Espresso for what little Java I have to deal with. I guess that's what you get for specializing at something.

Incidentally, I figure this song would be friggin' awesome to play in Rock Band.