Anatiferous blog | Move every zig.

Meta-Site

Welcome to Anatiferous: Using barnacles to make geese since 1689!

Howdy! This is my (William Reading's) webpage. At the moment, I only have this blog script and my gallery up, but I hope to get more stuff on this page at some point, or so I thought when I created this site years ago. Updates and shiny new copy to eventually go here. If you'd like to contact me to point out that I've done something to break XHTML/CSS standards or heaven forbid--look at my Vita--drop me a line at my e-mail address bill +spam @ [ELEPHANT] aggienerds.org. Simply remove "+spam", the spaces and the pachyderm along with its brackets and that address will reach me. I'm also available on Jabber/GChat/AIM/MSN with the same address above.

2/20/2006

ByteMe Optimizer

Filed under: — bill @ 2:00 am

I recently became a user of Sprint’s new EV-DO service, which I think is great with the exception of a few things. One of my major issues was that they use ByteMobile’s Optimization Services Node by default and don’t provide a Mac OS X client.

Now granted, they don’t even support Mac OS X, so I can hardly expect them to provide a client for disabling the image compression. On the other hand, I want to use Mac OS X and don’t like my images getting compressed. So I did what any red-blooded Mac OS X developer (well, or college student avoiding studying) would do and put on my reverse engineering cap.

After running ethereal on windows to get some idea what’s passing over the wire, I discovered two things:

  1. The way Sprint deals with ByteMobile in their connection client is slightly wrong in that it assumes that if ByteMobile isn’t on, then nothing needs happen for the compression to be off. Since it defaults to on, this behavior is wrong. (I’ve got a support ticket in their queue with my name on it to report this problem)
  2. I don’t have to actually reverse engineer their protocol because all I need to do is replay the magic disable packets from the client

A few hours later, out came ByteMe Optimizer. I’m not sure if it’s quite perfect yet, but it suits my ends pretty well. If you use Vodaphone, China Mobile, T-Mobile, Cingular, NTT DoCoMo, Orange, Sprint, or a mobile provider that for whatever reason seems to mangle your images (hint: bmi.js may be lurking in your downloaded html), give ByteMe Optimizer a try!

2/4/2006

City location information via porn sites

Filed under: — bill @ 6:02 pm

Today, someone sent me a link to a Homemade Datacenter. The pictures are mildly interesting, but what is more so is the banner ad at the bottom. It advertises a popular dating site called “Adult Friend Finder". “So What?", you’re probably asking yourself. Well, what’s interesting is that it seems to be really good at figuring out your location from an IP address.

For example, I’m using Verizon DSL and my IP’s whois information returns Reston, VA. The hostname is “herntx.dsl-w.verizon.net” (probably referring to Hearne, Texas, about 25 miles away). So my guess if I was just trying to figure out where I’m at would be in hearne. The traceroute to home doesn’t reveal anything interesting along the way other than Hearne is probably wired to Dallas. Even so, Adult Friend Finder correctly deduces that I’m in College Station.

Now I have no idea where they get the data, but I figured it would be handy next time I’m travelling. So I wrote a perl scripty to tell me:


#!/bin/perl
use LWP::Simple;
my $locationServer="http://banners.adultfriendfinder.com/piclist";
my $locationData = get($locationServer) or die “Could not retrieve data from server";
$locationData =~ /near (.*?)</

And sure enough, it works:


[bill@ppppowerbook-airport]~$ perl findme.pl
College Station

And for this server:

[bill@aggienerds]~$ perl findme.pl
Dallas

It looks like they also have support for grabbing the state and country, but I’ll need to add another line or two to deal with that. (They display other places with the state and country attached, but not your own.)

Note: You might need to install LWP::Simple with perl -MCPAN -e ‘install LWP::Simple’ using sudo or root to run this:

 

Google
 
Web anatifero.us
aggienerds.org

Powered by WordPress