Why dont you use the MAC instead of hostname? (I realized hostname matching isnt gonna do much for an SSH packet, heh) easier to match on a per-packet basis. Something like:
iptables -A PREROUTING -m string --string 'y0:uR:MA:CA:dD:RR' -m tcp -p tcp --dport 22 -j ACCEPT

or something along those line...Then your IP woulndt matter, be nice with a laptop for sure.


PS. Not sure if thats the right way to use --string, if you compile netfilter with that extension you can iptables -m string --help.