Skip to content

Instantly share code, notes, and snippets.

@markpasc
Created September 7, 2011 01:14
Show Gist options
  • Save markpasc/1199482 to your computer and use it in GitHub Desktop.
Save markpasc/1199482 to your computer and use it in GitHub Desktop.
Display IPv4 addresses as funny phrases
FIRST_NAMES = """
JAMES
JOHN
ROBERT
MICHAEL
WILLIAM
DAVID
RICHARD
CHARLES
JOSEPH
THOMAS
CHRISTOPHER
DANIEL
PAUL
MARK
DONALD
GEORGE
KENNETH
STEVEN
EDWARD
BRIAN
RONALD
ANTHONY
KEVIN
JASON
MATTHEW
GARY
TIMOTHY
JOSE
LARRY
JEFFREY
FRANK
SCOTT
ERIC
STEPHEN
ANDREW
RAYMOND
GREGORY
JOSHUA
JERRY
DENNIS
WALTER
PATRICK
PETER
HAROLD
DOUGLAS
HENRY
CARL
ARTHUR
RYAN
ROGER
JOE
JUAN
JACK
ALBERT
JONATHAN
JUSTIN
TERRY
GERALD
KEITH
SAMUEL
WILLIE
RALPH
LAWRENCE
NICHOLAS
ROY
BENJAMIN
BRUCE
BRANDON
ADAM
HARRY
FRED
WAYNE
BILLY
STEVE
LOUIS
JEREMY
AARON
RANDY
HOWARD
EUGENE
CARLOS
RUSSELL
BOBBY
VICTOR
MARTIN
ERNEST
PHILLIP
TODD
JESSE
CRAIG
ALAN
SHAWN
CLARENCE
SEAN
PHILIP
CHRIS
JOHNNY
EARL
JIMMY
ANTONIO
DANNY
BRYAN
TONY
LUIS
MIKE
STANLEY
LEONARD
NATHAN
DALE
MANUEL
RODNEY
CURTIS
NORMAN
ALLEN
MARVIN
VINCENT
GLENN
JEFFERY
TRAVIS
JEFF
CHAD
JACOB
LEE
MELVIN
ALFRED
KYLE
FRANCIS
BRADLEY
MARY
PATRICIA
LINDA
BARBARA
ELIZABETH
JENNIFER
MARIA
SUSAN
MARGARET
DOROTHY
LISA
NANCY
KAREN
BETTY
HELEN
SANDRA
DONNA
CAROL
RUTH
SHARON
MICHELLE
LAURA
SARAH
KIMBERLY
DEBORAH
JESSICA
SHIRLEY
CYNTHIA
ANGELA
MELISSA
BRENDA
AMY
ANNA
REBECCA
VIRGINIA
KATHLEEN
PAMELA
MARTHA
DEBRA
AMANDA
STEPHANIE
CAROLYN
CHRISTINE
MARIE
JANET
CATHERINE
FRANCES
ANN
JOYCE
DIANE
ALICE
JULIE
HEATHER
TERESA
DORIS
GLORIA
EVELYN
JEAN
CHERYL
MILDRED
KATHERINE
JOAN
ASHLEY
JUDITH
ROSE
JANICE
KELLY
NICOLE
JUDY
CHRISTINA
KATHY
THERESA
BEVERLY
DENISE
TAMMY
IRENE
JANE
LORI
RACHEL
MARILYN
ANDREA
KATHRYN
LOUISE
SARA
ANNE
JACQUELINE
WANDA
BONNIE
JULIA
RUBY
LOIS
TINA
PHYLLIS
NORMA
PAULA
DIANA
ANNIE
LILLIAN
EMILY
ROBIN
PEGGY
CRYSTAL
GLADYS
RITA
DAWN
CONNIE
FLORENCE
TRACY
EDNA
TIFFANY
CARMEN
ROSA
CINDY
GRACE
WENDY
VICTORIA
EDITH
KIM
SHERRY
SYLVIA
JOSEPHINE
THELMA
SHANNON
SHEILA
ETHEL
ELLEN
ELAINE
MARJORIE
""".strip().split()
LAST_NAMES = """
SMITH
JOHNSON
WILLIAMS
JONES
BROWN
DAVIS
MILLER
WILSON
MOORE
TAYLOR
ANDERSON
THOMAS
JACKSON
WHITE
HARRIS
MARTIN
THOMPSON
GARCIA
MARTINEZ
ROBINSON
CLARK
RODRIGUEZ
LEWIS
LEE
WALKER
HALL
ALLEN
YOUNG
HERNANDEZ
KING
WRIGHT
LOPEZ
HILL
SCOTT
GREEN
ADAMS
BAKER
GONZALEZ
NELSON
CARTER
MITCHELL
PEREZ
ROBERTS
TURNER
PHILLIPS
CAMPBELL
PARKER
EVANS
EDWARDS
COLLINS
STEWART
SANCHEZ
MORRIS
ROGERS
REED
COOK
MORGAN
BELL
MURPHY
BAILEY
RIVERA
COOPER
RICHARDSON
COX
HOWARD
WARD
TORRES
PETERSON
GRAY
RAMIREZ
JAMES
WATSON
BROOKS
KELLY
SANDERS
PRICE
BENNETT
WOOD
BARNES
ROSS
HENDERSON
COLEMAN
JENKINS
PERRY
POWELL
LONG
PATTERSON
HUGHES
FLORES
WASHINGTON
BUTLER
SIMMONS
FOSTER
GONZALES
BRYANT
ALEXANDER
RUSSELL
GRIFFIN
DIAZ
HAYES
MYERS
FORD
HAMILTON
GRAHAM
SULLIVAN
WALLACE
WOODS
COLE
WEST
JORDAN
OWENS
REYNOLDS
FISHER
ELLIS
HARRISON
GIBSON
MCDONALD
CRUZ
MARSHALL
ORTIZ
GOMEZ
MURRAY
FREEMAN
WELLS
WEBB
SIMPSON
STEVENS
TUCKER
PORTER
HUNTER
HICKS
CRAWFORD
HENRY
BOYD
MASON
MORALES
KENNEDY
WARREN
DIXON
RAMOS
REYES
BURNS
GORDON
SHAW
HOLMES
RICE
ROBERTSON
HUNT
BLACK
DANIELS
PALMER
MILLS
NICHOLS
GRANT
KNIGHT
FERGUSON
ROSE
STONE
HAWKINS
DUNN
PERKINS
HUDSON
SPENCER
GARDNER
STEPHENS
PAYNE
PIERCE
BERRY
MATTHEWS
ARNOLD
WAGNER
WILLIS
RAY
WATKINS
OLSON
CARROLL
DUNCAN
SNYDER
HART
CUNNINGHAM
BRADLEY
LANE
ANDREWS
RUIZ
HARPER
FOX
RILEY
ARMSTRONG
CARPENTER
WEAVER
GREENE
LAWRENCE
ELLIOTT
CHAVEZ
SIMS
AUSTIN
PETERS
KELLEY
FRANKLIN
LAWSON
FIELDS
GUTIERREZ
RYAN
SCHMIDT
CARR
VASQUEZ
CASTILLO
WHEELER
CHAPMAN
OLIVER
MONTGOMERY
RICHARDS
WILLIAMSON
JOHNSTON
BANKS
MEYER
BISHOP
MCCOY
HOWELL
ALVAREZ
MORRISON
HANSEN
FERNANDEZ
GARZA
HARVEY
LITTLE
BURTON
STANLEY
NGUYEN
GEORGE
JACOBS
REID
KIM
FULLER
LYNCH
DEAN
GILBERT
GARRETT
ROMERO
WELCH
LARSON
FRAZIER
BURKE
HANSON
DAY
MENDOZA
MORENO
BOWMAN
MEDINA
FOWLER
BREWER
HOFFMAN
CARLSON
SILVA
PEARSON
HOLLAND
""".strip().split()
ADJECTIVES = """
glitchy
auctorial
findable
sublimest
defecate
maister
slapper
cyclonic
palest
suboptimal
sidearm
shelly
reorient
unpeeled
indorsed
gabled
popish
cat-like
binocular
rubberized
Kshatriya
U-shaped
fire-sale
coarsest
incurious
dynamical
unblocked
mondo
li'l
Abrahamic
fabless
patronised
permeable
femoral
lief
bluer
intramural
plantar
percussive
unpainted
cockney
Fenian
hungover
anamorphic
strumpet
keyless
cut-throat
Romanesque
prude
spoofed
immodest
castaway
Kentish
cochlear
changeling
high-born
overruling
emancipate
whitest
ferrous
copped
Leninist
mariachi
pencilled
gas-fired
romping
post-match
homogenous
offsite
Sistine
theistic
disavowed
smock
long-drawn
compacted
plat
quarreling
watchable
cricketing
costlier
cuneiform
lakefront
captivate
impaled
exemplar
unsanitary
octave
pessimist
Tunisian
abrogate
Uruguayan
Iberian
deodorant
high-water
born-again
quaking
consecrate
equatorial
pimping
upmarket
emanate
tinsel
clubbed
fondue
chugging
in-kind
endocrine
blacker
unreserved
aero
bleating
Boolean
sexier
cheeked
four-wheel
top-secret
downbeat
shortwave
wick
excerpted
slipper
blackest
watercolor
Gallic
ventilated
uncalled
potable
artsy
lapped
sky-high
mediaeval
psyched
debt-laden
rusted
microbial
pelting
tormenting
pretrial
spilt
Napoleonic
neurotic
additive
dumber
beckoning
Utica
apostolic
backdoor
mutated
genocidal
presuming
at-large
girly
mitigated
brunette
resentful
Templar
gastric
raspberry
combed
smiley
effecting
post-war
off-road
midsize
shelved
deducted
penalized
gallows
heather
threaded
fetal
frontline
lovable
beaver
hissing
heaving
veterinary
marquee
colourful
comedic
embryo
tort
scattering
edible
anal
gorge
stammered
labelled
bigot
pro-choice
anon
slider
flavored
intraday
whirlwind
clarified
flipping
streamline
pediatric
orthodox
redirect
springing
vinyl
bedside
Yemeni
inaudible
penned
op-ed
pseudo
disable
retarded
throng
gunshot
cocoa
Romantic
unreal
attentive
escorted
two-time
sucking
hijacked
ordeal
tucked
Arabian
freshest
louder
Romance
champagne
fastened
crafted
uninsured
deferred
tolerated
balloon
manuscript
mates
preaching
incoming
unaware
accelerate
spelling
slated
contracted
unpleasant
unite
adapt
implied
separating
farewell
slightest
gospel
pitching
invented
lowered
incentive
believing
""".strip().split()
NOUNS = """
intruders
mahogany
rudeness
medics
Duluth
flier
slut
qualifiers
rapes
wineries
Hahn
subjection
humanities
allusions
breaths
lifespan
innuendo
trespass
beatings
virginity
slabs
backside
Paisley
swells
foxes
endings
surfers
Bloomsbury
jogging
napkin
choirs
supermodel
barricades
suitors
egos
campaigner
dolphin
volcanoes
washer
issuers
republics
Heinlein
stalling
lasers
drags
ballads
e-reader
warheads
crabs
embroidery
delusions
abbey
Soweto
sclerosis
twenties
handouts
flashlight
dialing
cleaners
habitats
Medici
textures
spinner
timers
devotees
uncles
runways
munitions
steed
bracelets
valves
shortcut
penchant
carmaker
morn
Sinatra
propensity
castles
pitfalls
recessions
imposition
Asians
thefts
providence
Lubbock
mixer
Stockton
detecting
Barkley
clean-up
queens
Spielberg
breakup
ravine
condos
crumbs
crowding
ancestor
goers
wand
suicides
batsman
stadiums
pottery
metabolism
hinges
cavity
chairwoman
hugging
noun
dogma
commons
musings
drawers
rollout
witches
boomers
cloves
arches
brawl
underdog
seizures
glucose
fisheries
orchard
distortion
leechers
turtles
deductions
plugins
vigour
lashes
birthdays
diploma
approvals
yearning
Stuyvesant
begs
nightmares
labeling
triumphs
audacity
Simpsons
toilets
run-up
atheism
newsstands
Excellency
fiasco
froze
barracks
symptom
Daly
estimation
dominion
revisions
weddings
simulation
acids
prominence
dripping
tablespoon
continents
shortstop
clown
recourse
monarchy
revolver
irrigation
cowboy
wicket
zombie
prophecy
molecules
insiders
wraps
ducks
picnic
nightclub
sweetness
vitamin
weeds
legitimacy
resorts
promo
Hayward
spine
Rasmussen
legends
lamb
semifinals
receipts
majors
tackling
diplomat
Nielsen
habitat
suburb
fishermen
cracks
abortions
dragon
tackles
homework
Afghans
pushes
purity
sewer
instructor
firearms
patents
painter
colonies
brokers
vicinity
shoots
trails
arrow
unrest
heights
highways
comma
verses
primaries
burns
artwork
governors
insurers
nominees
hunters
poses
poker
diplomacy
passages
dresses
amusement
innocence
obstacles
oxygen
miners
sailors
memo
organizing
kinda
potatoes
barrier
missiles
routes
tales
O'Brien
suits
polling
budgets
fitness
rings
Canadians
""".strip().split()
$ python name.py 127.0.0.1 10.0.0.1 192.168.10.10
127.0.0.1 is BRADLEY SMITH's glitchy mahogany
10.0.0.1 is CHRISTOPHER SMITH's glitchy mahogany
192.168.10.10 is ROSE MATTHEWS's sidearm Hahn
$ python name.py 76.217.209.212
76.217.209.212 is AARON MCCOY's disable colonies
$ python name.py 173.255.223.20
173.255.223.20 is CATHERINE HOLLAND's Arabian slabs
$ python name.py 169.254.196.105
169.254.196.105 is CAROLYN PEARSON's flipping hinges
#!/usr/bin/env python
import sys
from data import *
ip = sys.argv[1:]
for oneip in ip:
ipstr = str(oneip)
first, last, adj, noun = [int(x) for x in ipstr.split('.', 4)]
print "%s is %s %s's %s %s" % (ipstr, FIRST_NAMES[first],
LAST_NAMES[last], ADJECTIVES[adj], NOUNS[noun])
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment